2010-03-31 23 views
2

我使用的是CodeBlocks和MinGW工具链,它基本上是GCC。我使用的是VStudio,但我想摆脱它来进行跨平台开发。在我链接的某些库中似乎有一些微软特定的引用,特别是在CXImage SDK(_chkstk)中。我认为这个库被放在一起使用VS.从我的搜索中我了解到GCC使用_alloca而不是_chkstk。我仍然想使用CXImage来处理我正在做的一些事情。我的问题:有没有解决这个问题的方法,或者如果我想使用GCC,我是否会像这样放弃这样的库?GCC vs Microsoft:未定义对`_chkstk'的引用?

+0

您是否试图直接链接到您使用Visual Studio链接到的相同静态存档(.lib)? – 2010-04-05 12:08:13

+0

我不确定发生了什么,但我开始了一个新项目,并重新添加了文件,现在它正在链接。我确实使用CB来导入VS文件,所以我想它正在查看错误的库。所以如果你想添加一个关于库的答案,我会接受它。谢谢。 – SethCoder 2010-04-05 16:25:56

回答

1

正如我在我的评论中所说的,由于MinGW/gcc编译的东西与msvc非常不同,因此很可能链接到了错误的lib文件。请始终尝试使用您正在使用的编译器从源代码重新编译库,以最终链接它们(如果可以的话)。

+0

非常感谢您的先生。 – SethCoder 2010-04-08 12:10:00