我正在MS Visual Studio 2005的解决方案中开发子项目。该子项目是Windows CE 6.0服务(作为DLL),它包含在Windows CE 6.0 OS项目中。在子项目中,我需要使用“ceosutil.lib”中的一些函数(svsutil.hxx是标题),但我无法将其链接到我的子项目。构建时,我得到以下类型的错误:“错误LNK2019:未解析的外部符号”。
有趣的是,当我将项目类型切换到静态库时,它编译没有问题。如果我启动一个新的DLL项目(独立项目,而不是子项目),它也可以工作(“ceosutil.lib”已经列在项目的附加依赖项和所有配置中。)
请帮忙!
答案 0 :(得分:2)
我找到了自己问题的答案。解决方案是将库的名称(“ceosutil.lib”,在空格后面)添加到子项目属性的“链接”选项卡中的“附加库”字段:
在MS Visual Studio 2005中: 鼠标右键单击子项目名称 - >属性 - >链接标签 - >其他图书馆。
默认值为:$(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib
新值:$(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib ceosutil.lib
更新: 打开子项目(右键btn - >打开)更容易,并将路径粘贴到TARGETLIBS部分中的库。结果将完全相同:
TARGETLIBS = \ $(_ PROJECTROOT)\ cesysgen \ sdk \ lib \ $(_ CPUINDPATH)\ coredll.lib \