用GCC预编译STL
Precompiled STL with GCC
有一段代码包含了很多标准库头文件。代码位于一个文件中,我不能在该项目中创建任何其他c++源文件(原文如此)。我想使用预编译的头文件来提高构建过程的性能。有两个问题
- 试图在
vector
上使用此指南,我有file format not recognized
错误。我应该设置哪些标志来显示gcc
,这是一个头文件? - 官方指南中有一句话说"在特定的编译中只能使用一个预编译的头文件"。我如何一次预编译几个头呢?
(任何批处理/shell脚本也赞赏)
您是否忘记使用-x选项来编译文档中所述的预编译头文件?接下来,如果您想要预编译标准库的模板——这是不可能的。使用c++ 11,您可以显式地在特定的翻译单元中为某些类型参数实例化一些模板。在预编译头文件中,你可以指定
extern template void foo<char>(...)
如果你试图对模板使用预编译的头文件,那么它们的用途是什么?你的预编译头必须是一组其他包括/宏定义/内联函数和其他所有可以安全地包含在多个翻译单元中的内容。然而,每个库/二进制文件只有一个预编译头文件
相关文章:
- 为什么包含任意 STL 标头可以解决这些编译错误?
- 为什么这C++ STL 代码在编译中失败
- 在Visual Studio 2013中编译的STL列表代码在Visual Studio 2019中给出了错误.想知道原
- STL unordered_map编译错误
- Visual Studio 中(基于字符的)STL(流)容器的编译错误
- 为什么Visual Studio 2015在Juce存在时无法编译带有"noexcept"的STL库?
- 提升元组和 stl 向量编译错误
- 在 STL 中使用映射获取编译错误C++
- 使用与Application.mk中定义的STL不同的STL编译android ndk模块
- 当我使用 STL 在 Linux 上编译 C++ 程序时,STL 库是如何链接的
- 在安卓上编译需要 stl 的库
- 对具有不可复制值的 stl 容器使用提升序列化时出现编译错误
- CUDA - STL 向量在传递给使用 nvcc 编译的类时损坏
- 如何使用自定义 Makefile 编译 STL C++ for Android
- c++:stl哈希编译问题
- 传递参数pack来替换stl函数会导致编译错误
- 切换到c++ 11时,是否需要重新编译所有在接口中使用STL的依赖库?
- 用GCC预编译STL
- c++ stl映射编译问题与GCC/代码块
- arm linux androidabi stl编译错误