RubixML/Sentiment

Neural network crash when using AdaMax optimizer with Tensor extension

DoeurnPhalin opened this issue · 9 comments

The program work find before installing tensor extension, but after I install the extension I get this error.
Can someone help? What do I miss ?

zephir_call_class_method_aparams: *return_value must be IS_NULL or IS_UNDEF
#0 0x7f4afdead288 [/usr/lib/php/20190902/tensor.so(zephir_print_backtrace+0x38) [0x7f4afdead288]]
#1 0x7f4afdeb7215 [/usr/lib/php/20190902/tensor.so(zephir_call_class_method_aparams+0x285) [0x7f4afdeb7215]]
#2 0x7f4afdeb1469 [/usr/lib/php/20190902/tensor.so(zephir_array_fetch+0x2c9) [0x7f4afdeb1469]]
#3 0x7f4afdf4f165 [/usr/lib/php/20190902/tensor.so(zim_Tensor_Matrix_maximum+0xe15) [0x7f4afdf4f165]]
#4 0x55bf0acf5af5 [php(execute_ex+0x8635) [0x55bf0acf5af5]]
#5 0x55bf0acf714b [php(zend_execute+0x12b) [0x55bf0acf714b]]
#6 0x55bf0ac6e1ec [php(zend_execute_scripts+0xcc) [0x55bf0ac6e1ec]]
#7 0x55bf0ac0ded0 [php(php_execute_script+0x2d0) [0x55bf0ac0ded0]]
#8 0x55bf0acf9282 [php(+0x331282) [0x55bf0acf9282]]
#9 0x55bf0aad5938 [php(+0x10d938) [0x55bf0aad5938]]
#10 0x7f4b00f4b0b3 [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f4b00f4b0b3]]
#11 0x55bf0aad5ade [php(_start+0x2e) [0x55bf0aad5ade]]

Aborted (core dumped)

Hi @DoeurnPhalin thanks for the info ... what version of the extension are you running and on what system (Windows, Linux, etc.)?

Hi, I'm running Ubuntu (in Vmware) and I'm using the lasted version of tensors extension (2.2.1).
Could it be something about Zephir ?
I didn't have it installed.

It could @DoeurnPhalin. If you are using the AdaMax optimizer, can you try switching it to Adam and trying it?

https://docs.rubixml.com/latest/neural-network/optimizers/adam.html

It looks like there might be a problem with the maximum() method (used by AdaMax).

You are right @andrewdalpino. It's work after it change AdaMax it to Adam.
Thank you so much for your help. I really appreciate it.

@andrewdalpino It seems that variable ZEPHIR_RELEASE wasn't declared during compilation.

#ifndef ZEPHIR_RELEASE
	if (return_value != NULL && Z_TYPE_P(return_value) > IS_NULL) {
		fprintf(stderr, "%s: *return_value must be IS_NULL or IS_UNDEF\n", __func__);
		zephir_print_backtrace();
		abort();
	}
#endif

https://github.com/RubixML/Tensor/blob/e1bb8fe0edd943fcc76bd8393f9c010240cc1982/ext/kernel/fcall.c#L498

Do you have some modified (extended) steps for compilation?

@andrewdalpino pls check output variables CFLAGS in ext/config.log. It should have -DZEPHIR_RELEASE=1

@AlexNDRmac correct it does

Here is the full log

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure --enable-tensor

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

hostname = Discovery
uname -m = x86_64
uname -r = 5.4.72-microsoft-standard-WSL2
uname -s = Linux
uname -v = #1 SMP Wed Oct 28 23:40:43 UTC 2020

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

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

