gpt4 book ai didi

c++ - 使用预编译 header 减少 clang 编译时间

转载 作者:太空狗 更新时间:2023-10-29 21:41:24 29 4
gpt4 key购买 nike

我正在开发一个数据库项目,该项目将查询(以某种高级语言表示)编译成 C++ 代码。此代码由数据库编译和执行。那部分工作得很好。

现在,我正在尝试减少 C++ 查询代码的编译时间。我想知道是否可以使用预编译头文件来提高性能。

查询被翻译成一个名为 Query.cpp 的文件,其中包括 library/src/Database.hpp。 Database.hpp 文件包括更多文件,如 StandardTypes.hpp 等。我可以预编译所有这些头文件以加速 Query.cpp 的编译吗?如果是,我该怎么做?到目前为止,我找不到任何关于预编译头文件的好例子,只有一些非常基本的东西。

我使用以下命令来编译 Query.cpp:

clang++ -fPIC -std=c++11 Query.cpp -I./library/src/ -shared -o libquery.so;

最佳答案

要创建预编译的 header ,请将您未更改为 Query.h 的所有 header 包括在内并使用:

clang -cc1 Query.h -emit-pch -o Query.h.pch

使用预编译头类型:

clang -cc1 -include-pch Query.h.pch Query.cpp -shared -o libquery.so;

Query.cpp 需要包含Query.h

关于c++ - 使用预编译 header 减少 clang 编译时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28868049/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com