再一次,典型的问题是:“无法运行可执行文件”。
我在该Ubuntu上安装了Virtual Box版本:4.2.16。
我用命令编译了几个fotran代码(也许应该注意的是,我当时要求安装gfortran,所以我这样做了。):
gfortran -o iri iritest.for irisub.for irifun.for iritec.for iridreg.for igrf.for cira.for iriflip.for
我收到了一些警告,但没有错误。然后我写了. iri
,得到了:
bash: . : iri: cannot execute binary file
当我在本页上阅读许多有关A / Q的信息时,这里是有用的信息:
uname -a
Linux pavel-VirtualBox 3.5.0-43-genereic #66~precise1-Ubuntu SMP Thu Oct 24 14:55:08 UTC 2013 i686 i686 i 386 GNU/Linux
文件iri
iri: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (used shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xac4e2cda297fb7fc0dbea9bff7c88dfdb417c297, not stripped
文件/ bin / bash
/bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (used shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x64552078250a29637d1678751065aa4b5ee35222, not stripped
我也尝试过chmod +x iri
并得到相同的结果。但是我认为这是不必要的,因为之前的ls -l输出是:
-rwxrwxr-x 1 pavel pavel 1170853 Nov 10 13:30 iri
我也将文件发送到Windows,当然,它不知道如何处理。由于文件和操作系统规范相同,所以我不知道为什么Ubuntu拒绝执行该文件。你有想法吗?
要执行当前目录中的二进制文件(而不是可执行文件路径中的二进制文件),正确的语法是
./iri
(请注意/
)。您给出的命令(在.
和文件名之间有一个空格)尝试在当前shell中将文件作为脚本来源-请参见help source
$ . hello
bash: .: hello: cannot execute binary file
$
$ ./hello
Hello world!
$
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句