Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为unix可执行文件外部的库指定路径_Python_Unix_Path_Dyld - Fatal编程技术网

Python 为unix可执行文件外部的库指定路径

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对

我下载了一个unix可执行文件“gtselect”,用于分析科学数据。这是包含安装说明的更大工具包的一部分,可以从当前工作目录调用“gtselect”

当我刚刚运行“gtselect”时,一切都按预期工作

然后我使用一个python脚本“gt_apps.py”,它使用GtApp将工具包装为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