我的一个项目中存在一个链接问题,该项目在Visual Sutdio 2013项目中包含一个exe和几个静态库。
可执行文件名是exec.library,依赖于几个静态库(intuition.library和graphics.libray等等)。 Intuition.library调用graphics.library中的函数,当然,exec.library调用graphics.library和intuition.library中的函数。
这个小小的图画将有助于理解相互依存关系:
+------+
+-------+ exec +-----+
| +------+ |
| |
| |
+----v------+ +-----v----+
| intuition +-------> graphics |
+-----------+ +----------+
我有以下(法国)错误:
1> intuition.library.lib(OpenScreen.obj):错误LNK2019:symbole externenonrésolu_ScreenToFrontréférencédansla fonction _OpenScreen 1> D:\ dev \ MimicOS \ SysCore \ Debug \ kernel.exe:致命错误LNK1120:1 externesnonrésolus
ScreenToFront()和OpenScreen()函数来自intuition.library。当我编译intuition.library和graphics.library时,一切都很好。 另一方面,当我编译exec.library(使用直觉和图形库)时,我有这个错误。令人困惑的是,这两个函数派生自相同的静态库(intuition.library)......
据我所知,问题在于intuition.libray(静态库)和graphics.library(也是静态库)相互调用。
在我网上的无用搜索中,我发现了一些可能与之相关的文章: - http://blogs.msdn.com/b/vcblog/archive/2010/05/03/flexible-project-to-project-references.aspx - Unable to link my own static libraries
对于那些有勇气下载项目的人(500KB),一切都可以在这里找到:https://mimicos.codeplex.com/SourceControl/latest
有人会有想法吗?