问题标签 [libc++]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用 clang++/libc++ 删除 Boost libstdc++ 依赖项?
这个问题的答案How to compile/link Boost with clang++/libc++? Boost
使用clang++
and构建的状态libc++
,应该执行以下操作:
我在 Scientific Linux 6.4 x86_64 主机上测试了上述技巧,它“主要”可以构建完整的 Boost 1_53_0 发行版,使用clang++ 3.3sv
和libc++ 3.3svn
. 我说的主要是因为我真的很想消除所有libstdc++
依赖。
尽管如此,以下内容:
libboost_graph
libboost_locale
libboost_regex
仍然显示libstdc++
依赖关系(ldd
输出非常明显)。我想知道删除此类的好方法,并希望有任何提示。
c++ - 为 LLVM libc++ 3.3 构建静态库和共享库
来自 SVN的最新 LLVM libc++
3.3 带有一个CMakeLists.txt
. 我是 CMake 新手,但昨天我学习到能够libc++
在 RHEL 6.4 x86_64 主机上构建签出。
此外,我能够在其中添加足够多的CPack
相关命令CMakeLists.txt
来生成libcxx-3.3.svn-0.el6.x86_64.rpm
. 但很可能由于是新手CMake
,我无法同时构建静态库和共享库。
是的。我回顾了是否可以让 CMake 构建同一库的静态和共享版本?. 但是,我不想使用add_library
and 枚举所有源文件,而是想使用libc++
's CMakeList.txt
- using所采用的方法APPEND
。
我可以通过将ON
下面的第 40 行替换OFF
为构建静态库来生成静态库
或者我可以保持原样并构建一个共享库。
我还修改了以下几行,NOT
例如删除或注释掉第 232 和 233 行。但无论我尝试了什么,我似乎都无法让静态库与共享库一起构建。
如何调整CMakeList.txt
文件以便同时构建两者?
xcode - Mac 上 libstdc++ 中的 C++11 标准库
在我目前从事的 Xcode 项目中,我使用 C++11 和 Apple LLVM 4.2 (clang) 编译器,并使用 libstdc++ 作为我的标准库,因为我使用的库 (NTL) 不是用 libc++ 编译的,并且所以我必须使用 libstdc++。
编写以下代码时:
它不编译,说:
'regex' file not found
所以我不能在我的 libstdc++ 中使用任何 C++11 库(也试过了<mutex>
)<thread>
。
我尝试采用的另一个方法是NTL
使用 cc 和 libc++ 重新编译,但这似乎没什么用。以下是产生的一些错误:
似乎配置标头以某种方式“损坏”并且 libc++ 没有<iostream.h>
旧的 c++ 标头。因此,重新编译NTL
对我来说有点麻烦。
那么,我该如何解决呢?如何在我的项目中仍然使用 libstdc++ 并拥有 C++11 库?如果这有帮助,我已经用 brew 安装了 g++-4.8。有没有办法将clang使用的libstdc++映射到新的?
c++ - 如何链接到 /usr/local/lib 上的 libc++?
我尝试过提供-L /usr/local/lib
,尝试过-nostdinc++
,尝试过设置DYLD_LIBRARY_PATH
,DYLD_FALLBACK_LIBRARY_PATH
但otool
离开给了我:
如何链接到我/usr/local/lib/libc++.dylib
在 OS X 上编译的自定义?
编译的变化是基本的clang++ -std=c++11 -stdlib=libc++
。
c++ - clang 3.2 在 std::atomic 上失败——一个 libc++ 问题?
我尝试编译简单的代码
使用 clang++ 3.2(从 llvm.org 下载为 llvm 3.2;在 mac os.x 10.8.3 上失败并出现错误
/> clang++ -std=c++11 -stdlib=libc++ -O3 -march=native -c test.cc
在 test.cc:1 中包含的文件中:
/usr/include/c++/v1/atomic:576:17:错误:原子操作的第一个参数必须是指向非 const _Atomic 类型的指针('const _Atomic(int) *' 无效)
/usr/include/c++/v1/atomic:580:53:注意:在此处请求成员函数“std::_ 1:: _ atomic_base::load”的实例化
test.cc:5:9:注意:在此处请求成员函数“std::_ 1:: _ atomic_base::operator int”的实例化
当我使用 /usr/bin/clang++ 代替(操作系统或 Xcode 附带)时,它编译得很好。在这两种情况下,libc++ 都位于 /usr/lib/c++/v1 中。
我错过了什么?llvm 3.2 中是否还有另一个 libc++,但我错过了?(我在 clang3.2 树中找不到任何东西)。
c++ - 在 ubuntu 上使用 libc++ 对“__dynamic_cast”的未定义引用
我正在尝试编译一个使用 libc++ 的测试用例,该测试用例dynamic_cast
是根据"Build on Linux using CMake and libsupc++" 编译的。
我正在使用 ubuntu 13.04 并使用clang++ -std=c++11 -stdlib=libc++
.
为什么我得到undefined reference to '__dynamic_cast'
?如何解决?
编辑
看起来它与 libc++abi 有关,因为我__dynamic_cast
在规范中看到了原型。我希望第libsupc++
一个构建选项能够在没有此类问题的情况下工作......并且尝试在 linux 上编译 libc++abi本身就是另一个问题。
这似乎与Compiling with Clang using Libc++ undefined references有关。
如果这确实是问题所在,是否有一个简单的过程可以在 linux 上使用 libc++ 来编译那个简短的代码片段,或者它只是还不支持?
ios - 带有 libc++ 的 Tesseract-OCR 3.02
Xcode 4.6、iOS SDK 6.1、tesseract-ocr 3.02
由于最后的 OpenCV 版本是使用libc++构建的,而 tesseract-ocr 是使用libstdc++构建的,因此它们不能在一个 xcode 项目中一起使用。
所以,我正在尝试使用 libc++ 构建 tesseract。使用此处的脚本(将基本 sdk 和部署目标更新到 6.1),tesseract 构建得很好,一旦 C++ 标准库设置为编译器默认值,它就可以在我的 xcode 项目中工作。然后,根据此处的答案,我尝试更改脚本以使用 libc++ 构建它。我将CXX更改为指向clang++,并将-stdlib=libc++添加到CXXFLAGS。
结果是脚本成功,并且构建了库,但是当在 xcode 中选择 libc++ 作为 C++ 标准库时,我收到很多链接器错误并且项目构建失败。当标准库设置为编译器默认值时(就像定期构建时一样),新库仍然有效。
我错过了什么?
c++ - c++ -std=c++11 -stdlib=libc++ with boost.thread给出Segmentation fault: 11 on OSX
试图运行一些示例代码。
但是意想不到的事情发生了。
我想知道关于 boost.thread 与 libc++ 一起使用有什么已知的问题吗?
-std=c++11
使用或不使用选项编译的程序运行良好。
-stdlib=libc++
但是当我用or编译时-std=c++11 -stdlib=libc++
,输出是这样的:
编译器:
Apple LLVM 版本 4.2 (clang-425.0.28)(基于 LLVM 3.2svn)
目标:x86_64-apple-darwin12.3.0
线程模型:posix
操作系统:Mac OS X 10.8.3
示例代码非常简单:
c++ - 使用 __compressed_pair 时出错
我开始在libc++ master之上实现N3558 (请参见此处),但现在我遇到了一个错误,我不明白。future
functional
无论我如何编码,它总是因__compressed_pair
错误而失败。我不知道是我遗漏了什么还是libc++
.
以下代码:
clang 3.3中的触发器:
使用gcc 4.8编译会给出更难看的错误消息,但基本相同。
任何人都可以解释一下吗?
c++ - libc++ std::istringstream 不会抛出异常。漏洞?
在将 a 配置为在设置std::istringstream
时抛出异常后,failbit
我没有发现 libc++ 发生异常(这是在 linux 下,在 libcxxrt 的支持下编译的 libc++)。我想这是 libc++ 或 libcxxrt 中的一个错误:
libstdc++ 的输出:
libc++/libcxxrt 输出:
编辑
还在 OS X 上进行了测试。
提交的错误: http://llvm.org/bugs/show_bug.cgi?id= 15949