LLVM Clang 5.0在复制初始化错误中显式

时间:2014-06-05 03:21:09

标签: c++ macos boost g++ llvm

我正在尝试在OSX上编译一个仅在Linux上测试的开源项目。

$: g++ -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-da

我正在尝试使用以下命令行选项进行编译

g++ -MMD -Wall -std=c++0x -stdlib=libc++ -Wno-sign-compare -Wno-unused-variable -ftemplate-depth=1024 -I /usr/local/Cellar/boost/1.55.0/include/boost/ -g -O3 -c level.cpp -o obj-opt/level.o

我看到几个看起来像这样的错误:

./square.h:39:70: error: chosen constructor is explicit in copy-initialization
      int strength = 0, double flamability = 0, map<SquareType, int> constructions = {}, bool ticking = false);

该项目声明以下是Linux设置的要求。我如何确认我正在制作?

gcc-4.8.2
git
libboost 1.5+ with libboost-serialize
libsfml-dev 2+ (Ubuntu ppa that contains libsfml 2: )
freeglut-dev
libglew-dev

1 个答案:

答案 0 :(得分:1)

该项目要求您使用gcc-4.8.2进行编译,但您的g ++正在使用clang,这是一个不同的编译器。

安装gcc-4.8.2或更高版本,并使用它来编译项目

$ sudo port install gcc49