Phi*_*lip 2 c++ pragma clang libc++ macos-sierra
尝试在 Mac OS Sierra 中编译我的软件时,我遇到了关于未知编译指示的问题(请参阅下面的代码段)。据一位同事称,该软件可以在 Mac OS X Yosemite 中编译,使用相同的 clang 版本 (4.2.1)。使用的编译标志是:-std=c++11 -stdlib=libc++. 使用stdlibc++不是一个选项,因为它不包括std::shared_ptr.
error: unknown warning group '-Wmaybe-uninitialized', ignored
[-Werror,-Wunknown-pragmas]
#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
Run Code Online (Sandbox Code Playgroud)
这是打印出来的 g++ --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin16.1.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Run Code Online (Sandbox Code Playgroud)
不确定从哪里开始,非常感谢任何输入。
而不是写作
#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
Run Code Online (Sandbox Code Playgroud)
你应该做
#if !defined(__has_warning) || __has_warning("-Wmaybe-uninitialized")
#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
#endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1495 次 |
| 最近记录: |