gpt4 book ai didi

c++ - 在 Linux 上运行 C++ 可执行文件

转载 作者:太空宇宙 更新时间:2023-11-04 14:47:53 25 4
gpt4 key购买 nike

我正在尝试使用 OpenCV 在 Linux 中编译并执行 C++ 程序。

当我打字时

g++ -c facedetection.cpp -std=c++11 -o facedetection

正确生成了facedetection文件。请注意,我使用 -std=c++11 因为我有一个错误建议这样做。

完成 chmod o+x facedetection 后,我尝试使用 ./facedetection 执行它,但出现错误:

bash: ./facedetection: cannot execute binary file: Exec format error

怎么了?

最佳答案

当您使用-c 进行编译时,它会生成一个对象(.o) 文件,而不是可执行文件。您需要在不使用 -c 的情况下编译它以生成可执行文件。

较大的 C++ 程序会有多个 .cpp 文件;对于每个 .cpp 文件,您将使用 -c 进行编译以生成它们各自的 .o 文件。然后您将链接这些.o 文件(运行g++ 而不使用-c)以生成最终的可执行文件。

关于c++ - 在 Linux 上运行 C++ 可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35275423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com