程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 錯誤解決:error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory,errorwhileloading

錯誤解決:error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory,errorwhileloading

編輯:關於PHP編程

錯誤解決:error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory,errorwhileloading


執行以下代碼,生成唯一的UID

$fp = popen("/xxx/bin/tools/uuidgen system", "r");//
$uid = fread($fp, 40960);
pclose($uid);

問題:返回結果$uid為空。實際上執行popen函數後能夠返回內容 resource(39) of type (stream)

 

resource popen ( string $command , string $mode ) 參數:$command 命令,$mod 模式。

打開一個指向進程的管道,該進程由派生給定的 command 命令執行而產生。

如果未找到要執行的命令,會返回一個合法的資源,它允許訪問shell返回的任何錯誤信息。

/* 加入重定向以得到標准錯誤輸出 stderr。 */

$fp = popen("/xxx/bin/tools/uuidgen system 2>&1", "r");

這樣,會看到輸出錯誤  error while loading shared libraries: libcurl.so.4: cannot open  shared object file: No such file or directory

表示系統不知道libcurl.so放在哪個目錄下。

 

解決辦法:

在/etc/ld.so.conf中加入libcurl.so所在的目錄。

一般so檔案會在/usr/local/lib這個目錄下(用戶可以自定義目錄),所以在/etc/ld.so.conf中加入/usr/local/lib(或用戶自定義的目錄)這一行,

最後,保存/etc/ld.so.conf,執行命令[root@www]# /sbin/ldconfig -v才能生效。

 

參考:http://blog.csdn.net/kangear/article/details/9141481

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved