1

Derelict2 バインディングを使用して D でテスト プログラムを作成しようとしています。これが私のコードです:

import std.stdio;
import derelict.sfml.audio;

pragma(lib, "/home/ryan/Derelict2/lib/libDerelictSFMLAudio.a");
pragma(lib, "/home/ryan/Derelict2/lib/libDerelictUtil.a");


void main(){
  DerelictSFMLAudio.load();
}

derelict の .di ファイルはすべて dmd のデフォルトのインポート ディレクトリにあるため、次のコマンドでプログラムをコンパイルおよびリンクする必要があるという印象を受けました。

dmd test.d -L-lDerelictSFML -L-lDerelictUtil -L-ldl

ただし、次のエラーが発生します。

/usr/bin/ld: cannot find -lDerelictSFML
/usr/bin/ld: cannot find -lDerelictUtil
collect2: error: ld returned 1 exit status
--- errorlevel 1

私は正確に何を間違っていますか?

少し話題から外れますが、懸念事項もあります。

-ldl フラグは何をしますか? リンクを成功させるために必要であることは知っていますが、方法がわかりませんし、ld マニュアルにもありません。

4

1 に答える 1