phpv8/v8js

php8 has problem on ubuntu 20 with v8 version.... NONE

usback opened this issue · 10 comments

i did complie with v8

/tmp/v8js (php8) » ls -al /opt/v8/lib                                                                                                                                                                                 
합계 84344
drwxr-xr-x 2 root root     4096  3월 24 02:10 .
drwxr-xr-x 4 root root     4096  3월 24 02:09 ..
-rw-r--r-- 1 root root 10454784  6월  6 20:01 icudtl.dat
-rwxr-xr-x 1 root root   122304  6월  6 20:01 libchrome_zlib.so
-rwxr-xr-x 1 root root   307600  6월  6 20:01 libcppgc.so
-rwxr-xr-x 1 root root  3671504  6월  6 20:01 libicui18n.so
-rwxr-xr-x 1 root root  3671536  6월  6 20:01 libicui18n_hidden_visibility.so
-rwxr-xr-x 1 root root  2224176  6월  6 20:01 libicuuc.so
-rwxr-xr-x 1 root root  2224192  6월  6 20:01 libicuuc_hidden_visibility.so
-rwxr-xr-x 1 root root 24821720  6월  6 20:01 libv8.so
-rwxr-xr-x 1 root root   993128  6월  6 20:01 libv8_debug_helper.so
-rwxr-xr-x 1 root root 37046904  6월  6 20:01 libv8_for_testing.so
-rwxr-xr-x 1 root root     9728  6월  6 20:01 libv8_heap_base_for_testing.so
-rwxr-xr-x 1 root root   253824  6월  6 20:01 libv8_libbase.so
-rwxr-xr-x 1 root root   128432  6월  6 20:01 libv8_libplatform.so
-rw-r--r-- 1 root root   410864  6월  6 20:01 snapshot_blob.bin
/tmp/v8js (php8) » ./configure --with-v8js=/opt/v8 LDFLAGS="-lstdc++" CPPFLAGS="-DV8_COMPRESS_POINTERS"                                                                                                                   
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
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 for system library directory... lib
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/20210902 -I/usr/include/php/20210902/main -I/usr/include/php/20210902/TSRM -I/usr/include/php/20210902/Zend -I/usr/include/php/20210902/ext -I/usr/include/php/20210902/ext/date/lib
checking for PHP extension directory... /usr/lib/php/20210902
checking for PHP installed headers prefix... /usr/include/php/20210902
checking if debug is enabled... no
checking if zts is enabled... no
checking for gawk... gawk
checking for V8 Javascript Engine... yes, shared
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++14
checking how to allow c++14 narrowing... -Wno-narrowing
checking for libv8_libplatform... found
checking for V8 version... NONE
configure: error: could not determine libv8 version

config.log file


  $ ./configure --with-v8js=/opt/v8 LDFLAGS=-lstdc++ CPPFLAGS=-DV8_COMPRESS_POINTERS

## --------- ##
## Platform. ##
## --------- ##

hostname = 26EA9E0
uname -m = x86_64
uname -r = 5.4.0-113-generic
uname -s = Linux
uname -v = #127-Ubuntu SMP Wed May 18 14:30:56 UTC 2022