PATH: /mnt/c/Users/User/Workspace/Rubix/Tensor/vendor/bin
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: /mnt/c/Program Files/WindowsApps/CanonicalGroupLimited.UbuntuonWindows_2004.2021.222.0_x64__79rhkp1fndgsc
PATH: /mnt/c/Program Files (x86)/Common Files/Oracle/Java/javapath
PATH: /mnt/c/ProgramData/Oracle/Java/javapath
PATH: /mnt/c/Program Files/ImageMagick-6.8.9-Q16
PATH: /mnt/c/Program Files (x86)/Intel/iCLS Client/
PATH: /mnt/c/Program Files/Intel/iCLS Client/
PATH: /mnt/c/WINDOWS/system32
PATH: /mnt/c/WINDOWS
PATH: /mnt/c/WINDOWS/System32/Wbem
PATH: /mnt/c/WINDOWS/System32/WindowsPowerShell/v1.0/
PATH: /mnt/c/Program Files/Intel/Intel(R) Management Engine Components/DAL
PATH: /mnt/c/Program Files/Intel/Intel(R) Management Engine Components/IPT
PATH: /mnt/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL
PATH: /mnt/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/IPT
PATH: /mnt/c/Program Files/Intel/WiFi/bin/
PATH: /mnt/c/Program Files/Common Files/Intel/WirelessCommon/
PATH: /mnt/c/Program Files/dotnet/
PATH: /mnt/c/ProgramData/ComposerSetup/bin
PATH: /mnt/c/WINDOWS/System32/OpenSSH/
PATH: /mnt/c/Program Files/Microsoft VS Code/bin
PATH: /mnt/c/Program Files/nodejs/
PATH: /mnt/c/ProgramData/chocolatey/bin
PATH: /mnt/c/Go/bin
PATH: /mnt/c/Users/User/AppData/Local/Microsoft/WindowsApps
PATH: /mnt/c/php
PATH: /mnt/c/Users/User/AppData/Local/Programs/Python/Python36
PATH: /mnt/c/Users/User/AppData/Local/Programs/Python/Python36/Scripts
PATH: /mnt/c/Users/User/AppData/Roaming/Composer/vendor/bin
PATH: /mnt/c/Users/User/AppData/Local/atom/bin
PATH: /mnt/c/Users/User/AppData/Roaming/npm
PATH: /mnt/c/Users/User/go/bin
PATH: /mnt/c/Program Files (x86)/GitHub CLI/
PATH: /mnt/c/Users/User/AppData/Local/Microsoft/WindowsApps
PATH: /mnt/c/ProgramFiles/Git/bin
PATH: /snap/bin


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

configure:2388: checking for grep that handles long lines and -e
configure:2446: result: /bin/grep
configure:2451: checking for egrep
configure:2513: result: /bin/grep -E
configure:2518: checking for a sed that does not truncate output
configure:2582: result: /bin/sed
configure:2721: checking for pkg-config
configure:2754: result: no
configure:2899: checking for C compiler version
configure:2908: gcc --version >&5
gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.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:2919: $? = 0
configure:2908: gcc -v >&5
Using built-in specs.
COLLECT_GCC=gcc
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.3.0-17ubuntu1~20.04' --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-HskZEa/gcc-9-9.3.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.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04) 
configure:2919: $? = 0
configure:2908: gcc -V >&5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
configure:2919: $? = 1
configure:2908: gcc -qversion >&5
gcc: error: unrecognized command line option '-qversion'; did you mean '--version'?
gcc: fatal error: no input files
compilation terminated.
configure:2919: $? = 1
configure:2939: checking whether the C compiler works
configure:2961: gcc -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c  >&5
configure:2965: $? = 0
configure:3013: result: yes
configure:3016: checking for C compiler default output file name
configure:3018: result: a.out
configure:3024: checking for suffix of executables
configure:3031: gcc -o conftest -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c  >&5
configure:3035: $? = 0
configure:3057: result: 
configure:3079: checking whether we are cross compiling
configure:3087: gcc -o conftest -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c  >&5
configure:3091: $? = 0
configure:3098: ./conftest
configure:3102: $? = 0
configure:3090: result: no
configure:3095: checking for suffix of object files
configure:3117: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:3121: $? = 0
configure:3142: result: o
configure:3146: checking whether we are using the GNU C compiler
configure:3165: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:3165: $? = 0
configure:3174: result: yes
configure:3183: checking whether gcc accepts -g
configure:3203: gcc -c -g  conftest.c >&5
configure:3203: $? = 0
configure:3244: result: yes
configure:3261: checking for gcc option to accept ISO C89
configure:3324: gcc  -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:3324: $? = 0
configure:3337: result: none needed
configure:3363: checking how to run the C preprocessor
configure:3394: gcc -E  conftest.c
configure:3394: $? = 0
configure:3408: gcc -E  conftest.c
conftest.c:9:10: fatal error: ac_nonexistent.h: No such file or directory
    9 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:3408: $? = 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:3433: result: gcc -E
configure:3453: gcc -E  conftest.c
configure:3453: $? = 0
configure:3467: gcc -E  conftest.c
conftest.c:9:10: fatal error: ac_nonexistent.h: No such file or directory
    9 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:3467: $? = 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:3498: checking for icc
