【发布时间】:2021-04-25 13:40:26
【问题描述】:
为一个非常基本的问题道歉。我正在尝试从 CMake 项目移植到 Visual Studio 项目中。
基本上我想在不使用 CMake 文件的情况下从 Visual Studio 运行项目。在我需要移植的项目中,有许多文件夹和子文件夹,其中包含许多 .cpp 和 .h 文件。这些包含在主 cpp 文件中,使用 #includes。
我的情况
还有我的 main.cpp
例如,为了简单起见,假设我有一个主文件 main.cpp,这个文件包括#include "Libpfs/colorspace/colorspace.h"。 Libpfs 是一个文件夹,它有许多子文件夹,其中一个是颜色空间文件夹,它有许多 .h 和 .cpp 文件。一个 .h 文件是 colorspace.h,它使用 #include 包含在 main.cpp 中,该文件夹也有 .cpp 文件,即 colorspace.cpp。
我的尝试
我的目标是将它们包含在我的项目中。 现在这是我尝试过的 在 Visual Studio Project->properties->C/C++ in Additional Include Directories 我给出了包含 Libpfs 的文件夹,但这种方法不起作用并给出链接器错误,这可能是因为我没有 Libpfs 的 lib 文件(如果我错了,请纠正我)。我只有相应 .h 文件的 .cpp 文件。我认为错误的原因是 .cpp 文件尚未编译。
我的问题
如何将 cpp 文件也包含到我的项目中(不是 lib 文件,因为我没有这些文件)。
【问题讨论】:
-
通常不应包含库的 cpp 文件,而应链接到已编译的 .so .lib .dll 左右。如果设置包含路径,请使用
#include <bar/foo.h>。附:一个好的库应该有一个单独的“包含”目录,只有标题.. -
只需将 cpp 文件添加到项目中,它们就会被编译和链接
-
谢谢@JHBonarius。但是如果我没有 .lib 或 .so 或 .dll 怎么办?
-
@AlanBirtles 这是否意味着我需要将第 3 方库的每个 .cpp 文件添加到项目中?
-
您是否尝试过“右键单击解决方案资源管理器中的项目/添加/现有项...”以将所有 cpp 文件和 h 文件添加到您的项目中?这是正常的做法。
标签: c++ visual-studio visual-c++ cmake