не может выполнить двоичный файл: Ошибка формата Exec - 64-битный файл/ 64-битный os [duplicate]

На сервере AWS Ubuntu я написал C++ Hello, World program:

#include <iostream>
using namespace std;

int main(){
        cout<<"Hello, World!"<<endl;
        return 0;
}

И скомпилировал его:

ubuntu@ip-xxxxx:~/dev/c++$ g++ -c ./test.cc -o out
ubuntu@ip-xxxxx:~/dev/c++$ chmod a+x out
ubuntu@ip-xxxxx:~/dev/c++$ ./out
-bash: ./out: cannot execute binary file: Exec format error
ubuntu@ip-xxxxx:~/dev/c++$ file ./out
./out: ELF 64-bit LSB  relocatable, x86-64, version 1 (SYSV), not stripped
ubuntu@ip-xxxxx:~/dev/c++$ uname -a
Linux ip-xxxxx 3.13.0-48-generic #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@ip-xxxxx:~/dev/c++$ gcc --version
gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4

Похоже, что архитектура x86-64 одинакова. В чем проблема? Нужно ли добавлять еще C++ флаги?

7
задан 6 November 2019 в 02:13

0 ответов

Другие вопросы по тегам:

Похожие вопросы: