Libraries

將共享庫列入黑名單的環境變數?

  • December 25, 2015

我遇到了 Mono 不尊重我的 fglrx libGL 庫並載入 Mesa 庫的問題。到目前為止,我一直在通過刪除或移動 Mesa 庫 (/usr/lib64/libGL.so.1.2.0) 來修復它,以便它從 ATI 目錄連結正確的驅動程序。由於移動/刪除不是永久性更改(將在包管理器更新時撤消),有沒有辦法可以將庫列入黑名單而不是刪除它?黑名單可以是臨時的/永久的/本地的/全域的;任何事情都應該有效。添加到特定違規應用程序的啟動腳本的環境變數就足夠了。我也在研究 ld.so.conf 但似乎沒有辦法忽略特定文件。

LD_PRELOAD變數看起來可以在普通情況下工作。由於某種原因,Mono 不尊重該變數,所以我最終設置LD_DEBUG=all並發現它在任何其他位置之前搜尋程序目錄。將正確的驅動程序符號連結到程序目錄可以解決問題。

引用自:https://unix.stackexchange.com/questions/251283