0

これは、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

理解できません。それは実行可能です。起動しても表示されないのはなぜですか。

4

4 に答える 4

4

x86_32 ビットの実行可能ファイルを実行しています(ちなみに、コメントd8にもかかわらず)。(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 用にビルドします。

于 2013-08-04T13:02:17.120 に答える
0

ファイル「support/d8/d8」に存在しない「強打線」がある場合、このエラーが発生します

$ 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

于 2013-08-04T13:08:34.690 に答える
0

これを試してみませんか:

 os.system("./support/d8/d8 --trace_exception with a bunch of files");

./ の実行中に同様の問題が発生しましたが、ある程度必要です。

于 2013-08-04T13:02:10.550 に答える