4

プロジェクトで SOIL lib を使用する必要があります。

ソース ファイル ディレクタに SOIL.h と libSOIL.a を含めました (名前を libSOIL.lib に変更しました)。

ヘッダー ファイルを既存のアイテムとしてヘッダーに追加し、必要な別のヘッダー ファイルにヘッダー ファイルを含めました。

私も試しました:プロジェクトのプロパティ>リンカー>入力>追加の依存関係を選択し、ドロップダウンメニューで[<編集..>]をクリックして、libSOIL.libと入力しました。

しかし、私はこれらのエラーが発生しています:

以下を見てください(更新されたエラー)

私は何をすべきか?

編集#1:

これは私がやっていることです:

#include "gl/glut.h"  
#include "SOIL.h"

ソースディレクトリに両方のファイルがあります。

SOIL からコードを書かなくても、ビルドは成功します。

このコードで:

/* load an image file directly as a new OpenGL texture */
GLuint grass_texture = SOIL_load_OGL_texture
(
    "original.bmp",
    SOIL_LOAD_AUTO,
    SOIL_CREATE_NEW_ID,
    SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT
);
/* check for an error during the load process */
if( 0 == grass_texture )
{
    printf( "SOIL loading error: '%s'\n", SOIL_last_result() );
}

このエラーが発生しています:

エラー 1 エラー LNK2019: 未解決の外部シンボル __alloca が関数 _stbi_zlib_decode_noheader_buffer working_dir\libSOIL.lib(stb_image_aug.o) ProjectName で参照されています

エラー 2 エラー LNK2019: 関数 _RGBE_to_RGBdivA2 で参照されている未解決の外部シンボル _sqrtf working_dir\libSOIL.lib(image_helper.o) ProjectName

エラー 3 エラー LNK1120: 2 つの未解決の外部ファイル working_dir\Debug\ProjectName.exe ProjectName

4

3 に答える 3

0

SOIL.h の前に最初に OpenGL を含めてみてください。

于 2013-02-07T11:48:56.160 に答える