考虑到以下情况,我很难找到在Visual Studio(即2015)中设置依赖关系的正确方法:
我有两个项目:
在此阶段,Engine项目成功编译。
我希望Game项目也可以工作,但是当我尝试使用简单的main.cpp编译这个项目时,编译器会显示此错误(引用Engine项目中的文件):
- 错误C1083无法打开包含文件:' GL / glew.h':没有这样的文件或目录
我不想包含opengl,glew和glfw库以及将目录包含到我的Game项目中,因为用户不应该访问此API。
那么......实现这个目标的正确方法是什么(越简单越好)?
提前致谢
答案 0 :(得分:0)
将静态库链接到同一解决方案中的另一个项目的步骤:
将Engine
项目设为库(如果尚未存在)。建立它。
右键单击您的解决方案或其中一个项目,然后转到Build dependencies -> Project dependencies
。在下拉列表中选择您的Game
项目,然后选中Engine
旁边的框。这将让编译器知道Game
无法在没有Engine
的情况下启动。
转到"Game" project properties -> C/C++ -> General -> Additional include directories
,确保您在此处拥有Engine
项目标题文件的位置。
转到C/C++ -> Code Generation
,确保两个项目在调试和发布时使用相同的运行时库。
转到"Game" Project properties -> Linker
并将其他项目的lib文件的位置放在此处。
转到Linker -> Input
添加Engine.lib
或同等的此列表。
您应该有一个链接到库的项目。如果这没有帮助,请回复我的回复。