/usr/bin/uname -p = x86_64
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /tmp/depot_tools
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /usr/local/games
PATH: /snap/bin
PATH: /home//lib
PATH: /home/ssh
PATH: /home/.composer/vendor/bin
PATH: /home/lib
PATH: /home/.npm-packages/bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2308: checking for grep that handles long lines and -e
configure:2366: result: /usr/bin/grep
configure:2371: checking for egrep
configure:2433: result: /usr/bin/grep -E
configure:2438: checking for a sed that does not truncate output
configure:2502: result: /usr/bin/sed
configure:2641: checking for pkg-config
configure:2659: found /usr/bin/pkg-config
configure:2671: result: /usr/bin/pkg-config
configure:2696: checking pkg-config is at least version 0.9.0
configure:2699: result: yes
configure:2761: checking for cc
configure:2777: found /usr/bin/cc
configure:2788: result: cc
configure:2819: checking for C compiler version
configure:2828: cc --version >&5
cc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:2839: $? = 0
configure:2828: cc -v >&5
Using built-in specs.
COLLECT_GCC=cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.1' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-Av3uEd/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1) 
configure:2839: $? = 0
configure:2828: cc -V >&5
cc: error: unrecognized command line option '-V'
cc: fatal error: no input files
compilation terminated.
configure:2839: $? = 1
configure:2828: cc -qversion >&5
cc: error: unrecognized command line option '-qversion'; did you mean '--version'?
cc: fatal error: no input files
compilation terminated.
configure:2839: $? = 1
configure:2859: checking whether the C compiler works
configure:2881: cc  -DV8_COMPRESS_POINTERS -lstdc++ conftest.c  >&5
configure:2885: $? = 0
configure:2933: result: yes
configure:2936: checking for C compiler default output file name
configure:2938: result: a.out
configure:2944: checking for suffix of executables
configure:2951: cc -o conftest  -DV8_COMPRESS_POINTERS -lstdc++ conftest.c  >&5
configure:2955: $? = 0
configure:2977: result: 
configure:2999: checking whether we are cross compiling
configure:3007: cc -o conftest  -DV8_COMPRESS_POINTERS -lstdc++ conftest.c  >&5
configure:3011: $? = 0
configure:3018: ./conftest
configure:3022: $? = 0
configure:3010: result: no
configure:3015: checking for suffix of object files
configure:3037: cc -c  -DV8_COMPRESS_POINTERS conftest.c >&5
configure:3041: $? = 0
configure:3062: result: o
configure:3066: checking whether we are using the GNU C compiler
configure:3085: cc -c  -DV8_COMPRESS_POINTERS conftest.c >&5
configure:3085: $? = 0
configure:3094: result: yes
configure:3103: checking whether cc accepts -g
configure:3123: cc -c -g -DV8_COMPRESS_POINTERS conftest.c >&5
configure:3123: $? = 0
configure:3164: result: yes
configure:3181: checking for cc option to accept ISO C89
configure:3244: cc  -c -g -O2 -DV8_COMPRESS_POINTERS conftest.c >&5
configure:3244: $? = 0
configure:3257: result: none needed
configure:3283: checking how to run the C preprocessor
configure:3314: cc -E -DV8_COMPRESS_POINTERS conftest.c
configure:3314: $? = 0
configure:3328: cc -E -DV8_COMPRESS_POINTERS conftest.c
conftest.c:9:10: fatal error: ac_nonexistent.h: No such file or directory
    9 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:3328: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:3353: result: cc -E
configure:3373: cc -E -DV8_COMPRESS_POINTERS conftest.c
configure:3373: $? = 0
configure:3387: cc -E -DV8_COMPRESS_POINTERS conftest.c
conftest.c:9:10: fatal error: ac_nonexistent.h: No such file or directory
    9 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:3387: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:3418: checking for icc
