高通ar9531上面,openwrt1806这个版本,通过opkg安装了官方的php及其扩展,但新的板子php启动的时候报了warning,没有太仔细看,但是后面运行cgi程序时,发现了问题,回头看warning日志:
PHP Warning: PHP Startup: Unable to load dynamic library 'curl.so' (tried: /usr/lib/php/curl.so (Error loading shared library /usr/lib/php/curl.so: No such file or directory), /usr/lib/php/curl.so.so (Error loading shared library /usr/lib/php/curl.so.so: No such file or directory)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'iconv.so' (tried: /usr/lib/php/iconv.so (Error loading shared library /usr/lib/php/iconv.so: No such file or directory), /usr/lib/php/iconv.so.so (Error loading shared library /usr/lib/php/iconv.so.so: No such file or directory)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'json.so' (tried: /usr/lib/php/json.so (Error loading shared library /usr/lib/php/json.so: No such file or directory), /usr/lib/php/json.so.so (Error loading shared library /usr/lib/php/json.so.so: No such file or directory)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'mbstring.so' (tried: /usr/lib/php/mbstring.so (Error loading shared library /usr/lib/php/mbstring.so: No such file or directory), /usr/lib/php/mbstring.so.so (Error loading shared library /usr/lib/php/mbstring.so.so: No such file or directory)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'session.so' (tried: /usr/lib/php/session.so (Error loading shared library /usr/lib/php/session.so: No such file or directory), /usr/lib/php/session.so.so (Error loading shared library /usr/lib/php/session.so.so: No such file or directory)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'simplexml.so' (tried: /usr/lib/php/simplexml.so (Error loading shared library /usr/lib/php/simplexml.so: No such file or directory), /usr/lib/php/simplexml.so.so (Error loading shared library /usr/lib/php/simplexml.so.so: No such file or directory)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'zip.so' (tried: /usr/lib/php/zip.so (Error loading shared library /usr/lib/php/zip.so: No such file or directory), /usr/lib/php/zip.so.so (Error loading shared library /usr/lib/php/zip.so.so: No such file or directory)) in Unknown on line 0
php的扩展找不到库文件,比较奇怪,去对应的路径下看了一下
root@xxxxx:/usr/lib/php# ls
extensions
果然没有库,但有一个extensions的扩展文件夹,进去果然发现了需要的扩展库:
root@xxxxx:/usr/lib/php/extensions/no-debug-non-zts-20170718# ls
curl.so iconv.so json.so mbstring.so session.so simplexml.so zip.so
猜测应该是手动安装的扩展都装到这个路径下了,而系统编译php的时候默认是将扩展装到/usr/lib/php下,不管那么多了,先直接把库考到对应的路径/usr/lib/php下,先解决问题。