Python 为unix可执行文件外部的库指定路径
我下载了一个unix可执行文件“gtselect”,用于分析科学数据。这是包含安装说明的更大工具包的一部分,可以从当前工作目录调用“gtselect” 当我刚刚运行“gtselect”时,一切都按预期工作 然后我使用一个python脚本“gt_apps.py”,它使用GtApp将工具包装为python对象Python 为unix可执行文件外部的库指定路径,python,unix,path,dyld,Python,Unix,Path,Dyld,我下载了一个unix可执行文件“gtselect”,用于分析科学数据。这是包含安装说明的更大工具包的一部分,可以从当前工作目录调用“gtselect” 当我刚刚运行“gtselect”时,一切都按预期工作 然后我使用一个python脚本“gt_apps.py”,它使用GtApp将工具包装为python对象 from GtApp import GtApp filter = GtApp('gtselect') 然后使用另一个脚本“run.py”将gtselect作为python对
from GtApp import GtApp
filter = GtApp('gtselect')
然后使用另一个脚本“run.py”将gtselect作为python对象调用并运行它:
import gt_apps
gt_apps.filter.run()
当我运行此命令时,我收到错误消息
dyld: Library not loaded: libdataSubselector.dylib
Referenced from: path/bin/gtselect
Reason: image not found
现在,它正在尝试加载的库位于
path/lib/libdataSubselector.dylib
我试过了
export DYLD_LIBRARY_PATH = path/lib/
但同样的错误依然存在
有什么建议吗?谢谢如果将该“库”复制到当前工作目录中,错误是否得到解决?不,谢谢,但恐怕我已经尝试过了。从技术上讲,我有两个“库”的副本,一个在文件夹“bin”中,与gtselect可执行文件的位置相同,一个在文件夹“lib”中,但两个副本都没有被似乎坚持自己搜索的可执行文件获取?!我写的是“当前工作目录”,而不是
/path/bin
文件夹。啊,对不起,我错了!好的,这看起来现在可以工作了,但是一个不同的错误出现在不同的库中。除了将每个库复制到我当前的工作目录之外,还有什么方法可以做到这一点吗?谢谢这仅仅是为了测试问题的症结所在。这并不是一个永久的解决办法。显然,应用程序要么不考虑环境变量,要么更不可能为该过程设置。请注意,环境路径不应指向库文件,而应指向包含库的一个或多个文件夹。因此,请尝试这样做:export-DYLD\u-LIBRARY\u-PATH=PATH/lib/:$DYLD\u-LIBRARY\u-PATH;路径/bin/gtselect