链接器找不到 header 文件的 .cpp 实现 (MSVC)
Linker cant find .cpp implementation of a header file (MSVC)
我正在尝试使用 MSVC 编译器 (cl.exe) 构建项目,
命令是
start /b /wait "" "cl.exe" %build_options% %compile_flags% ..\src\win32_main.cpp /link /LIBPATH:..\src\ %link_flags% /out:%application_name%
我已将 LIBPATH 设置为我的 header 的 cpp 实现所在的位置,但我得到的只是一个未解析的外部。
请注意,我没有问题 运行 我的项目没有 cpp 文件(意味着所有内容都在 header 中,包含在我的 main 中并在那里工作,问题是链接器无法找到实现.h 文件)。
任何帮助将不胜感激,谢谢!
my files are structured like so
您遇到的直接问题是您需要 link *.obj
文件,或者可能 *.lib
从这些 .obj
文件构建的文件,但绝对不是 .cpp
个文件。
我建议您坚持使用 Visual Studio。你的问题的根本原因是你在重新发明轮子。 MSVC 编译器旨在由构建环境调用。
我正在尝试使用 MSVC 编译器 (cl.exe) 构建项目, 命令是
start /b /wait "" "cl.exe" %build_options% %compile_flags% ..\src\win32_main.cpp /link /LIBPATH:..\src\ %link_flags% /out:%application_name%
我已将 LIBPATH 设置为我的 header 的 cpp 实现所在的位置,但我得到的只是一个未解析的外部。 请注意,我没有问题 运行 我的项目没有 cpp 文件(意味着所有内容都在 header 中,包含在我的 main 中并在那里工作,问题是链接器无法找到实现.h 文件)。
任何帮助将不胜感激,谢谢! my files are structured like so
您遇到的直接问题是您需要 link *.obj
文件,或者可能 *.lib
从这些 .obj
文件构建的文件,但绝对不是 .cpp
个文件。
我建议您坚持使用 Visual Studio。你的问题的根本原因是你在重新发明轮子。 MSVC 编译器旨在由构建环境调用。