PHP警告:PHP启动:无效的库(可能不是PHP库)

时间:2011-09-02 13:13:35

标签: php c++ ubuntu php-extension

过去我确实创建了一个共享库,现在我想在php扩展中使用它。有可能吗?正如我在config.m4文件PHP_NEW_EXTENSION()中看到的那样,要求.cc。问题是我不想暴露我的代码。我只想使用标题和共享库我在ubuntu下用c表示。对于php扩展,我创建了一个:config.m4, php_c.h and php_c.cc.

请帮忙! THX APPRECIATE 我确实输入了配置文件:

libs=mylib.so; 
PHP_ADD_LIBRARY_WITH_PATH(libs, $EXTERNAL_LIB_DIR, ?? what to add here);

我获得以下内容:

PHP Warning:  PHP Startup: Invalid library (maybe not a PHP library) '/home/foder/mylib.so'in Unknown on line 0

php:符号查找错误:

/usr/php5/20090626+lfs/vehicles.so: undefined symbol: _ZN3CarC1Ei (where vehicles.so) is a php so created with: phpize, ./configure --enable-vehicle make..

1 个答案:

答案 0 :(得分:16)

PHP Warning:  PHP Startup: Invalid library (maybe not a PHP library) '/home/foder/mylib.so'in Unknown on line 0

此消息表示“.so”中没有“get_module”功能。
确保PHP扩展源包含以下行:

#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#ifdef COMPILE_DL_MYLIB
ZEND_GET_MODULE(mylib)
#endif