Имам тази много проста D програма (pk.d):
import std.stdio;
import SDL;
int main(string[] args) {
writefln("Hello world");
if (SDL_Init( SDL_INIT_VIDEO ) < 0) {
writefln("Unable to init SDL");
return 1;
}
return 0;
}
Имам много ясен скрипт за създаване (тук съм на Windows, но компилаторът на Windows D идва в пакет с bash интерпретатор):
DMD=dmd
DFLAGS=-I./lib/SDL
$(DMD) pk $(DFLAGS)
pk
Но когато го създам, получавам Error 42: Symbol Undefined _SDL_Init
Той успя да импортира SDL добре и намира SDL_INIT_VIDEO добре. Продължих и проверих в SDL.d и открих, че има дефиниция за SDL_Init: int SDL_Init(Uint32 flags);
. Не мога да разбера това. Това е първата не-STL библиотека, която импортирах с D, така че се надявам грешката ми да е очевидна, може ли някой да я види?