1

そこにある素材のほとんどは、DMD1 と Derelict2 です。考えられることはすべて試しましたが、得られるのはさまざまな種類のゴミだけです。hello worlds をコンパイルできるので、DMD2 は問題なくインストールされています。私のsc.iniの読み取り:

[Version]
version=7.51 Build 020

[Environment]
LIB="%@P%\..\lib";\dm\lib
DFLAGS="-I%@P%\..\..\src\phobos" "-I%@P%\..\..\src\druntime\import" "-I%@P%\..\..\src\etc"
LINKCMD=%@P%\link.exe

gl3.d へのパスが含まれていない場合 (私は Eclipse を使用しており、Windows XP のコマンド シェルから dmd/bud を使用してチェックアウトしています)、「gl3.d を読み取れません」というエラーが表示されます。ライブラリ参照に追加されます。

コンパイルしようとしているファイルは次のとおりです。

import std.stdio;
import derelict.opengl3.gl3;

pragma(lib, "DerelictGL3.lib");

void main(){
    DerelictGL3.load();


    writeln("Fred");

}

プラグマをコメントアウトすると、エラーは次のようになります。

OPTLINK (R) for Win32  Release 8.00.12
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
bin\Main.obj(Main) 
 Error 42: Symbol Undefined _D8derelict7opengl33gl312__ModuleInfoZ
bin\Main.obj(Main) 
 Error 42: Symbol Undefined _D8derelict7opengl33gl311DerelictGL3C8derelict7opengl33gl317DerelictGL3Loader
--- errorlevel 2

プラグマのコメントを外すと、エラーは次のようになります。

--------  Build Commands:  --------
-od"bin"
-of"bin\Main.exe"

-I"src"

"src\Main.d"



OPTLINK (R) for Win32  Release 8.00.12
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
D:\Programming\DMD\dmd2\windows\bin\..\lib\DerelictGL3.lib(gl3) 
 Error 42: Symbol Undefined _D8derelict4util6loader15SharedLibLoader19isAutoUnloadEnabledOFNdZb
D:\Programming\DMD\dmd2\windows\bin\..\lib\DerelictGL3.lib(gl3) 
 Error 42: Symbol Undefined _D8derelict4util9exception17DerelictException7__ClassZ
D:\Programming\DMD\dmd2\windows\bin\..\lib\DerelictGL3.lib(gl3) 

そして、すべての関数がリストされると思うまで、同じ流れで続けます。

助けてください。

4

1 に答える 1

5

pragma(lib, "DerelictUtil.lib")、またはそれに対するリンクを追加する必要があります。(Derelict2も同様)

于 2012-04-13T12:12:10.087 に答える