configure:3427: result: no
configure:3441: checking for suncc
configure:3450: result: no
configure:3468: checking for system library directory
configure:3483: result: lib
configure:3490: checking if compiler supports -Wl,-rpath,
configure:3509: cc -o conftest -g -O2 -DV8_COMPRESS_POINTERS -lstdc++ conftest.c -Wl,-rpath,/usr/lib  >&5
configure:3509: $? = 0
configure:3519: result: yes
configure:3569: checking build system type
configure:3583: result: x86_64-pc-linux-gnu
configure:3603: checking host system type
configure:3616: result: x86_64-pc-linux-gnu
configure:3636: checking target system type
configure:3649: result: x86_64-pc-linux-gnu
configure:3752: checking for PHP prefix
configure:3754: result: /usr
configure:3756: checking for PHP includes
configure:3758: result: -I/usr/include/php/20210902 -I/usr/include/php/20210902/main -I/usr/include/php/20210902/TSRM -I/usr/include/php/20210902/Zend -I/usr/include/php/20210902/ext -I/usr/include/php/20210902/ext/date/lib
configure:3760: checking for PHP extension directory
configure:3762: result: /usr/lib/php/20210902
configure:3764: checking for PHP installed headers prefix
configure:3766: result: /usr/include/php/20210902
configure:3769: checking if debug is enabled
configure:3795: result: no
configure:3798: checking if zts is enabled
configure:3824: result: no
configure:3892: checking for gawk
configure:3909: found /usr/bin/gawk
configure:3920: result: gawk
configure:3963: checking for V8 Javascript Engine
configure:4003: result: yes, shared
configure:4238: checking for g++
configure:4254: found /usr/bin/g++
configure:4265: result: g++
configure:4292: checking for C++ compiler version
configure:4301: g++ --version >&5
g++ (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:4312: $? = 0
configure:4301: g++ -v >&5
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.1' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-Av3uEd/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1) 
configure:4312: $? = 0
configure:4301: g++ -V >&5
g++: error: unrecognized command line option '-V'
g++: fatal error: no input files
compilation terminated.
configure:4312: $? = 1
configure:4301: g++ -qversion >&5
g++: error: unrecognized command line option '-qversion'; did you mean '--version'?
g++: fatal error: no input files
compilation terminated.
configure:4312: $? = 1
configure:4316: checking whether we are using the GNU C++ compiler
configure:4335: g++ -c  -DV8_COMPRESS_POINTERS conftest.cpp >&5
configure:4335: $? = 0
configure:4344: result: yes
configure:4353: checking whether g++ accepts -g
configure:4373: g++ -c -g -DV8_COMPRESS_POINTERS conftest.cpp >&5
configure:4373: $? = 0
configure:4414: result: yes
configure:4442: checking how to run the C++ preprocessor
configure:4469: g++ -E -DV8_COMPRESS_POINTERS conftest.cpp
configure:4469: $? = 0
configure:4483: g++ -E -DV8_COMPRESS_POINTERS conftest.cpp
conftest.cpp:10:10: fatal error: ac_nonexistent.h: No such file or directory
   10 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:4483: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define PHP_V8_EXEC_PATH "/opt/v8/lib/libv8.so"
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:4508: result: g++ -E
configure:4528: g++ -E -DV8_COMPRESS_POINTERS conftest.cpp
configure:4528: $? = 0
configure:4542: g++ -E -DV8_COMPRESS_POINTERS conftest.cpp
conftest.cpp:10:10: fatal error: ac_nonexistent.h: No such file or directory
   10 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:4542: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define PHP_V8_EXEC_PATH "/opt/v8/lib/libv8.so"
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:4586: checking for C standard version
configure:4611: g++ -o conftest -g -O2 -std=c++14 -lstdc++ -Wl,--rpath=/opt/v8/lib conftest.cpp -lstdc++  >&5
configure:4611: $? = 0
configure:4611: ./conftest
configure:4611: $? = 0
configure:4629: result: c++14
configure:4632: checking how to allow c++14 narrowing
configure:4661: g++ -o conftest -std=c++14 -DV8_COMPRESS_POINTERS -lstdc++ -Wl,--rpath=/opt/v8/lib conftest.cpp -lstdc++  >&5
conftest.cpp: In function 'int main()':
conftest.cpp:11:45: error: narrowing conversion of '-1' from 'int' to 'unsigned int' [-Wnarrowing]
   11 |         struct { unsigned int x; } foo = {-1};
      |                                             ^
configure:4661: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define PHP_V8_EXEC_PATH "/opt/v8/lib/libv8.so"
| /* end confdefs.h.  */
| int main() {
|         struct { unsigned int x; } foo = {-1};
|         (void) foo;
|         return 0;
|     }
configure:4680: g++ -o conftest -Wno-c++14-narrowing -std=c++14 -DV8_COMPRESS_POINTERS -lstdc++ -Wl,--rpath=/opt/v8/lib conftest.cpp -lstdc++  >&5
conftest.cpp: In function 'int main()':
conftest.cpp:11:49: error: narrowing conversion of '-1' from 'int' to 'unsigned int' [-Wnarrowing]
   11 |             struct { unsigned int x; } foo = {-1};
      |                                                 ^
At global scope:
cc1plus: warning: unrecognized command line option '-Wno-c++14-narrowing'
configure:4680: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define PHP_V8_EXEC_PATH "/opt/v8/lib/libv8.so"
| /* end confdefs.h.  */
| int main() {
|             struct { unsigned int x; } foo = {-1};
|             (void) foo;
|             return 0;
|         }
configure:4699: g++ -o conftest -Wno-narrowing -std=c++14 -DV8_COMPRESS_POINTERS -lstdc++ -Wl,--rpath=/opt/v8/lib conftest.cpp -lstdc++  >&5
configure:4699: $? = 0
configure:4699: ./conftest
configure:4699: $? = 0
configure:4731: result: -Wno-narrowing
configure:4749: checking for libv8_libplatform
configure:4769: g++ -o conftest -g -O2 -DV8_COMPRESS_POINTERS -I/opt/v8/include -std=c++14 -lstdc++ -Wl,--rpath=/opt/v8/lib -L/opt/v8/lib conftest.cpp -lstdc++   -lv8_libplatform -lv8 >&5
configure:4769: $? = 0
configure:4771: result: found
configure:4819: checking for V8 version
configure:4847: g++ -o conftest -g -O2 -DV8_COMPRESS_POINTERS -I/opt/v8/include -std=c++14 -lstdc++ -Wl,--rpath=/opt/v8/lib -L/opt/v8/lib conftest.cpp -lstdc++   -lv8_libplatform -Wl,-rpath,/opt/v8/lib -L/opt/v8/lib -lv8  >&5
In file included from /opt/v8/include/v8-object.h:9,
                 from /opt/v8/include/v8-array-buffer.h:13,
                 from /opt/v8/include/v8.h:24,
                 from conftest.cpp:10:
/opt/v8/include/v8-maybe.h:106:45: error: 'is_lvalue_reference_v' is not a member of 'std'; did you mean 'is_lvalue_reference'?
  106 |   template <class U, std::enable_if_t<!std::is_lvalue_reference_v<U>>*>
      |                                             ^~~~~~~~~~~~~~~~~~~~~
      |                                             is_lvalue_reference
/opt/v8/include/v8-maybe.h:106:67: error: template argument 1 is invalid
  106 |   template <class U, std::enable_if_t<!std::is_lvalue_reference_v<U>>*>
      |                                                                   ^
/opt/v8/include/v8-maybe.h:106:71: error: expected unqualified-id before '>' token
  106 |   template <class U, std::enable_if_t<!std::is_lvalue_reference_v<U>>*>
      |                                                                       ^
/opt/v8/include/v8-maybe.h:123:43: error: 'is_lvalue_reference_v' is not a member of 'std'; did you mean 'is_lvalue_reference'?
  123 | template <class T, std::enable_if_t<!std::is_lvalue_reference_v<T>>* = nullptr>
      |                                           ^~~~~~~~~~~~~~~~~~~~~
      |                                           is_lvalue_reference
/opt/v8/include/v8-maybe.h:123:65: error: template argument 1 is invalid
  123 | template <class T, std::enable_if_t<!std::is_lvalue_reference_v<T>>* = nullptr>
      |                                                                 ^
/opt/v8/include/v8-maybe.h:123:70: error: expected unqualified-id before '=' token
  123 | template <class T, std::enable_if_t<!std::is_lvalue_reference_v<T>>* = nullptr>
      |                                                                      ^
configure:4847: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define PHP_V8_EXEC_PATH "/opt/v8/lib/libv8.so"
| /* end confdefs.h.  */
| #include <v8.h>
| #include <iostream>
| #include <fstream>
| using namespace std;
| 
| int main ()
| {
| 	ofstream testfile ("conftestval");
| 	if (testfile.is_open()) {
| 		testfile << v8::V8::GetVersion();
| 		testfile << "\n";
| 		testfile.close();
| 		return 0;
| 	}
| 	return 1;
| }
configure:4858: result: NONE
configure:4881: error: could not determine libv8 version

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-pc-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_cxx_compiler_gnu=yes
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=set
ac_cv_env_CPPFLAGS_value=-DV8_COMPRESS_POINTERS
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=
ac_cv_env_CXXFLAGS_value=
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value=-lstdc++
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LT_SYS_LIBRARY_PATH_set=
ac_cv_env_LT_SYS_LIBRARY_PATH_value=
ac_cv_env_PKG_CONFIG_LIBDIR_set=
ac_cv_env_PKG_CONFIG_LIBDIR_value=
ac_cv_env_PKG_CONFIG_PATH_set=
ac_cv_env_PKG_CONFIG_PATH_value=
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_host=x86_64-pc-linux-gnu
ac_cv_objext=o
ac_cv_path_EGREP='/usr/bin/grep -E'
ac_cv_path_GREP=/usr/bin/grep
ac_cv_path_SED=/usr/bin/sed
ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config
ac_cv_prog_AWK=gawk
ac_cv_prog_CPP='cc -E'
ac_cv_prog_CXXCPP='g++ -E'
ac_cv_prog_ac_ct_CC=cc
ac_cv_prog_ac_ct_CXX=g++
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes
ac_cv_prog_cxx_g=yes
ac_cv_target=x86_64-pc-linux-gnu
ac_cv_v8_cstd=c++14
ac_cv_v8_narrowing=-Wno-narrowing
ac_cv_v8_version=NONE
php_cv_cc_rpath=yes

## ----------------- ##
## Output variables. ##
## ----------------- ##

AR=''
AWK='gawk'
BUILD_CC=''
CC='cc'
CFLAGS='-g -O2'
CONFIGURE_COMMAND=' '\''./configure'\''  '\''--with-v8js=/opt/v8'\'''
CONFIGURE_OPTIONS=' '\''--with-v8js=/opt/v8'\'''
CPP='cc -E'
CPPFLAGS='-DV8_COMPRESS_POINTERS -I/opt/v8/include -std=c++14'
CXX='g++'
CXXCPP='g++ -E'
CXXFLAGS='-g -O2'
DEFS=''
DLLTOOL=''
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/usr/bin/grep -E'
EXEEXT=''
FGREP=''
GREP='/usr/bin/grep'
LD=''
LDFLAGS='-lstdc++ -Wl,--rpath=/opt/v8/lib -L/opt/v8/lib'
LIBOBJS=''
LIBS='-lstdc++   -lv8_libplatform -Wl,-rpath,/opt/v8/lib -L/opt/v8/lib -lv8 '
LIBTOOL=''
LIPO=''
LN_S=''
LTLIBOBJS=''
LT_SYS_LIBRARY_PATH=''
MANIFEST_TOOL=''
NM=''
NMEDIT=''
OBJDUMP=''
OBJEXT='o'
OTOOL64=''
OTOOL=''
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
PKG_CONFIG='/usr/bin/pkg-config'
PKG_CONFIG_LIBDIR=''
PKG_CONFIG_PATH=''
RANLIB=''
SED='/usr/bin/sed'
SHELL='/bin/bash'
SHLIB_DL_SUFFIX_NAME='so'
SHLIB_SUFFIX_NAME='so'
STRIP=''
ac_ct_AR=''
ac_ct_CC='cc'
ac_ct_CXX='g++'
ac_ct_DUMPBIN=''
bindir='${exec_prefix}/bin'
build='x86_64-pc-linux-gnu'
build_alias=''
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE}'
dvidir='${docdir}'
exec_prefix='NONE'
host='x86_64-pc-linux-gnu'
host_alias='x86_64-pc-linux-gnu'
host_cpu='x86_64'
host_os='linux-gnu'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr'
program_transform_name='s,x,x,'
psdir='${docdir}'
runstatedir='${localstatedir}/run'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target='x86_64-pc-linux-gnu'
target_alias=''
target_cpu='x86_64'
target_os='linux-gnu'
target_vendor='pc'

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME ""
#define PACKAGE_TARNAME ""
#define PACKAGE_VERSION ""
#define PACKAGE_STRING ""
#define PACKAGE_BUGREPORT ""
#define PACKAGE_URL ""
#define PHP_V8_EXEC_PATH "/opt/v8/lib/libv8.so"

