visual-studio-2005 - 项目中不能包含静态库

标签 visual-studio-2005 lnk2019

我正在 MS Visual Studio 2005 的解决方案中开发一个子项目。该子项目是一个 Windows CE 6.0 服务(作为 DLL),它包含在 Windows CE 6.0 操作系统项目中。在子项目中,我需要使用“ceosutil.lib”中的一些函数(svsutil.hxx 是 header ),但我无法将其链接到我的子项目。构建时,我收到以下类型的错误:“错误 LNK2019:无法解析的外部符号”。

有趣的是,当我将项目类型切换为静态库时,它编译没有问题。如果我启动一个新的 DLL 项目(独立项目,而不是子项目),它也可以工作(“ceosutil.lib”已列在项目和所有配置的“附加依赖项”中)。

请帮忙!

最佳答案

我已经找到了我自己问题的答案。解决方案是将库的名称(“ceosutil.lib”,在空格之后)添加到子项目属性的“链接”选项卡中的“附加库”字段中:

在 MS Visual Studio 2005 中: 鼠标右键单击子项目名称 -> 属性 -> 链接选项卡 -> 其他库。

默认值为:$(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib

新值:$(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib ceosutil.lib

更新: 打开子项目(鼠标右键 btn -> 打开)并将库的路径粘贴到 TARGETLIBS 部分中甚至更容易。结果将完全相同:

目标库=\ $(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib\

关于visual-studio-2005 - 项目中不能包含静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10101250/

相关文章:

msbuild - 获取 VS 发布配置文件中的解决方案目录

c++ - 在 MS VC++ 2005 中调试堆损坏错误

C++ 链接器错误,未解析的外部

c++ - 错误 LNK2019 : unresolved external symbol "public: void __thiscall

c++ - 解决 main 中的 LNK2019 错误

c# - Visual Studio/C# Windows 应用程序中的配置和程序功能

c# - 从类创建对象 ArrayList

visual-studio-2005 - F12 在 Visual Studio 中不再起作用

c++ - Unresolved external symbol 错误将 DLL 链接到 LIB

c++ - LNK2019 与 Qt 和 Gmock