Skip to content

error: could not find libv8_libplatform library #313

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

Closed
kelvin2200 opened this issue May 26, 2017 · 12 comments · Fixed by #314
Closed

error: could not find libv8_libplatform library #313

kelvin2200 opened this issue May 26, 2017 · 12 comments · Fixed by #314

Comments

@kelvin2200
Copy link

So, i've been reading through the other issues and posts, but nobody seems to provide a clear solution as to how to fix the above error;

Trying to install V8Js on a Debian distro, with PHP 7.0, using GN.

Did an apt-get upgrade, and installed all the deps.
Followed the instructions in README.Linux, but i end up with that compile error.

Please help

@stesie
Copy link
Member

stesie commented May 26, 2017

What's in config.log? Which version of V8 are you trying to build?

@semoriil
Copy link

Same problem. Debian 8 x64, PHP 7.0.

sudo pecl install v8js
[sudo] password for tester: 
downloading v8js-1.4.0.tgz ...
Starting to download v8js-1.4.0.tgz (98,516 bytes)
......................done: 98,516 bytes
28 source files, building
running: phpize
Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012
Please provide the installation prefix of libv8 [autodetect] : 
building in /tmp/pear/temp/pear-build-rootEB4d1D/v8js-1.4.0
running: /tmp/pear/temp/v8js/configure --with-php-config=/usr/bin/php-config --with-v8js
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php/20151012 -I/usr/include/php/20151012/main -I/usr/include/php/20151012/TSRM -I/usr/include/php/20151012/Zend -I/usr/include/php/20151012/ext -I/usr/include/php/20151012/ext/date/lib
checking for PHP extension directory... /usr/lib/php/20151012
checking for PHP installed headers prefix... /usr/include/php/20151012
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... re2c
checking for re2c version... 0.13.5 (ok)
checking for gawk... gawk
checking for V8 Javascript Engine... yes, shared
checking for V8 files in default path... found in /usr
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for C standard version... c++11
checking how to allow c++11 narrowing...
checking for libv8_libplatform... configure: error: could not find libv8_libplatform library
ERROR: `/tmp/pear/temp/v8js/configure --with-php-config=/usr/bin/php-config --with-v8js' failed

Compiling myself from sources with fresh v8 in /opt/v8 ends the same. Looks like script is looking for libv8_libplatform library in wrong place. Or so I understood from looking script code.

Config logs for both cases distro and custom V8: config.logs.zip

@kelvin2200
Copy link
Author

kelvin2200 commented May 27, 2017 via email

@kelvin2200
Copy link
Author

kelvin2200 commented May 28, 2017 via email

@stesie
Copy link
Member

stesie commented May 29, 2017

No reason to go crazy ...

V8 has changed signature of the CreateDefaultPlatform function which is checked for by the configure script ... and hence it wasn't found any longer.

Either pick a slightly older version, e.g. from 5.9 (beta) or 5.8 (stable) branch. 6.0 is dev branch anyways
... or wait until the issue is fixed, I'm working on it now, but don't know how much work is required (doesn't seem to be much though)

@stesie stesie closed this as completed May 29, 2017
@stesie stesie reopened this May 29, 2017
@stesie
Copy link
Member

stesie commented May 29, 2017

(accidentally closed the ticket, sorry for that)

stesie added a commit to stesie/v8js that referenced this issue May 29, 2017
stesie added a commit to stesie/v8js that referenced this issue May 29, 2017
Include libplatform.h, as meanwhile all supported V8 versions have that file.
@stesie
Copy link
Member

stesie commented May 29, 2017

Should be fixed with current php7 branch. Let me know, especially if it still doesn't work for you.

Otherwise I'll follow up with a release in the next days

@instincttolu
Copy link

Still having the same issue with php 7.1 ubuntu 16.04

@instincttolu
Copy link

here is the log

WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
downloading v8js-1.4.0.tgz ...
Starting to download v8js-1.4.0.tgz (98,516 bytes)
......................done: 98,516 bytes
28 source files, building
running: phpize
Configuring for:
PHP Api Version: 20160303
Zend Module Api No: 20160303
Zend Extension Api No: 320160303
Please provide the installation prefix of libv8 [autodetect] :
building in /tmp/pear/temp/pear-build-root0D8Ebi/v8js-1.4.0
running: /tmp/pear/temp/v8js/configure --with-php-config=/usr/bin/php-config --with-v8js
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php/20160303 -I/usr/include/php/20160303/main -I/usr/include/php/20160303/TSRM -I/usr/include/php/20160303/Zend -I/usr/include/php/20160303/ext -I/usr/include/php/20160303/ext/date/lib
checking for PHP extension directory... /usr/lib/php/20160303
checking for PHP installed headers prefix... /usr/include/php/20160303
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... no
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
checking for gawk... gawk
checking for V8 Javascript Engine... yes, shared
checking for V8 files in default path... found in /usr
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for C standard version... c++11
checking how to allow c++11 narrowing... -Wno-narrowing
checking for libv8_libplatform... configure: error: could not find libv8_libplatform library
ERROR: `/tmp/pear/temp/v8js/configure --with-php-config=/usr/bin/php-config --with-v8js' failed

@stesie
Copy link
Member

stesie commented Aug 1, 2017