configure:3507: result: no
configure:3521: checking for suncc
configure:3530: result: no
configure:3548: checking for system library directory
configure:3563: result: lib
configure:3570: checking if compiler supports -R
configure:3589: gcc -o conftest -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c -R /usr/lib  >&5
gcc: error: unrecognized command line option '-R'
configure:3589: $? = 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.  */
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:3599: result: no
configure:3604: checking if compiler supports -Wl,-rpath,
configure:3623: gcc -o conftest -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c -Wl,-rpath,/usr/lib  >&5
configure:3623: $? = 0
configure:3633: result: yes
configure:3649: checking build system type
configure:3663: result: x86_64-pc-linux-gnu
configure:3683: checking host system type
configure:3696: result: x86_64-pc-linux-gnu
configure:3716: checking target system type
configure:3729: result: x86_64-pc-linux-gnu
configure:3832: checking for PHP prefix
configure:3834: result: /usr
configure:3836: checking for PHP includes
configure:3838: result: -I/usr/include/php/20190902 -I/usr/include/php/20190902/main -I/usr/include/php/20190902/TSRM -I/usr/include/php/20190902/Zend -I/usr/include/php/20190902/ext -I/usr/include/php/20190902/ext/date/lib
configure:3840: checking for PHP extension directory
configure:3842: result: /usr/lib/php/20190902
configure:3844: checking for PHP installed headers prefix
configure:3846: result: /usr/include/php/20190902
configure:3849: checking if debug is enabled
configure:3875: result: no
configure:3878: checking if zts is enabled
configure:3904: result: no
configure:3972: checking for gawk
configure:3989: found /usr/bin/gawk
configure:4000: result: gawk
configure:4043: checking whether to enable tensor
configure:4082: result: yes, shared
configure:4485: checking whether HAVE_BUNDLED_PCRE is declared
configure:4485: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  -I/usr/include/php/20190902 -I/usr/include/php/20190902/main -I/usr/include/php/20190902/TSRM -I/usr/include/php/20190902/Zend -I/usr/include/php/20190902/ext -I/usr/include/php/20190902/ext/date/lib conftest.c >&5
conftest.c: In function 'main':
conftest.c:21:10: error: 'HAVE_BUNDLED_PCRE' undeclared (first use in this function)
   21 |   (void) HAVE_BUNDLED_PCRE;
      |          ^~~~~~~~~~~~~~~~~
