Art*_*uro 0 c++ opencv g++ c++11
我正在尝试使用OpenCV在Linux中编译执行C++程序.
当我输入
g++ -c facedetection.cpp -std=c++11 -o facedetection
Run Code Online (Sandbox Code Playgroud)
该facedetection文件已正确生成.请注意我使用,-std=c++11因为我有一个错误建议这样做.
在chmod o+x facedetection我尝试执行它./facedetection但我得到错误:
bash: ./facedetection: cannot execute binary file: Exec format error
Run Code Online (Sandbox Code Playgroud)
怎么了?
Chr*_*ung 10
使用时编译-c,它会生成一个object(.o)文件,而不是可执行文件.您需要编译它而不是-c为了生成可执行文件.
较大的C++程序将有多个.cpp文件; 对于每个.cpp文件,您将使用编译-c来生成它们各自的.o文件.然后,您将链接这些.o文件(g++不运行-c)以生成最终的可执行文件.