当我从Xcode4.6运行以下代码片段时,它可以编译并运行良好。但是当我尝试使用命令行工具(clang )编译它时,它失败了。
#include <iostream>
#include <memory>
int main(int argc, const char * argv[])
{
std::unique_ptr<int> foo(new int(0));
// insert code here...
std::cout << "Hello, this is cool giri World!\n";
return 0;
}
这里是编译日志:
$ clang --version Apple LLVM version 4.2 (clang-425.0.24) (based on LLVM 3.2svn) Target: x86_64-apple-darwin12.2.0 Thread model: posix $ clang++ main.cpp -stdlib=libc++ -I /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/c++/4.2.1/ -I /usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin11/4.2.1/include/ main.cpp:7:10: error: no member named 'unique_ptr' in namespace 'std' std::unique_ptr foo(new int(0)); ~~~~~^ main.cpp:7:24: error: expected '(' for function-style cast or type construction std::unique_ptr foo(new int(0)); ~~~^ main.cpp:7:26: error: use of undeclared identifier 'foo' std::unique_ptr foo(new int(0)); ^ 3 errors generated.
确保为编译器和链接器调用的是clang
,而不是clang
。
clang
(作为编译器)需要-std=c 11
和-stdlib=libc
编译器标志,并且clang
(作为链接器)需要-stdlib=libc
链接器标志。
您可以亲自查看命令行Xcode使用了什么。
尝试使用clang自己的标准库:
clang -std=c++11 -stdlib=libc++++ main.cpp
默认是GNU的标准库(< code>libstdc ),但是苹果附带的版本相当旧,不支持C 11。
默认情况下, 只要有任务调用失败, Gradle就会中断执行. 这可能会使调用过程更快, 但那些后面隐藏的错误就没有办法发现了. 所以你可以使用 --continue 选项在一次调用中尽可能多的发现所有问题. 采用 --continue 选项, Gralde 会调用每一个任务以及它们依赖的任务. 而不是一旦出现错误就会中断执行.所有错误信息都会在最后被列出来. 一旦某个任务执行失败,那么所有依赖于
我试图生成和测试我的代码(如果有效)的cucumber - Maven报告,然后打开命令提示符。我尝试过“mvn干净”,这是构建成功。之后,我尝试了“mvn安装”并遇到了构建失败(显示错误)。 这是我的pom.xml:
有人能帮我解决这个错误吗? 我把ADS放在我的项目中,当我尝试将我的项目构建到Android时,我得到了这个错误。 但是,如果我将ADS脱机,那么错误就会消失。 命令调用失败:Gradle 构建失败。C:/Program Files/Java/jdk1.8.0_45\bin\java.exe -classpath “E:\unity 5\Editor\Data\PlaybackEngines\An
问题内容: 命令 : 下面的Dockerfile: 在最后一行失败(./configure …) 如果我删除了最后一行并在容器中运行了bash,然后手动执行了最后一行,那么它将起作用。 我希望将命令添加到Dockerfile中(由RUN前缀)后,在容器中成功运行的任何命令都应该起作用 我错过了什么吗? 问题答案: pwd在RUN命令中不是持久的。您需要在同一RUN中进行cd和配置。 这个Docke
我正在做一个对我来说很新的项目,但已经有一段时间了。
当我在命令行中运行TestNG时,抛出异常: c:\test>java org.testng.testng testng.xml线程“main”java.lang.noClassDefounderror:com/beust/jcommander/parameterexception在java.lang.class.getDeclaredMethods0(本机方法)在java.lang.class.