conftest.c:21:10: note: each undeclared identifier is reported only once for each function it appears in
configure:4485: $? = 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 HAVE_TENSOR 1
| #define COMPILE_DL_TENSOR 1
| /* end confdefs.h.  */
| #include "php_config.h"
| 
| 
| int
| main ()
| {
| #ifndef HAVE_BUNDLED_PCRE
| #ifdef __cplusplus
|   (void) HAVE_BUNDLED_PCRE;
| #else
|   (void) HAVE_BUNDLED_PCRE;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:4485: result: no
configure:4531: checking whether HAVE_JSON is declared
configure:4531: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  -I/usr/include/php/20190902 -I/usr/include/php/20190902/main -I/usr/include/php/20190902/TSRM -I/usr/include/php/20190902/Zend -I/usr/include/php/20190902/ext -I/usr/include/php/20190902/ext/date/lib conftest.c >&5
conftest.c: In function 'main':
conftest.c:21:10: error: 'HAVE_JSON' undeclared (first use in this function); did you mean 'HAVE_ASINH'?
   21 |   (void) HAVE_JSON;
      |          ^~~~~~~~~
      |          HAVE_ASINH
conftest.c:21:10: note: each undeclared identifier is reported only once for each function it appears in
configure:4531: $? = 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 HAVE_TENSOR 1
| #define COMPILE_DL_TENSOR 1
| /* end confdefs.h.  */
| #include "php_config.h"
| 
| 
| int
| main ()
| {
| #ifndef HAVE_JSON
| #ifdef __cplusplus
|   (void) HAVE_JSON;
| #else
|   (void) HAVE_JSON;
| #endif
| #endif
| 
|   ;
|   return 0;
| }
configure:4531: result: no
configure:4684: checking for a sed that does not truncate output
configure:4738: result: /bin/sed
configure:4752: checking for ld used by gcc
configure:4819: result: /usr/bin/ld
configure:4826: checking if the linker (/usr/bin/ld) is GNU ld
configure:4841: result: yes
configure:4846: checking for /usr/bin/ld option to reload object files
configure:4853: result: -r
configure:4871: checking for BSD-compatible nm
configure:4920: result: /usr/bin/nm -B
configure:4924: checking whether ln -s works
configure:4928: result: yes
configure:4935: checking how to recognize dependent libraries
configure:5121: result: pass_all
configure:5206: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5209: $? = 0
configure:5339: checking for ANSI C header files
configure:5359: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5359: $? = 0
configure:5432: gcc -o conftest -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c  >&5
configure:5432: $? = 0
configure:5432: ./conftest
configure:5432: $? = 0
configure:5443: result: yes
configure:5456: checking for sys/types.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for sys/stat.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for stdlib.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for string.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for memory.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for strings.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for inttypes.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for stdint.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5456: checking for unistd.h
configure:5456: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5456: $? = 0
configure:5456: result: yes
configure:5470: checking dlfcn.h usability
configure:5470: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5470: $? = 0
configure:5470: result: yes
configure:5470: checking dlfcn.h presence
configure:5470: gcc -E  conftest.c
configure:5470: $? = 0
configure:5470: result: yes
configure:5470: checking for dlfcn.h
configure:5470: result: yes
configure:5492: checking the maximum length of command line arguments
configure:5604: result: 1572864
configure:5616: checking command to parse /usr/bin/nm -B output from gcc object
configure:5721: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:5724: $? = 0
configure:5728: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ 	]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ 	][ 	]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm
configure:5731: $? = 0
configure:5783: gcc -o conftest -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1   conftest.c conftstm.o >&5
configure:5786: $? = 0
configure:5824: result: ok
configure:5828: checking for objdir
configure:5843: result: .libs
configure:5935: checking for ar
configure:5951: found /usr/bin/ar
configure:5962: result: ar
configure:6027: checking for ranlib
configure:6043: found /usr/bin/ranlib
configure:6054: result: ranlib
configure:6119: checking for strip
configure:6135: found /usr/bin/strip
configure:6146: result: strip
configure:6715: checking if gcc supports -fno-rtti -fno-exceptions
configure:6764: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  -fno-rtti -fno-exceptions conftest.c >&5
cc1: warning: command line option '-fno-rtti' is valid for C++/D/ObjC++ but not for C
configure:6768: $? = 0
configure:6750: result: no
configure:6740: checking for gcc option to produce PIC
configure:6980: result: -fPIC
configure:6988: checking if gcc PIC flag -fPIC works
configure:7062: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  -fPIC -DPIC conftest.c >&5
configure:7066: $? = 0
configure:7023: result: yes
configure:7022: checking if gcc static flag -static works
configure:7050: result: yes
configure:7060: checking if gcc supports -c -o file.o
configure:7166: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  -o out/conftest2.o conftest.c >&5
configure:7170: $? = 0
configure:7083: result: yes
configure:7109: checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries
configure:8037: result: yes
configure:8058: checking whether -lc should be explicitly linked in
configure:8063: gcc -c -O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1  conftest.c >&5
configure:8066: $? = 0
configure:8081: gcc -shared conftest.o  -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| grep  -lc  \>/dev/null 2\>\&1
configure:8084: $? = 0
configure:8096: result: no
configure:8104: checking dynamic linker characteristics
configure:8702: result: GNU/Linux ld.so
configure:8726: checking how to hardcode library paths into programs
configure:8751: result: immediate
configure:8765: checking whether stripping libraries is possible
configure:8770: result: yes
configure:9287: checking if libtool supports shared libraries
configure:9289: result: yes
configure:9292: checking whether to build shared libraries
configure:9313: result: yes
configure:9316: checking whether to build static libraries
configure:9320: result: no
configure:9415: result:
creating libtool
configure:13103: patching config.h.in
configure:13114: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by config.status, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  CONFIG_FILES    = 
  CONFIG_HEADERS  = 
  CONFIG_LINKS    = 
  CONFIG_COMMANDS = 
  $ ./config.status 

on Discovery

config.status:673: creating config.h

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

