看到这篇文章:How do you compile a C++ program with multiple class files from OS X Terminal?,我看到用gcc编译一个带有类的项目(使用.h和.cpp)很容易,如下所示:
所有源文件的
g++列表-o executableName
它实际上对我有效,但是当我尝试使用Clang时
clang++-11 main.cpp Person.hpp Person.cpp -o main我得到:
clang: error: cannot specify -o when generating multiple output files注意:我知道如何使用Makefile,但我希望有一种在Clang中编译的快速方法,比如在gcc中。
发布于 2021-04-18 04:10:21
如果您使用头文件运行clang++-11 main.cpp Person.hpp Person.cpp -o main,则clang会注意到这一点,并编译预编译的标头" Person.pch ",默认的-o Person.pch是隐含的。同时,您希望获得另一个输出文件"main“。因此,clang抱怨不能生成多个输出文件,-o Person.pch和-o main。
预编译头应单独编译.
clang++-11 Person.hpp
clang++-11 main.cpp Person.cpp -o main第一步不是必需的,如果跳过,则不使用预编译的标头.
https://stackoverflow.com/questions/67144670
复制相似问题