3
我想開發一個擴展,這取決於外部共享庫。我目前的問題是,我無法將此共享庫鏈接到我的擴展。php自定義c擴展與外部共享庫
我的開發環境是Fedora Linux x64 + PHP 5.4。這個外部共享庫是專有的,我只有它的頭文件(.h)和.so文件(對於32位和64位)。
該項目目前的config.m4文件如下:
PHP_ARG_WITH(projectname,
[Whether to enable ProjectName support],
[ --with-projectname enable ProjectName support])
if test "$PHP_PROJECTNAME" != "no"; then
PHP_ADD_LIBRARY_WITH_PATH(externallib, lib64, PROJECTNAME_SHARED_LIBADD)
AC_DEFINE(HAVE_PROJECTNAME, 1, [Whether you have ProjectName])
PHP_NEW_EXTENSION(projectname, projectname.c, $ext_shared)
fi
這裏的問題是每次運行./configure --with-projectname
生成的文件也不具有對庫的任何參考時間,再加上編譯.so文件失敗(明顯)。
如果我有一種方法根據體系結構確定正確的lib目錄,這也會很有用。