Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some examples dont work (segfault and std::runtime_error) #316

Open
2shaar2059 opened this issue Jun 11, 2022 · 5 comments
Open

Some examples dont work (segfault and std::runtime_error) #316

2shaar2059 opened this issue Jun 11, 2022 · 5 comments

Comments

@2shaar2059
Copy link

2shaar2059 commented Jun 11, 2022

I cloned the repo, made a build directory and made all of the examples. When trying to run them, however, certain ones worked and others didnt. The ones that simply segfaulted still displayed a plot. the ones that resulted in a runtime error didnt even show a plot.

System:
OS: Ubuntu 20.04.4 LTS x86_64
Kernel: 5.4.0-113-generic
"python3 --version" gives Python 3.8.10

$ ./animation
Segmentation fault (core dumped)

$ ./basic
Saving result to ./basic.png
Segmentation fault (core dumped)

$ ./contour
Segmentation fault (core dumped)

$ ./fill
Segmentation fault (core dumped)

$ ./bar
Segmentation fault (core dumped)

$ ./colorbar
Segmentation fault (core dumped)

$ ./lines3d
Segmentation fault (core dumped)

$ ./minimal
Segmentation fault (core dumped)

$ ./surface
Segmentation fault (core dumped)

$ ./modern
Segmentation fault (core dumped)

$ ./spy
Segmentation fault (core dumped)

$ ./subplot2grid
Segmentation fault (core dumped)

$ ./update
Segmentation fault (core dumped)

$ ./xkcd
findfont: Font family ['xkcd', 'xkcd Script', 'Humor Sans', 'Comic Neue', 'Comic Sans MS'] not found. Falling back to DejaVu Sans.
findfont: Font family ['xkcd', 'xkcd Script', 'Humor Sans', 'Comic Neue', 'Comic Sans MS'] not found. Falling back to DejaVu Sans.
Segmentation fault (core dumped)

$ ./fill_inbetween
terminate called after throwing an instance of 'std::runtime_error'
what(): Call to show() failed.
Aborted (core dumped)

$ ./nonblock
terminate called after throwing an instance of 'std::runtime_error'
what(): Call to subplot() failed.
Aborted (core dumped)

@2shaar2059 2shaar2059 changed the title Some examples dont work Some examples dont work (segfault and std::runtime_error) Jun 11, 2022
@xiang-tao
Copy link

I ran into a similar error to yours, my bug report is:

terminate called after throwing an instance of 'std::runtime_error' ,what(): No axis

The reason for my error is that Ubuntu installed matplotlib in two ways:

sudo pip3 install matplotlib
sudo apt install python3-matplotlib

Therefore, one of them should be uninstalled when performing 3D drawing, so I executed:

sudo pip3 uninstall matplotlib

After that it ran successfully.

@mitrakelly
Copy link

I am seeing the same problem and this solution did not work for me. I am running on Windows and I have only one installation of matplotlib. It's version 3.7.1.

@kevinpowell
Copy link

Same error for me. Arch linux with python 3.10.10
here's the backtrace from gdb:
(gdb) bt
#0 __pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0)
at pthread_kill.c:44
#1 0x00007ffff74a0953 in __pthread_kill_internal (signo=6, threadid=) at pthread_kill.c:78
#2 0x00007ffff7451ea8 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007ffff743b53d in __GI_abort () at abort.c:79
#4 0x00007ffff769a833 in __gnu_cxx::__verbose_terminate_handler ()
at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/vterminate.cc:95
#5 0x00007ffff76a6d0c in __cxxabiv1::__terminate (handler=)
at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:48
#6 0x00007ffff76a6d79 in std::terminate () at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:58
#7 0x00007ffff76a6fdd in __cxxabiv1::__cxa_throw (obj=,
tinfo=0x555555562d60 <typeinfo for std::runtime_error@GLIBCXX_3.4>,
dest=0x7ffff76be480 std::runtime_error::~runtime_error())
at /usr/src/debug/gcc/gcc/libstdc++-v3/libsupc++/eh_throw.cc:98
#8 0x000055555555a369 in matplotlibcpp::plot_surface (x=std::vector of length 41, capacity 64 = {...},
y=std::vector of length 41, capacity 64 = {...}, z=std::vector of length 41, capacity 64 = {...},
keywords=std::map with 0 elements, fig_number=0) at ../matplotlibcpp.h:567
#9 0x00005555555569e7 in main () at surface.cpp:22

@kevinpowell
Copy link

@lanzhan777
Copy link

Same issue.
It seem because python matplotlib API has changed.
I change matplotlib 3.7.2 to matplotlib 3.6.1 and it works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants