Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何制作我的C++;可以在Mac上用叮当声构建代码?_C++_Gcc_Clang - Fatal编程技术网

C++ 如何制作我的C++;可以在Mac上用叮当声构建代码?

C++ 如何制作我的C++;可以在Mac上用叮当声构建代码?,c++,gcc,clang,C++,Gcc,Clang,我有一堆.cpp和.c文件,我使用gcc/make来构建一个项目。在Mac上只有GCC4.2。它非常古老,给语言带来了很多限制。我听说clang是Mac的默认编译器。如何将makefiles更改为使用clang?对于初学者来说,GCC4.2“不是很老,而且对语言有很多限制。” 也就是说,如果您的Mac安装了GCC4.2,那么它也应该安装clang。Xcode包括clang和GCC(使用LLVM构建),分别为clang和GCC/g++。要么: 将makefile更改为直接指向clang 将CC环

我有一堆.cpp和.c文件,我使用gcc/make来构建一个项目。在Mac上只有GCC4.2。它非常古老,给语言带来了很多限制。我听说clang是Mac的默认编译器。如何将makefiles更改为使用clang?

对于初学者来说,GCC4.2“不是很老,而且对语言有很多限制。”

也就是说,如果您的Mac安装了GCC4.2,那么它也应该安装
clang
。Xcode包括clang和GCC(使用LLVM构建),分别为
clang
GCC
/
g++
。要么:

  • 将makefile更改为直接指向
    clang
  • CC
    环境变量设置为
    clang
  • 如果你真的想对它感到不安,请将
    g++
    软链接到
    clang

任何人都应该这样做。

你可以尝试在makefile或doing中用CC=clang替换CC=g++ CC=叮当作响,而不是制造 看看它是否编译


如果您使用GNUC/c++扩展或gcc命令行选项,它可能无法编译,在这种情况下,您可以尝试通过谷歌搜索获得帮助

对于一个500万LOC的项目,它是。@TonyPerez:我们很多人用
g++
构建数百万条线路的项目。对大多数Tr1有支持,可以建立Boost……不清楚你真的会怎么破解它——是的,CLAN有其他的特性,但这不是断言。在多百万个LOC项目中使用G++4.1.2并没有问题。我想大小无关紧要。GCC4.2实际上非常古老。@MarcusJ:显然,这个答案已经有3年历史了。我应该为clang使用任何特殊的编译器开关吗?我对clang没有太多经验(除了从源代码构建它,以便我可以在嵌入式linux板上编译东西之外)。如果没有任何具体的原因,我想不出除了-Wall之外还有什么默认标志来启用警告?它们是否不兼容?如果这是GCC版本的问题,您可以考虑安装一个更新版本。我从macports.org获得了GCC4.7,没有任何问题。