C++;仅从单独的项目复制dll所需的头文件 我的C++项目依赖于一个庞大的项目。我的项目使用了来自大型项目的许多dll。安装这个庞大的项目大约需要几个小时,我想不再需要为其他人安装这个庞大的项目

C++;仅从单独的项目复制dll所需的头文件 我的C++项目依赖于一个庞大的项目。我的项目使用了来自大型项目的许多dll。安装这个庞大的项目大约需要几个小时,我想不再需要为其他人安装这个庞大的项目,c++,dll,dependencies,header-files,C++,Dll,Dependencies,Header Files,经过研究,我了解到有两种方法可以使用dll编译和链接:1)使用lib和header。 2) 使用loadlibary方法 在loadlibrary方法中,我需要确切地知道需要加载的方法。因为我不知道这一点,我选择了选项1。如果我错了,请纠正我 目前,我已经在编译器附加依赖项配置选项中包含了大项目的路径。我想与我的团队共享包含的标题。这个大项目有很多我的依赖DLL不使用的头文件。我尝试复制所有的标题,但有些.cpp直接使用,没有任何标题 有没有办法只复制大型项目所需的头文件?可能会自动使用较少的手

经过研究,我了解到有两种方法可以使用dll编译和链接:1)使用lib和header。 2) 使用loadlibary方法

在loadlibrary方法中,我需要确切地知道需要加载的方法。因为我不知道这一点,我选择了选项1。如果我错了,请纠正我

目前,我已经在编译器附加依赖项配置选项中包含了大项目的路径。我想与我的团队共享包含的标题。这个大项目有很多我的依赖DLL不使用的头文件。我尝试复制所有的标题,但有些.cpp直接使用,没有任何标题


有没有办法只复制大型项目所需的头文件?可能会自动使用较少的手动工作。目前,标头和cpp大约为1gb,我无法通过github共享。如果我不能复制标题,我是否可以自动将所有依赖项定义生成一个文件并使用它?请告诉我处理这种情况的标准方法是什么

您可以动态生成并链接到库(dll)

要做到这一点,你需要

  • 使用编译器-I参数
    -IC:\path\
    包含包含.h文件的文件夹
  • 使用linker-L参数链接到包含dll的文件夹
    -LC:\path\

lib必须使用相同的编译器和相同的平台编译

您的构建系统/编译器不应该自动跟踪头吗?如果您使用的是CMake,则应对此进行跟踪。作为一个makefile,您应该能够通过
gcc-E
列出包含的标题。