-
Notifications
You must be signed in to change notification settings - Fork 203
v8js: v8js.so: undefined symbol: _ZSt25__throw_bad_function_callv in Unknown on line 0 #204
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
Comments
Have you checked whether V8 as compiled by you is working? e.g. by running some of their sample scripts like
https://stackoverflow.com/questions/12942538/undefined-symbol-std-throw-bad-function-call might be related Do you have multiple c++ library versions around? Or just some normal Centos installation? |
Yes I have cheked V8 - it's working fine:
Yes I have multiple c++ libraries. I have installed devtoolset-2 with gcc 4.8.2. and used them to build v8 and v8js. But system GCC version is 4.4.7. |
Hi guys, I have the same troubles. Any suggestion is very welcome! |
@Enase you're on Centos as well? |
cat /etc/centos-release |
@stesie pls, let me know if you need any additional info. |
@Enase sure I'll let you know. Unfortunately I haven't found time to set up a CentOS box yet |
Sorry for the late reply, but I finally found some time to spend on CentOS - after all it was a little bit more involved than I expected initially but ... First of all I tried with a more recent version of CentOS (7.2) without any major issue Then I tried CentOS 6.7 with python 2.7 (for the V8 build process) + devtoolset-2 as mentioned by both of you... and finally able to reproduce the problem both of you have. The problem is that the base system's The linker script
The base library
however the extra library has it:
... for normal programs this is no problem, the linker just links the necessary stuff from the static library right into the program and uses the shared library for the rest. With v8js this is a problem however as it isn't linked as a program but as a shared library itself ... and therefore the symbols from the static library are not linked in. A solution to the problem would be statically linking v8js into php itself (i.e. recompile php and do the static linking mentioned above); I just tried that and confirm it working. hope that helps :-) ~stesie |
Thanks, it works for me. |
Hey @Enase, you could also try the RPM specs for EL6 and EL7 for newer V8s: https://github.com/rosmo/v8-rpm |
Hello,
I have compiled v8js (0.4.1 version) following README.Linux instructions.
Everything compiled fine but when php trying to load v8js extension it returns me an error:
PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/v8js.so' - /usr/lib64/php/modules/v8js.so: undefined symbol: _ZSt25__throw_bad_function_callv in Unknown on line 0
System: Centos 6.6.
V8 version: 4.3.9 (build string: make native library=shared snapshot=off -j8)
GCC version: gcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)
Also I have tried to install via pecl: installed succesfully but the same error when php tried to load extension.
I will be grateful for help.
Thank you in advance,
Volodymyr
The text was updated successfully, but these errors were encountered: