jon*_*opf 5 python dll subprocess
我正在尝试使用 python 脚本中的以下代码从 python 生成一个子进程:
p = subprocess.Popen(['./appleseed.cli', '--version'])
Run Code Online (Sandbox Code Playgroud)
问题是该命令依赖于共享库,因此出现以下错误
./appleseed.cli: error while loading shared libraries: libappleseed.so: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我在系统中有主要的二进制文件,PATH
也有 lib ,LD_LIBRARY_PATH
但这似乎没有帮助。这些设置在~/.bash_profile
.
有趣的是,如果我在交互式 python 会话中运行相同的代码,它也可以工作,同时也将命令指定为appleseed.cli
没有./
工作。
我正在运行 ubuntu 和 python 2.7
这是我正在使用的完整 python 文件:
import argparse
import subprocess
def print_appleseed_version(args):
p = subprocess.Popen(['./appleseed.cli', '--version'])
def main():
# Parse the command line.
parser = argparse.ArgumentParser()
parser.add_argument("-t", "--tool-path", metavar="tool-path")
args = parser.parse_args()
print_appleseed_version(args)
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
我从命令行运行此代码,如下所示:
sudo python ../test.py -t appleseed.cli
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1937 次 |
最近记录: |