这发生在python构建中:
#is it executable
print os.access("support/d8/d8", os.X_OK)
#is it there in the shell
os.system("test -f support/d8/d8 && echo \"found\" || echo \"not found\"")
然后:
#run it
os.system("support/d8/d8 --trace_exception with a bunch of files");
输出:
True
found
sh: 1: support/d8/d8: not found
我不明白。它在那里是可执行的。当我开始它时为什么不存在。
m
答案 0 :(得分:3)
您正在运行x86_32位可执行文件d8
(顺便说一下,comment尽管如此)。如果(Travis)系统是x64,和/或没有所有x86_32库
linux-gate.so.1
libpthread.so.0
libstdc++.so.6
libm.so.6
libgcc_s.so.1
libc.so.6
然后可执行文件将无法运行,因为加载程序无法找到所有必需的库。静态构建和/或x64。
答案 1 :(得分:0)
你为什么不试试这个:
os.system("./support/d8/d8 --trace_exception with a bunch of files");
我有一个类似的问题,而执行./是一些需要的方法。
答案 2 :(得分:0)
如果您的文件“support / d8 / d8”中不存在“bang line”,则会出现此错误
$ cat support/d8/d8
#!/usr/bin/thisdoesnotexist
echo "hello"
$ chmod 755 support/d8/d8
$ python
Python 2.7.3 (default, Apr 10 2013, 06:20:15)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.system("support/d8/d8 --wer")
sh: 1: support/d8/d8: not found
32512