高通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下,先解決問題。