2016-03-21 34 views
0

我想與Linux上的Anjuta一起工作。得到擴展描述fromn dlerror()

我創建了一個包含一些.a和.so庫的項目,然後編譯它。編譯成功。

由於dlopen()只能在安裝時才加載.so庫,所以我運行了「make install」。安裝成功了。

然後我嘗試在Anjuta內部運行程序。但是,我收到一個錯誤,其中一個庫無法找到。該消息來自dlerror()調用。

只是爲了確保我在「/ usr/local/lib」上做了「ls -la」,並且庫在那裏。不過,我懷疑有一些其他.so庫缺少依賴。

所以我的問題是:

  1. 是我的懷疑是否正確?
  2. 如果是 - 給予更有意義的信息會更合適嗎? (這實際上是一個修辭問題)
  3. 如果1是正確的,有沒有辦法找到我缺少的庫依賴項?

在此先感謝您。

回答

0

我懷疑是否正確?

可能。

如果是 - 給予更有意義的信息會更合適嗎? (這實際上是一個反問的問題)

不,給你任何你沒有要求的信息是不合適的。通過致電dlerror獲取此類信息,即您的工作。

如果1是正確的,有沒有辦法找到我缺少的庫依賴項?

是:檢查dlopen失敗時調用dlerror的結果。

在Linux上,在環境中設置LD_DEBUG=libs也可能提供線索。

相關問題