你好,我正在尝试分解一个C代码库(CMake与MSVC生成器)。
我正在使用模块集并创建共享代码的库。
库正在安装输出目录中构建.lib文件,该目录包含头文件的include文件夹。(安装步骤正在复制这些文件)
问题是消费项目失去了到原始头文件和相应cpp文件的链接。这导致我们失去了一些不错的IDE特性。
例如,在Visual Studio中,Ctrl-K+O不再交换hpp/cpp。
此外,如果我们发现问题,但包含文件夹中的副本不是存储库中的真实源文件,我们希望编辑库中的头文件。
是否有一种方法可以构建一个大型C代码库,以便同时获取库和调试功能(例如了解IDE中的源文件位置)?
1条答案
按热度按时间a2mppw5e1#
我不知道Visual Studio代码是如何工作的,但是作为Visual Studio代码用户,我建议您在根目录CMakeLists.txt的顶部使用
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
,并配置您的IDE从compilation_database.json
文件加载配置。该文件为您的IDE提供了有关如何解析代码文件的最终信息。在VSCode中,我必须安装CMake-tools扩展并使用此
c_cpp_properties.json
配置文件