configure: exit 1

which version of V8 is this?

I recently tried 10.1.124.12 which worked just fine, but haven't tried the 10.2 line so far

i found problem with v8 more version 10
9 version is working
thank you..

@stesie

hi there,

Trying to compile v8js with PHP8 .0.20.

Comipiled V8 main branch (V8 version 10.5.0) without errors. Listing of ls -al /opt/v8/lib matches usback's.

However, building v8js explodes with the same message:

checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for C standard version... c++14
checking how to allow c++14 narrowing... -Wno-narrowing
checking for libv8_libplatform... found
checking for V8 version... NONE
configure: error: could not determine libv8 version

I can also confirm that v8js compiles just fine with V8 10.1.124.12 - and huge thanks for that.

@stesie Is there a chance to look into 8.1 compatibility? :)

EDIT. v8js compiles just fine with PHP8.1

thank you !!! i will try that version

Try PR #490 for V8 10.5 support on PHP 7.x and please report back if it works for you.

If so I'll merge it (and forward merge it to PHP 8.x branch)

os: ubuntu 22
php : version 8.1.7
v8 : version 10.1.124.12
it worked
but i'm not try php7.x version
thank you

php7 is not work ...
configure is pass but make has problem

                 from /tmp/v8js/v8js_array_access.cc:17:
/opt/v8/include/v8-object.h:247:37: note: declared here
  247 |   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
      |                                     ^~~
/tmp/v8js/v8js_array_access.cc:217:86: warning: ignoring return value of ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’, declared with attribute warn_unused_result [-Wunused-result]
  217 |  result->Set(isolate->GetEnteredOrMicrotaskContext(), V8JS_SYM("length"), V8JS_INT(i));
      |                                                                                      ^
In file included from /opt/v8/include/v8-array-buffer.h:13,
                 from /opt/v8/include/v8.h:24,
                 from /tmp/v8js/php_v8js_macros.h:55,
                 from /tmp/v8js/v8js_array_access.cc:17:
/opt/v8/include/v8-object.h:244:37: note: declared here
  244 |   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
      |                                     ^~~
/tmp/v8js/v8js_array_access.cc: In function ‘void v8js_array_access_named_getter(v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value>&)’:
/tmp/v8js/v8js_array_access.cc:253:83: warning: ignoring return value of ‘bool v8::MaybeLocal<F>::ToLocal(v8::Local<S>*) const [with S = v8::Value; T = v8::Value]’, declared with attribute warn_unused_result [-Wunused-result]
  253 |   prototype_object->Get(isolate->GetEnteredOrMicrotaskContext(), property).ToLocal(&ret_value);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
make: *** [Makefile:219: v8js_array_access.lo] 오류 1

thank you

@usback this might be entirely useless for you, but having had similar errors, make sure you're starting from a clean slate when you're building for different versions of libv8, php, etc.

$ make clean

i had a LOT of issues, failed tests, etc until i did that.

otherwise, the output in your last comment is chopped off and doesn't show the error, just the subsequent details for it.

svowl commented

@stesie Could you, please, confirm that V8 v10.1.124.12 is the last one which is compatible with v8js php8 branch?
I just tried the last stable V8 release 10.5.218.7 (at this moment) according to https://omahaproxy.appspot.com/ and it failed in the same way as described above (configure: error: could not determine libv8 version)