Есть сервер на
Код: Выделить всё
FreeBSD 11.2-RELEASE-p3 FreeBSD 11.2-RELEASE-p3 #0
root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
загрузил в ядро
Код: Выделить всё
15 1 0xffffffff82b8e000 31e50 linux64.ko
16 1 0xffffffff82bc0000 2d28 linux_common.ko
Код: Выделить всё
linux_base-c7
Код: Выделить всё
ORACLE_HOME=/usr/local/oracle/instantclient_11_2
LD_LIBRARY_PATH=/compat/linux/lib64:/usr/local/lib:/usr/local/oracle/instantclient_11_2
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin:/usr/local/oracle/instantclient_11_2
Проверил возможность подключения к базе при помощи родной утилиты от Ораклы SQLPlus, всё заработало без проблем.
Пришло время собирать из исходников сам php73. Для начала сконфигурировал всё по умолчанию:
Код: Выделить всё
./configure
./make
./make test
...
=====================================================================
TEST RESULT SUMMARY
---------------------------------------------------------------------
Exts skipped : 49
Exts tested : 26
---------------------------------------------------------------------
Number of tests : 16122 10739
Tests skipped : 5383 ( 33.4%) --------
Tests warned : 0 ( 0.0%) ( 0.0%)
Tests failed : 69 ( 0.4%) ( 0.6%)
Expected fail : 36 ( 0.2%) ( 0.3%)
Tests passed : 10634 ( 66.0%) ( 99.0%)
---------------------------------------------------------------------
Time taken : 415 seconds
=====================================================================
Код: Выделить всё
./configure --with-oci8=instantclient,/usr/local/oracle/instantclient_11_2 --enable-opcache=no
Код: Выделить всё
/usr/bin/ld: warning: libnnz11.so, needed by /usr/local/oracle/instantclient_11_2/l
ibclntsh.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libdl.so.2, needed by /usr/local/oracle/instantclient_11_2/li
bclntsh.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libm.so.6, needed by /usr/local/oracle/instantclient_11_2/lib
clntsh.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libpthread.so.0, needed by /usr/local/oracle/instantclient_11
_2/libclntsh.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libnsl.so.1, needed by /usr/local/oracle/instantclient_11_2/l
ibclntsh.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libc.so.6, needed by /usr/local/oracle/instantclient_11_2/lib
clntsh.so, not found (try using -rpath or -rpath-link)
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `snzdafn_
assemble_filename'
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `geteuid@
GLIBC_2.2.5'
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `memcmp@G
LIBC_2.2.5'
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `strdup@G
LIBC_2.2.5'
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `lseek64@
GLIBC_2.2.5'
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `sigactio
n@GLIBC_2.2.5'
/usr/local/oracle/instantclient_11_2/libclntsh.so: undefined reference to `nztwClos
eWallet'
...
Код: Выделить всё
ldd libclntsh.so
libclntsh.so:
libnnz11.so => /usr/local/oracle/instantclient_11_2/libnnz11.so (0x803a000
00)
libdl.so.2 => /compat/linux/lib64/libdl.so.2 (0x803dcd000)
libm.so.6 => /compat/linux/lib64/libm.so.6 (0x803fd1000)
libpthread.so.0 => /compat/linux/lib64/libpthread.so.0 (0x8042d3000)
libnsl.so.1 => /compat/linux/lib64/libnsl.so.1 (0x8044ef000)
libc.so.6 => /compat/linux/lib64/libc.so.6 (0x804708000)
libaio.so.1 => /compat/linux/lib64/libaio.so.1 (0x800643000)
ld-linux-x86-64.so.2 (0x804acb000)
Библиотека рассчитана на Линукс, пробовал делать
Код: Выделить всё
brandelf -t FreeBSD libclntsh.so