ac_cv_build=x86_64-pc-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_env_CC_set=set
ac_cv_env_CC_value=gcc
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1'
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_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_have_decl_HAVE_BUNDLED_PCRE=no
ac_cv_have_decl_HAVE_JSON=no
ac_cv_header_dlfcn_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_memory_h=yes
ac_cv_header_stdc=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_unistd_h=yes
ac_cv_host=x86_64-pc-linux-gnu
ac_cv_objext=o
ac_cv_path_EGREP='/bin/grep -E'
ac_cv_path_GREP=/bin/grep
ac_cv_path_SED=/bin/sed
ac_cv_prog_AWK=gawk
ac_cv_prog_CPP='gcc -E'
ac_cv_prog_ac_ct_AR=ar
ac_cv_prog_ac_ct_RANLIB=ranlib
ac_cv_prog_ac_ct_STRIP=strip
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes
ac_cv_target=x86_64-pc-linux-gnu
lt_cv_deplibs_check_method=pass_all
lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
lt_cv_ld_reload_flag=-r
lt_cv_objdir=.libs
lt_cv_path_LD=/usr/bin/ld
lt_cv_path_NM='/usr/bin/nm -B'
lt_cv_path_SED=/bin/sed
lt_cv_prog_compiler_c_o=yes
lt_cv_prog_compiler_pic_works=yes
lt_cv_prog_compiler_rtti_exceptions=no
lt_cv_prog_compiler_static_works=yes
lt_cv_prog_gnu_ld=yes
lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ 	]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ 	][ 	]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'''
lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/  {\"\1\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \([^ ]*\) \([^ ]*\)$/  {"\2", (lt_ptr) \&\2},/p'\'''
lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^. .* \(.*\)$/extern int \1;/p'\'''
lt_cv_sys_lib_dlsearch_path_spec='/lib /usr/lib /usr/lib/x86_64-linux-gnu/libfakeroot /usr/local/lib /usr/local/lib/x86_64-linux-gnu /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu '
lt_cv_sys_lib_search_path_spec='/usr/lib/gcc/x86_64-linux-gnu/9 /usr/lib/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib'
lt_cv_sys_max_cmd_len=1572864
lt_lt_cv_prog_compiler_c_o='"yes"'
lt_lt_cv_sys_global_symbol_pipe='"sed -n -e '\''s/^.*[ 	]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ 	][ 	]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'\''"'
lt_lt_cv_sys_global_symbol_to_c_name_address='"sed -n -e '\''s/^: \\([^ ]*\\) \$/  {\\\"\\1\\\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/  {\"\\2\", (lt_ptr) \\&\\2},/p'\''"'
lt_lt_cv_sys_global_symbol_to_cdecl='"sed -n -e '\''s/^. .* \\(.*\\)\$/extern int \\1;/p'\''"'
php_cv_cc_dashr=no
php_cv_cc_rpath=yes

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

AR='ar'
AWK='gawk'
CC='gcc'
CFLAGS='-O2 -fvisibility=hidden -Wparentheses -DZEPHIR_RELEASE=1'
CONFIGURE_COMMAND=' '\''./configure'\''  '\''--enable-tensor'\'''
CONFIGURE_OPTIONS=' '\''--enable-tensor'\'''
CPP='gcc -E'
CPPFLAGS=' -DHAVE_CONFIG_H'
DEFS='-DHAVE_CONFIG_H'
DSYMUTIL=''
ECHO='echo'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/bin/grep -E'
EXEEXT=''
GREP='/bin/grep'
LDFLAGS=''
LIBOBJS=''
LIBS=''
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
LN_S='ln -s'
LTLIBOBJS=''
NMEDIT=''
OBJEXT='o'
PACKAGE_BUGREPORT=''
PACKAGE_NAME=''
PACKAGE_STRING=''
PACKAGE_TARNAME=''
PACKAGE_URL=''
PACKAGE_VERSION=''
PATH_SEPARATOR=':'
PKG_CONFIG=''
PKG_CONFIG_LIBDIR=''
PKG_CONFIG_PATH=''
RANLIB='ranlib'
SED='/bin/sed'
SHELL='/bin/bash'
SHLIB_DL_SUFFIX_NAME='so'
SHLIB_SUFFIX_NAME='so'
STRIP='strip'
ac_ct_CC=''
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='$(prefix)'
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 HAVE_TENSOR 1
#define COMPILE_DL_TENSOR 1
#define STDC_HEADERS 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STRINGS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_UNISTD_H 1
#define HAVE_DLFCN_H 1

configure: exit 0

Since this is still an issue we will be changing the default Optimizer from AdaMax ASAP. I have also reminded the Zephir team of the issue.

This is now fixed in 74ba56a