2
我已經安裝了一個R包,但要通過library
加載它,需要將LD_LIBRARY_PATH設置爲其中一個庫(稱爲libhts.so.2
)所在的路徑。只有在進入R之前編輯LD_LIBRARY_PATH時,加載才起作用,不在之後。從R內部設置LD_LIBRARY_PATH
我曾試圖解決這個幾種不同的方法:
- 出口從位於在R包
configure
腳本修改LD_LIBRARY_PATH。 - 在同一個
configure
腳本中創建到共享庫的軟鏈接。
兩者都有不工作,在我看來,有一次R爲啓動該存儲LD_LIBRARY_PATH結果的變量。也許解決方案正在編輯該變量。
從'R'內調用'Sys.setenv(LD_LIBRARY_PATH =「/ path/to/blah」)'會改變任何未來子進程的環境,但不會改變'R'本身的環境(可以用' ps e')。儘管如此,[本文](http://r.789695.n4.nabble.com/R-seems-to-mangle-LD-LIBRARY-PATH-td4686672.html)似乎表明它有所作爲,所以你可以試試看。 –
..或者更確切地說是'Sys.setenv(LD_LIBRARY_PATH = paste(「/ path/to/blah」,Sys.getenv(「LD_LIBRARY_PATH」),sep =「:」))'爲了不打破現有路徑 –
Setting環境變量起作用!但是,加載的庫不起作用... – Crt