@instincttolu which version of V8 do you have installed? v8js 1.4.0 won't work with 6.0 (or newer)
And where did you install to? If off /usr/lib then you need to pass the correct path name. (in case you're using @pinepain .deb, you need to point it to correct dir under /opt)

Please open a new issue, if it still doesn't work for you.

@aftabnaveed
Copy link

aftabnaveed commented Oct 24, 2017

I am having similar issue here, I am not sure if PECL is pulling the most recent version

PHP Version: 7.1.9 FROM onjer PPA
OS: Ubuntu 14.04

sudo pecl install v8js
downloading v8js-1.4.1.tgz ...
Starting to download v8js-1.4.1.tgz (99,318 bytes)
......................done: 99,318 bytes
28 source files, building
running: phpize
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303
Please provide the installation prefix of libv8 [autodetect] : 
building in /tmp/pear/temp/pear-build-rootd8KJ3V/v8js-1.4.1
running: /tmp/pear/temp/v8js/configure --with-php-config=/usr/bin/php-config --with-v8js
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php/20160303 -I/usr/include/php/20160303/main -I/usr/include/php/20160303/TSRM -I/usr/include/php/20160303/Zend -I/usr/include/php/20160303/ext -I/usr/include/php/20160303/ext/date/lib
checking for PHP extension directory... /usr/lib/php/20160303
checking for PHP installed headers prefix... /usr/include/php/20160303
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... no
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
checking for gawk... gawk
checking for V8 Javascript Engine... yes, shared
checking for V8 files in default path... found in /usr
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for C standard version... c++11
checking how to allow c++11 narrowing...
checking for libv8_libplatform... configure: error: could not find libv8_libplatform library
ERROR: `/tmp/pear/temp/v8js/configure --with-php-config=/usr/bin/php-config --with-v8js' failed

@aftabnaveed
Copy link

Ok I made it work by install libv8-6.1 and then compiled the master branch, extension is successfully built but when it failed almost all tests here:

Build complete.
Don't forget to run 'make test'.


=====================================================================
PHP         : /usr/bin/php7.1 
PHP_SAPI    : cli
PHP_VERSION : 7.1.10-1+ubuntu14.04.1+deb.sury.org+1
ZEND_VERSION: 3.1.0
PHP_OS      : Linux - Linux rfgstage-avmh-web-01 3.13.0-110-generic #157-Ubuntu SMP Mon Feb 20 11:54:05 UTC 2017 x86_64
INI actual  : /home/rfgstage/v8js/tmp-php.ini
More .INIs  :   
CWD         : /home/rfgstage/v8js
Extra dirs  : 
VALGRIND    : Not used
=====================================================================
TIME START 2017-10-24 12:02:04
=====================================================================
FAIL Test V8::executeString() : Check ArrayAccess interface wrapping [tests/array_access.phpt] 
FAIL Test V8::executeString() : Check ArrayAccess live binding [tests/array_access_001.phpt] 
FAIL Test V8::executeString() : Use ArrayAccess with JavaScript native push method [tests/array_access_002.phpt] 
FAIL Test V8::executeString() : Export PHP methods on ArrayAccess objects [tests/array_access_003.phpt] 
FAIL Test V8::executeString() : Export PHP properties on ArrayAccess objects [tests/array_access_004.phpt] 
FAIL Test V8::executeString() : Export __invoke method on ArrayAccess objects [tests/array_access_005.phpt] 
FAIL Test V8::executeString() : Enumerate ArrayAccess keys [tests/array_access_006.phpt] 
FAIL Test V8::executeString() : Delete (unset) ArrayAccess keys [tests/array_access_007.phpt] 
FAIL Test V8::executeString() : in array (isset) behaviour of ArrayAccess [tests/array_access_008.phpt] 
FAIL Test V8::executeString() : Check array access setter behaviour [tests/array_access_basic2.phpt] 
FAIL Test V8::executeString() : Check passing array from JS to PHP [tests/array_pass.phpt] 
FAIL Test V8::executeString() : Check passing array from JS to PHP (using force array flag) [tests/array_pass_flags.phpt] 
FAIL Test V8::executeString() : Simple test [tests/basic.phpt] 
FAIL Test V8::executeString() : Call JS from PHP [tests/callbacks.phpt] 
PASS Test V8::executeString() : Script validator test [tests/checkstring.phpt] 
PASS Test V8::executeString() : Script validator test using compileString [tests/checkstring_compile.phpt] 
FAIL Test V8::executeString() : Simple test [tests/closures_basic.phpt] 
FAIL Test V8::executeString() : Dynamic closure call test [tests/closures_dynamic.phpt] 
FAIL Test V8Js::setModuleLoader : Returned modules are cached [tests/commonjs_caching_001.phpt] 
FAIL Test V8Js::setModuleLoader : module cache seperated per isolate [tests/commonjs_caching_002.phpt] 
FAIL Test V8Js::setModuleNormaliser : Custom normalisation #001 [tests/commonjs_cust_normalise_001.phpt] 
FAIL Test V8Js::setModuleNormaliser : Custom normalisation #002 [tests/commonjs_cust_normalise_002.phpt] 
FAIL Test V8Js::setModuleNormaliser : Custom normalisation #003 [tests/commonjs_cust_normalise_003.phpt] 
FAIL Test V8Js::setModuleNormaliser : Custom normalisation #004 [tests/commonjs_cust_normalise_004.phpt] 
FAIL Test V8Js::setModuleLoader : Handle fatal errors gracefully [tests/commonjs_fatal_error.phpt] 
FAIL Test V8Js::setModuleLoader : CommonJS modules [tests/commonjs_modules.phpt] 
FAIL Test V8Js::setModuleLoader : Assign result multiple times [tests/commonjs_multiassign.phpt] 
FAIL Test V8Js::setModuleLoader : Path normalisation #001 [tests/commonjs_normalise_001.phpt] 
FAIL Test V8Js::setModuleLoader : Path normalisation #002 [tests/commonjs_normalise_002.phpt] 
FAIL Test V8Js::setModuleLoader : Path normalisation #003 [tests/commonjs_normalise_003.phpt] 
FAIL Test V8Js::setModuleLoader : Path normalisation #004 [tests/commonjs_normalise_004.phpt] 
FAIL Test V8Js::setModuleLoader : Path normalisation #005 [tests/commonjs_normalise_005.phpt] 
FAIL Test V8Js::setModuleLoader : Module source naming [tests/commonjs_source_naming.phpt] 
FAIL Test V8::compileString() : Compile and run a script [tests/compile_string.phpt] 
FAIL Test V8::compileString() : Check compiled script isolate processing [tests/compile_string_isolate.phpt] 
FAIL Test V8::executeString() : Calling construct twice [tests/construct.phpt] 
FAIL Test V8::executeString() : test context preserving [tests/context_preserving.phpt] 
FAIL Test V8::executeString() : test context separation [tests/context_separation.phpt] 
FAIL Test V8::executeString() : correct temp context construction [tests/context_temp_creation.phpt] 
FAIL Test V8Js::createSnapshot() : Basic snapshot creation & re-use [tests/create_snapshot_basic.phpt] 
FAIL Test V8::executeString() : Testing lifespan of V8Js context objects [tests/ctx_lifetime.phpt] 
FAIL Test V8::executeString() : Pass JS date to PHP [tests/datetime_pass.phpt] 
FAIL Test V8::executeString() : Properties on derived class [tests/derived_class_properties.phpt] 
FAIL Test V8::executeString() : Extra properties on derived class [tests/derived_class_properties_extra.phpt] 
FAIL Test V8::executeString() : Initialized properties on derived class [tests/derived_class_properties_init.phpt] 
FAIL Test V8::executeString() : Protected and private properties on derived class [tests/derived_class_properties_protected.phpt] 
FAIL Test V8::executeString() : Handle die() gracefully [tests/die.phpt] 
FAIL Test V8::executeString() : direct construction is prohibited [tests/direct_construct.phpt] 
FAIL Test V8::executeString() : V8JsScriptException [tests/exception.phpt] 
FAIL Test V8::executeString() : Exception clearing test [tests/exception_clearing.phpt] 
FAIL Test V8::executeString() : Exception propagation test 1 [tests/exception_propagation_1.phpt] 
FAIL Test V8::executeString() : Exception propagation test 2 [tests/exception_propagation_2.phpt] 
FAIL Test V8::executeString() : Exception propagation test 3 [tests/exception_propagation_3.phpt] 
FAIL Test V8::executeString() : Test getJsStartColumn on script exception [tests/exception_start_column.phpt] 
FAIL Test V8::executeString() : Forcing to arrays (return value conversion) [tests/execute_flags.phpt] 
FAIL Test V8::executeString() : Forcing to arrays (argument passing) [tests/execute_flags_args.phpt] 
FAIL Test V8::executeString() : Forcing to arrays (property writing) [tests/execute_flags_property_writing.phpt] 
PASS Test V8::registerExtension() : Basic extension registering [tests/extensions_basic.phpt] 
PASS Test V8::registerExtension() : Circular dependencies [tests/extensions_circular_dependency.phpt] 
PASS Test V8::registerExtension() : Register extension with errors [tests/extensions_error.phpt] 
FAIL Test V8::executeString() : Fatal Error handler to ignore warnings [tests/fatal_error_ignore_non_fatals.phpt] 
FAIL Test V8::executeString() : Fatal Error handler not to uninstall on inner frames [tests/fatal_error_no_uninstall_inner_frame.phpt] 
FAIL Test V8::executeString() : Fatal Error with recursive executeString calls [tests/fatal_error_recursive.phpt] 
FAIL Test V8::executeString() : Fatal Error rethrowing [tests/fatal_error_rethrow.phpt] 
FAIL Test V8::executeString() : Fatal Error handler must be uninstalled when leaving outermost frame [tests/fatal_error_uninstall_in_first_frame.phpt] 
FAIL Test V8Function() : Handle fatal errors gracefully [tests/fatal_error_v8function.phpt] 
FAIL Test V8::executeString() : Call passed-back function (directly) [tests/function_call.phpt] 
FAIL Test V8::executeString() : Call passed-back function [tests/function_passback.phpt] 
FAIL Test V8::executeString() : Call passed-back function (property access) [tests/function_passback2.phpt] 
FAIL Test V8::executeString() : Set property on function [tests/function_properties.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (foreach) [tests/generators_from_v8_001.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (direct) [tests/generators_from_v8_002.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (rewind) [tests/generators_from_v8_003.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (instantiate in PHP + foreach) [tests/generators_from_v8_004.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (instantiate in PHP + iterate in JS) [tests/generators_from_v8_005.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (yield from) [tests/generators_from_v8_006.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (throw JS) [tests/generators_from_v8_007.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (throw PHP) [tests/generators_from_v8_008.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (fatal error) [tests/generators_from_v8_009.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP (properties) [tests/generators_from_v8_010.phpt] 
FAIL Test V8::executeString() : Generators V8 -> PHP [tests/generators_from_v8_basic.phpt] 
FAIL Test V8::executeString() : Generators PHP -> V8 (instantite in JS) [tests/generators_to_v8_001.phpt] 
FAIL Test V8::executeString() : Generators PHP -> V8 (instantiate in JS, iterate in PHP) [tests/generators_to_v8_002.phpt] 
FAIL Test V8::executeString() : Generators PHP -> V8 (instantiate in JS, iterate in PHP) [tests/generators_to_v8_003.phpt] 
FAIL Test V8::executeString() : Generators PHP -> V8 (yield from) [tests/generators_to_v8_004.phpt] 
FAIL Test V8::executeString() : Generators PHP -> V8 [tests/generators_to_v8_basic.phpt] 
FAIL Test V8::executeString() : PHP variables via get accessor [tests/get_accessor.phpt] 
FAIL Test V8::executeString() : Get constructor method [tests/get_constructor.phpt] 
FAIL Test V8::executeString() : has_property after dispose [tests/has_property_after_dispose.phpt] 
PASS Test V8Js : class inheritance [tests/inheritance_basic.phpt] 
FAIL Test V8::executeString() : Issue #116 V8Function injection into other V8Js [tests/issue_116-v8function-injection.phpt] 
FAIL Test V8Function::__call() : Check v8::TryCatch behaviour [tests/issue_127_001.phpt] 
FAIL Test V8::executeString() : Backwards compatibility for issue #156 [tests/issue_156_001.phpt] 
FAIL Test V8::executeString() : Issue #160 V8Function affected by V8Js::FLAG_FORCE_ARRAY [tests/issue_160_basic.phpt] 
FAIL Test V8::executeString() : Method access on derived classes (protected) [tests/issue_183_001.phpt] 
FAIL Test V8::executeString() : Method access on derived classes (private) [tests/issue_183_002.phpt] 
FAIL Test V8::executeString() : Method access on derived classes (V8Js methods) [tests/issue_183_003.phpt] 
FAIL Test V8::executeString() : Method access on derived classes (overridden V8Js methods) [tests/issue_183_004.phpt] 
PASS Test V8::executeString() : Method access on derived classes (__sleep) [tests/issue_183_005.phpt] 
PASS Test V8::executeString() : Method access on derived classes (__wakeup) [tests/issue_183_006.phpt] 
FAIL Test V8::executeString() : Method access on derived classes [tests/issue_183_basic.phpt] 
FAIL Test V8::executeString() : Issue #185 this on direct invocation of method [tests/issue_185_001.phpt] 
FAIL Test V8::executeString() : Issue #185 this on function invocation [tests/issue_185_002.phpt] 
FAIL Test V8::executeString() : Issue #185 Wrong this on V8Object method invocation [tests/issue_185_basic.phpt] 
FAIL Test V8::executeString() : Handle Z_TYPE == IS_REFERENCE (issue #246) [tests/issue_246_001.phpt] 
FAIL Test V8::executeString() : Issue #250 (early free of array) [tests/issue_250_001.phpt] 
FAIL Test V8::executeString() : Issue #250 (early free of array) [tests/issue_250_002.phpt] 
FAIL Test V8::executeString() : Issue #306 V8 crashing on toLocaleString() [tests/issue_306_basic.phpt] 
FAIL Test V8::executeString() : Issue #316 endless property iteration [tests/issue_316_basic.phpt] 
FAIL Test V8::executeString() : Test PHP object construction controlled by JavaScript (simple) [tests/js-construct-basic.phpt] 
FAIL Test V8::executeString() : Test PHP object construction controlled by JavaScript (non-construction call) [tests/js-construct-direct-call.phpt] 
FAIL Test V8::executeString() : Test PHP object construction controlled by JavaScript (protected ctor) [tests/js-construct-protected-ctor.phpt] 
FAIL Test V8::executeString() : Test PHP object construction controlled by JavaScript (with ctor) [tests/js-construct-with-ctor.phpt] 
FAIL Test V8::executeString() : Test for leaked PHP object if passed back multiple times [tests/leak-php-object.phpt] 
FAIL Test V8::executeString() : Check long integer handling from PHP to JS [tests/long.phpt] 
FAIL Test V8::executeString() : Check long 64-bit export from PHP to JS [tests/long_int64.phpt] 
FAIL Test V8::executeString() : Memory limit [tests/memory_limit.phpt] 
FAIL Test V8::executeString() : Use multiple V8js instances with objects [tests/multi-object.phpt] 
FAIL Test V8::executeString() : Use multiple V8js instances [tests/multi.phpt] 
FAIL Test V8::executeString() : Pass strings with null-bytes [tests/null_byte_string.phpt] 
FAIL Test V8::executeString() : Object passed from PHP [tests/object.phpt] 
FAIL Test V8::executeString() : DOM object passed from PHP [tests/object_dom.phpt] 
FAIL Test V8::executeString() : Calling methods of object passed from PHP [tests/object_method_call.phpt] 
FAIL Test V8::executeString() : Object passing PHP > JS > PHP [tests/object_passback.phpt] 
FAIL Test V8::executeString() : Object passing JS > PHP > JS [tests/object_passback_002.phpt] 
FAIL Test V8::executeString() : Prototype with PHP callbacks [tests/object_prototype.phpt] 
FAIL Test V8::executeString() : Test PHP object reusage [tests/object_reuse.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (repeated) [tests/php_exceptions_001.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (multi-level) [tests/php_exceptions_002.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (basic JS propagation) [tests/php_exceptions_003.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (PHP->JS->PHP back propagation) [tests/php_exceptions_004.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (JS throw PHP-exception) [tests/php_exceptions_005.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (JS throws normal PHP-object) [tests/php_exceptions_006.phpt] 
FAIL Test V8::executeString() : PHP Exception handling (basic) [tests/php_exceptions_basic.phpt] 
FAIL Test V8::executeString() : property_exists/isset/empty on wrapped JS objects [tests/property_exists.phpt] 
FAIL Test V8::executeString() : Property visibility - delete [tests/property_visibility-delete.phpt] 
FAIL Test V8::executeString() : Property visibility - enumerate [tests/property_visibility-enumerate.phpt] 
FAIL Test V8::executeString() : Property visibility - has property [tests/property_visibility-has-property.phpt] 
FAIL Test V8::executeString() : Property visibility - set [tests/property_visibility-set.phpt] 
FAIL Test V8::executeString() : Property visibility [tests/property_visibility.phpt] 
FAIL Test V8::executeString() : Property visibility __get [tests/property_visibility__get.phpt] 
FAIL Test V8::executeString() : Property visibility __set [tests/property_visibility__set.phpt] 
SKIP Test V8::executeString() : Pthreads test #1 [tests/pthreads_001.phpt] reason: pthreads extension required
FAIL Test V8::executeString() : Regression #121 Z_ADDREF_P [tests/regression_121.phpt] 
FAIL Test V8::executeString() : return this (aka fluent setters, JS-side) [tests/return_this_001.phpt] 
FAIL Test V8::executeString() : return $this (aka fluent setters) [tests/return_this_basic.phpt] 
FAIL Test V8::executeString() : Return values [tests/return_value.phpt] 
FAIL Test serialize(V8Object) : __sleep and __wakeup throw [tests/serialize_001.phpt] 
FAIL Test serialize(V8Function) : __sleep and __wakeup throw [tests/serialize_002.phpt] 
PASS Test serialize(V8Js) : __sleep and __wakeup throw [tests/serialize_basic.phpt] 
PASS Test V8::setAverageObjectSize() : Average object size can be set on V8Js object [tests/set_average_object_size_basic.phpt] 
FAIL Test V8::setMemoryLimit() : Memory limit applied to V8Function calls [tests/set_memory_limit_001.phpt] 
FAIL Test V8::setMemoryLimit() : Memory limit can be imposed later [tests/set_memory_limit_003.phpt] 
FAIL Test V8::setMemoryLimit() : Memory limit can be set on V8Js object [tests/set_memory_limit_basic.phpt] 
FAIL Test V8::setTimeLimit() : Time limit applied to V8Function calls [tests/set_time_limit_001.phpt] 
FAIL Test V8::setTimeLimit() : Time limit can be changed [tests/set_time_limit_002.phpt] 
FAIL Test V8::setTimeLimit() : Time limit can be imposed later on [tests/set_time_limit_003.phpt] 
FAIL Test V8::setTimeLimit() : Time limit can be prolonged [tests/set_time_limit_004.phpt] 
FAIL Test V8::setTimeLimit() : Time limit can be set on V8Js object [tests/set_time_limit_basic.phpt] 
FAIL Test V8::executeString() : Time limit [tests/time_limit.phpt] 
FAIL Test V8::executeString() : Check timezone handling [tests/timezones.phpt] 
FAIL Test V8::executeString() : Check if imported code works with umlauts [tests/unicode.phpt] 
FAIL Test V8::executeString() : Use after dispose [tests/use_after_dispose.phpt] 
FAIL Test V8::executeString() : unset property on V8Object [tests/v8_unset_property.phpt] 
FAIL Test V8::executeString() : write property on V8Object [tests/v8_write_property.phpt] 
FAIL Test V8::executeString() : var_dump [tests/var_dump.phpt] 
FAIL Test V8::executeString() : simple variables passed from PHP [tests/variable_passing.phpt] 
=====================================================================
TIME END 2017-10-24 12:02:10

=====================================================================
TEST RESULT SUMMARY
---------------------------------------------------------------------
Exts skipped    :    0
Exts tested     :   16
---------------------------------------------------------------------

Number of tests :  167               166
Tests skipped   :    1 (  0.6%) --------
Tests warned    :    0 (  0.0%) (  0.0%)
Tests failed    :  156 ( 93.4%) ( 94.0%)
Expected fail   :    0 (  0.0%) (  0.0%)
Tests passed    :   10 (  6.0%) (  6.0%)
---------------------------------------------------------------------
Time taken      :    6 seconds
=====================================================================

=====================================================================
FAILED TEST SUMMARY
---------------------------------------------------------------------
Test V8::executeString() : Check ArrayAccess interface wrapping [tests/array_access.phpt]
Test V8::executeString() : Check ArrayAccess live binding [tests/array_access_001.phpt]
Test V8::executeString() : Use ArrayAccess with JavaScript native push method [tests/array_access_002.phpt]
Test V8::executeString() : Export PHP methods on ArrayAccess objects [tests/array_access_003.phpt]
Test V8::executeString() : Export PHP properties on ArrayAccess objects [tests/array_access_004.phpt]
Test V8::executeString() : Export __invoke method on ArrayAccess objects [tests/array_access_005.phpt]
Test V8::executeString() : Enumerate ArrayAccess keys [tests/array_access_006.phpt]
Test V8::executeString() : Delete (unset) ArrayAccess keys [tests/array_access_007.phpt]
Test V8::executeString() : in array (isset) behaviour of ArrayAccess [tests/array_access_008.phpt]
Test V8::executeString() : Check array access setter behaviour [tests/array_access_basic2.phpt]
Test V8::executeString() : Check passing array from JS to PHP [tests/array_pass.phpt]
Test V8::executeString() : Check passing array from JS to PHP (using force array flag) [tests/array_pass_flags.phpt]
Test V8::executeString() : Simple test [tests/basic.phpt]
Test V8::executeString() : Call JS from PHP [tests/callbacks.phpt]
Test V8::executeString() : Simple test [tests/closures_basic.phpt]
Test V8::executeString() : Dynamic closure call test [tests/closures_dynamic.phpt]
Test V8Js::setModuleLoader : Returned modules are cached [tests/commonjs_caching_001.phpt]
Test V8Js::setModuleLoader : module cache seperated per isolate [tests/commonjs_caching_002.phpt]
Test V8Js::setModuleNormaliser : Custom normalisation #001 [tests/commonjs_cust_normalise_001.phpt]
Test V8Js::setModuleNormaliser : Custom normalisation #002 [tests/commonjs_cust_normalise_002.phpt]
Test V8Js::setModuleNormaliser : Custom normalisation #003 [tests/commonjs_cust_normalise_003.phpt]
Test V8Js::setModuleNormaliser : Custom normalisation #004 [tests/commonjs_cust_normalise_004.phpt]
Test V8Js::setModuleLoader : Handle fatal errors gracefully [tests/commonjs_fatal_error.phpt]
Test V8Js::setModuleLoader : CommonJS modules [tests/commonjs_modules.phpt]
Test V8Js::setModuleLoader : Assign result multiple times [tests/commonjs_multiassign.phpt]
Test V8Js::setModuleLoader : Path normalisation #001 [tests/commonjs_normalise_001.phpt]
Test V8Js::setModuleLoader : Path normalisation #002 [tests/commonjs_normalise_002.phpt]
Test V8Js::setModuleLoader : Path normalisation #003 [tests/commonjs_normalise_003.phpt]
Test V8Js::setModuleLoader : Path normalisation #004 [tests/commonjs_normalise_004.phpt]
Test V8Js::setModuleLoader : Path normalisation #005 [tests/commonjs_normalise_005.phpt]
Test V8Js::setModuleLoader : Module source naming [tests/commonjs_source_naming.phpt]
Test V8::compileString() : Compile and run a script [tests/compile_string.phpt]
Test V8::compileString() : Check compiled script isolate processing [tests/compile_string_isolate.phpt]
Test V8::executeString() : Calling construct twice [tests/construct.phpt]
Test V8::executeString() : test context preserving [tests/context_preserving.phpt]
Test V8::executeString() : test context separation [tests/context_separation.phpt]
Test V8::executeString() : correct temp context construction [tests/context_temp_creation.phpt]
Test V8Js::createSnapshot() : Basic snapshot creation & re-use [tests/create_snapshot_basic.phpt]
Test V8::executeString() : Testing lifespan of V8Js context objects [tests/ctx_lifetime.phpt]
Test V8::executeString() : Pass JS date to PHP [tests/datetime_pass.phpt]
Test V8::executeString() : Properties on derived class [tests/derived_class_properties.phpt]
Test V8::executeString() : Extra properties on derived class [tests/derived_class_properties_extra.phpt]
Test V8::executeString() : Initialized properties on derived class [tests/derived_class_properties_init.phpt]
Test V8::executeString() : Protected and private properties on derived class [tests/derived_class_properties_protected.phpt]
Test V8::executeString() : Handle die() gracefully [tests/die.phpt]
Test V8::executeString() : direct construction is prohibited [tests/direct_construct.phpt]
Test V8::executeString() : V8JsScriptException [tests/exception.phpt]
Test V8::executeString() : Exception clearing test [tests/exception_clearing.phpt]
Test V8::executeString() : Exception propagation test 1 [tests/exception_propagation_1.phpt]
Test V8::executeString() : Exception propagation test 2 [tests/exception_propagation_2.phpt]
Test V8::executeString() : Exception propagation test 3 [tests/exception_propagation_3.phpt]
Test V8::executeString() : Test getJsStartColumn on script exception [tests/exception_start_column.phpt]
Test V8::executeString() : Forcing to arrays (return value conversion) [tests/execute_flags.phpt]
Test V8::executeString() : Forcing to arrays (argument passing) [tests/execute_flags_args.phpt]
Test V8::executeString() : Forcing to arrays (property writing) [tests/execute_flags_property_writing.phpt]
Test V8::executeString() : Fatal Error handler to ignore warnings [tests/fatal_error_ignore_non_fatals.phpt]
Test V8::executeString() : Fatal Error handler not to uninstall on inner frames [tests/fatal_error_no_uninstall_inner_frame.phpt]
Test V8::executeString() : Fatal Error with recursive executeString calls [tests/fatal_error_recursive.phpt]
Test V8::executeString() : Fatal Error rethrowing [tests/fatal_error_rethrow.phpt]
Test V8::executeString() : Fatal Error handler must be uninstalled when leaving outermost frame [tests/fatal_error_uninstall_in_first_frame.phpt]
Test V8Function() : Handle fatal errors gracefully [tests/fatal_error_v8function.phpt]
Test V8::executeString() : Call passed-back function (directly) [tests/function_call.phpt]
Test V8::executeString() : Call passed-back function [tests/function_passback.phpt]
Test V8::executeString() : Call passed-back function (property access) [tests/function_passback2.phpt]
Test V8::executeString() : Set property on function [tests/function_properties.phpt]
Test V8::executeString() : Generators V8 -> PHP (foreach) [tests/generators_from_v8_001.phpt]
Test V8::executeString() : Generators V8 -> PHP (direct) [tests/generators_from_v8_002.phpt]
Test V8::executeString() : Generators V8 -> PHP (rewind) [tests/generators_from_v8_003.phpt]
Test V8::executeString() : Generators V8 -> PHP (instantiate in PHP + foreach) [tests/generators_from_v8_004.phpt]
Test V8::executeString() : Generators V8 -> PHP (instantiate in PHP + iterate in JS) [tests/generators_from_v8_005.phpt]
Test V8::executeString() : Generators V8 -> PHP (yield from) [tests/generators_from_v8_006.phpt]
Test V8::executeString() : Generators V8 -> PHP (throw JS) [tests/generators_from_v8_007.phpt]
Test V8::executeString() : Generators V8 -> PHP (throw PHP) [tests/generators_from_v8_008.phpt]
Test V8::executeString() : Generators V8 -> PHP (fatal error) [tests/generators_from_v8_009.phpt]
Test V8::executeString() : Generators V8 -> PHP (properties) [tests/generators_from_v8_010.phpt]
Test V8::executeString() : Generators V8 -> PHP [tests/generators_from_v8_basic.phpt]
Test V8::executeString() : Generators PHP -> V8 (instantite in JS) [tests/generators_to_v8_001.phpt]
Test V8::executeString() : Generators PHP -> V8 (instantiate in JS, iterate in PHP) [tests/generators_to_v8_002.phpt]
Test V8::executeString() : Generators PHP -> V8 (instantiate in JS, iterate in PHP) [tests/generators_to_v8_003.phpt]
Test V8::executeString() : Generators PHP -> V8 (yield from) [tests/generators_to_v8_004.phpt]
Test V8::executeString() : Generators PHP -> V8 [tests/generators_to_v8_basic.phpt]
Test V8::executeString() : PHP variables via get accessor [tests/get_accessor.phpt]
Test V8::executeString() : Get constructor method [tests/get_constructor.phpt]
Test V8::executeString() : has_property after dispose [tests/has_property_after_dispose.phpt]
Test V8::executeString() : Issue #116 V8Function injection into other V8Js [tests/issue_116-v8function-injection.phpt]
Test V8Function::__call() : Check v8::TryCatch behaviour [tests/issue_127_001.phpt]
Test V8::executeString() : Backwards compatibility for issue #156 [tests/issue_156_001.phpt]
Test V8::executeString() : Issue #160 V8Function affected by V8Js::FLAG_FORCE_ARRAY [tests/issue_160_basic.phpt]
Test V8::executeString() : Method access on derived classes (protected) [tests/issue_183_001.phpt]
Test V8::executeString() : Method access on derived classes (private) [tests/issue_183_002.phpt]
Test V8::executeString() : Method access on derived classes (V8Js methods) [tests/issue_183_003.phpt]
Test V8::executeString() : Method access on derived classes (overridden V8Js methods) [tests/issue_183_004.phpt]
Test V8::executeString() : Method access on derived classes [tests/issue_183_basic.phpt]
Test V8::executeString() : Issue #185 this on direct invocation of method [tests/issue_185_001.phpt]
Test V8::executeString() : Issue #185 this on function invocation [tests/issue_185_002.phpt]
Test V8::executeString() : Issue #185 Wrong this on V8Object method invocation [tests/issue_185_basic.phpt]
Test V8::executeString() : Handle Z_TYPE == IS_REFERENCE (issue #246) [tests/issue_246_001.phpt]
Test V8::executeString() : Issue #250 (early free of array) [tests/issue_250_001.phpt]
Test V8::executeString() : Issue #250 (early free of array) [tests/issue_250_002.phpt]
Test V8::executeString() : Issue #306 V8 crashing on toLocaleString() [tests/issue_306_basic.phpt]
Test V8::executeString() : Issue #316 endless property iteration [tests/issue_316_basic.phpt]
Test V8::executeString() : Test PHP object construction controlled by JavaScript (simple) [tests/js-construct-basic.phpt]
Test V8::executeString() : Test PHP object construction controlled by JavaScript (non-construction call) [tests/js-construct-direct-call.phpt]
Test V8::executeString() : Test PHP object construction controlled by JavaScript (protected ctor) [tests/js-construct-protected-ctor.phpt]
Test V8::executeString() : Test PHP object construction controlled by JavaScript (with ctor) [tests/js-construct-with-ctor.phpt]
Test V8::executeString() : Test for leaked PHP object if passed back multiple times [tests/leak-php-object.phpt]
Test V8::executeString() : Check long integer handling from PHP to JS [tests/long.phpt]
Test V8::executeString() : Check long 64-bit export from PHP to JS [tests/long_int64.phpt]
Test V8::executeString() : Memory limit [tests/memory_limit.phpt]
Test V8::executeString() : Use multiple V8js instances with objects [tests/multi-object.phpt]
Test V8::executeString() : Use multiple V8js instances [tests/multi.phpt]
Test V8::executeString() : Pass strings with null-bytes [tests/null_byte_string.phpt]
Test V8::executeString() : Object passed from PHP [tests/object.phpt]
Test V8::executeString() : DOM object passed from PHP [tests/object_dom.phpt]
Test V8::executeString() : Calling methods of object passed from PHP [tests/object_method_call.phpt]
Test V8::executeString() : Object passing PHP > JS > PHP [tests/object_passback.phpt]
Test V8::executeString() : Object passing JS > PHP > JS [tests/object_passback_002.phpt]
Test V8::executeString() : Prototype with PHP callbacks [tests/object_prototype.phpt]
Test V8::executeString() : Test PHP object reusage [tests/object_reuse.phpt]
Test V8::executeString() : PHP Exception handling (repeated) [tests/php_exceptions_001.phpt]
Test V8::executeString() : PHP Exception handling (multi-level) [tests/php_exceptions_002.phpt]
Test V8::executeString() : PHP Exception handling (basic JS propagation) [tests/php_exceptions_003.phpt]
Test V8::executeString() : PHP Exception handling (PHP->JS->PHP back propagation) [tests/php_exceptions_004.phpt]
Test V8::executeString() : PHP Exception handling (JS throw PHP-exception) [tests/php_exceptions_005.phpt]
Test V8::executeString() : PHP Exception handling (JS throws normal PHP-object) [tests/php_exceptions_006.phpt]
Test V8::executeString() : PHP Exception handling (basic) [tests/php_exceptions_basic.phpt]
Test V8::executeString() : property_exists/isset/empty on wrapped JS objects [tests/property_exists.phpt]
Test V8::executeString() : Property visibility - delete [tests/property_visibility-delete.phpt]
Test V8::executeString() : Property visibility - enumerate [tests/property_visibility-enumerate.phpt]
Test V8::executeString() : Property visibility - has property [tests/property_visibility-has-property.phpt]
Test V8::executeString() : Property visibility - set [tests/property_visibility-set.phpt]
Test V8::executeString() : Property visibility [tests/property_visibility.phpt]
Test V8::executeString() : Property visibility __get [tests/property_visibility__get.phpt]
Test V8::executeString() : Property visibility __set [tests/property_visibility__set.phpt]
Test V8::executeString() : Regression #121 Z_ADDREF_P [tests/regression_121.phpt]
Test V8::executeString() : return this (aka fluent setters, JS-side) [tests/return_this_001.phpt]
Test V8::executeString() : return $this (aka fluent setters) [tests/return_this_basic.phpt]
Test V8::executeString() : Return values [tests/return_value.phpt]
Test serialize(V8Object) : __sleep and __wakeup throw [tests/serialize_001.phpt]
Test serialize(V8Function) : __sleep and __wakeup throw [tests/serialize_002.phpt]
Test V8::setMemoryLimit() : Memory limit applied to V8Function calls [tests/set_memory_limit_001.phpt]
Test V8::setMemoryLimit() : Memory limit can be imposed later [tests/set_memory_limit_003.phpt]
Test V8::setMemoryLimit() : Memory limit can be set on V8Js object [tests/set_memory_limit_basic.phpt]
Test V8::setTimeLimit() : Time limit applied to V8Function calls [tests/set_time_limit_001.phpt]
Test V8::setTimeLimit() : Time limit can be changed [tests/set_time_limit_002.phpt]
Test V8::setTimeLimit() : Time limit can be imposed later on [tests/set_time_limit_003.phpt]
Test V8::setTimeLimit() : Time limit can be prolonged [tests/set_time_limit_004.phpt]
Test V8::setTimeLimit() : Time limit can be set on V8Js object [tests/set_time_limit_basic.phpt]
Test V8::executeString() : Time limit [tests/time_limit.phpt]
Test V8::executeString() : Check timezone handling [tests/timezones.phpt]
Test V8::executeString() : Check if imported code works with umlauts [tests/unicode.phpt]
Test V8::executeString() : Use after dispose [tests/use_after_dispose.phpt]
Test V8::executeString() : unset property on V8Object [tests/v8_unset_property.phpt]
Test V8::executeString() : write property on V8Object [tests/v8_write_property.phpt]
Test V8::executeString() : var_dump [tests/var_dump.phpt]
Test V8::executeString() : simple variables passed from PHP [tests/variable_passing.phpt]
=====================================================================

You may have found a problem in PHP.
This report can be automatically sent to the PHP QA team at
http://qa.php.net/reports and http://news.php.net/php.qa.reports
This gives us a better understanding of PHP's behavior.
If you don't want to send the report immediately you can choose
option "s" to save it.	You can then email it to qa-reports@lists.php.net later.
Do you want to send this report now? [Yns]: yes  

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

Successfully merging a pull request may close this issue.

5 participants