无法打开文件'SOIL.libkernel32.lib'

时间:2013-11-16 12:22:28

标签: c++ opengl visual-studio-2012 soil

我需要在我的项目中使用SOIL库。我的步骤:

  1. 下载并解压缩到我的项目文件夹

  2. 将libSOIL.a重命名为SOIL.lib

  3. 属性>> C / C ++>一般>>其他包含目录 - 添加“./SOIL/src”

  4. 属性>>链接器>>一般>>其他图书馆目录 - 添加“SOIL.lib”

  5. 把#include“SOIL.h”

  6. 找到了功能* SOIL_load_image *但是

    错误LNK1104:无法打开文件'SOIL.libkernel32.lib'

2 个答案:

答案 0 :(得分:14)

我知道这个问题已经过了几个星期了,但我认为它不会受到伤害。

您获得的实际错误(可能)是因为您在要链接的库列表中缺少分号。

如果你去属性 - >链接器 - >输入 - >额外的依赖关系(我假设你必须去过,虽然它不在你的步骤列表中),它应该说SOIL.lib%(AdditionalDependencies)

如果您将其更改为SOIL.lib;%(AdditionalDependencies)(请注意分号!),那么该错误应该会消失。

%(AdditionalDependencies)所做的是追加微软知道(或认为)你需要的其他一些库。第一个是kernel.lib,因此如果没有分号来分隔您的SOIL.libkernel.lib,链接器会尝试查找SOIL.libkernel.lib,这不存在!!

答案 1 :(得分:1)

在这里

  

2)将libSOIL.a重命名为SOIL.lib

你搞错了。名称libSOIL.a表示您下载了旨在与GCC工具链一起使用的构建。文件名为lib….a的文件库使用的格式与名为….lib的库不同。

您需要为VC ++构建SOIL。