У меня есть очень простая 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;
}
У меня есть очень простой скрипт make (я здесь на 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, так что, надеюсь, моя ошибка очевидна, кто-нибудь может ее увидеть?