SiegeLord / DAllegro5

D binding to the Allegro5 game development library
Other
42 stars 15 forks source link

link error (dub windows) #50

Open joelcnz opened 4 years ago

joelcnz commented 4 years ago

What do I put for this - using dub?

lld-link: error: could not open '+..\DAllegro5\lib\': no such file or directory ... Then it lists a whole bunch of lib files not existing.

I have DAllegro source files and lib files there.

SimonN commented 11 months ago

Hi, it's been over 3 years since your question, but I have a loose idea to for you to try.

I remember adding DAllegro 5 and wanting full control over the linkage. Add to your dubfile, assuming your dubfile is JSON, not SDLang:

"versions": ["ALLEGRO_NO_PRAGMA_LIB"],

Then explicitly name the wanted Allegro 5 libraries. Apparently, on Posix with pkg-config, it's enough to add the leaves (e.g., allegro_ttf-5) and they will implicitly pull in all dependencies (allegro_font-5 and allegro-5, presumably because pkg-config resolves allegro_ttf-5). For Windows, I've listed all libraries explicitly. Example:

"libs-posix": [
    "allegro_acodec-5",
    "allegro_image-5",
    "allegro_primitives-5",
    "allegro_ttf-5",
],
"libs-windows": [
    "allegro",
    "allegro_acodec",
    "allegro_audio",
    "allegro_font",
    "allegro_image",
    "allegro_primitives",
    "allegro_ttf",
],