Allegro.cc - Online Community

Allegro.cc Forums » Installation, Setup & Configuration » Binaries for Allegro 4.4.3 GIT with critical fullscreen fixes

This thread is locked; no one can reply to it. rss feed Print
Binaries for Allegro 4.4.3 GIT with critical fullscreen fixes
Edgar Reynaldo
Member #8,592
May 2007
avatar

EDIT
Update, 08/07/2017 3:14AM

I rebuilt the static libs to link to the MinGW C runtime statically. Download v3 below :

https://bitbucket.org/bugsquasher/unofficial-allegro-5-binaries/downloads/Allegro443_MinGW71v3.7z

They go with the compiler from here :

https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/7.1.0/threads-posix/dwarf/i686-7.1.0-release-posix-dwarf-rt_v5-rev0.7z

Full dynamic debugging examples, tools, and tests. Includes, libs, and dlls provided for ogg, libpng, zlib, vorbis, and Allegro 4 from GIT as of 08/05/2017.

Several fullscreen issues with switching in and out were fixed by the guys from Zelda Classic. This is with their patches applied.

AceBlkwell
Member #13,038
July 2011

Thanks for the links and the work behind them Edgar,

I've installed both the Allegro 4.4.3 and the MINGW. I've using Dev-CPP portable as I couldn't get the Mingw to work with Eclipse Helios.

In any case I'm trying to compile my program and I'm getting a weird error (weird to me anyways) I'm not sure what is means. Can you lead me in the right direction on what to look for?

Thanks
Ace

#SelectExpand
1 g++.exe allegro.o board.o keys.o main.o map.o play.o rand.o sound.o target.o title.o -o Dragons.exe -L"E:/Dev-Cpp/MinGW32/lib" -L"E:/Dev-Cpp/MinGW32/i686-w64-mingw32/lib" -static-libgcc ../../mingw32/lib/liballeg.a 2 3board.o:board.cpp:(.text+0xa4f): undefined reference to `_imp__screen' 4play.o:play.cpp:(.text+0x324): undefined reference to `_imp__screen' 5play.o:play.cpp:(.text+0x70b): undefined reference to `_imp__screen' 6play.o:play.cpp:(.text+0x9ac): undefined reference to `_imp__screen' 7play.o:play.cpp:(.text+0xa1d): undefined reference to `_imp__screen' 8play.o:play.cpp:(.text+0xa90): more undefined references to `_imp__screen' follow 9../../mingw32/lib/liballeg.a(wkeybd.c.obj):wkeybd.c:(.text+0x16f): undefined reference to `IID_IDirectInputA' 10../../mingw32/lib/liballeg.a(wkeybd.c.obj):wkeybd.c:(.text+0x186): undefined reference to `CLSID_DirectInput' 11../../mingw32/lib/liballeg.a(wkeybd.c.obj):wkeybd.c:(.text+0x18c): undefined reference to `_imp__CoCreateInstance@20' 12../../mingw32/lib/liballeg.a(wkeybd.c.obj):wkeybd.c:(.text+0x1e0): undefined reference to `GUID_SysKeyboardEm2' 13../../mingw32/lib/liballeg.a(wkeybd.c.obj):wkeybd.c:(.text+0x200): undefined reference to `c_dfDIKeyboard' 14../../mingw32/lib/liballeg.a(wsystem.c.obj):wsystem.c:(.text+0x69): undefined reference to `_imp__GetDeviceCaps@8' 15../../mingw32/lib/liballeg.a(wsystem.c.obj):wsystem.c:(.text+0xe4): undefined reference to `_imp__GetDeviceCaps@8' 16../../mingw32/lib/liballeg.a(wthread.c.obj):wthread.c:(.text+0xe9): undefined reference to `_imp__CoInitialize@4' 17../../mingw32/lib/liballeg.a(wthread.c.obj):wthread.c:(.text+0x102): undefined reference to `_imp__CoUninitialize@0' 18../../mingw32/lib/liballeg.a(wtimer.c.obj):wtimer.c:(.text+0x15): undefined reference to `_imp__timeGetTime@0' 19../../mingw32/lib/liballeg.a(wtimer.c.obj):wtimer.c:(.text+0x133): undefined reference to `_imp__timeGetTime@0' 20../../mingw32/lib/liballeg.a(wwnd.c.obj):wwnd.c:(.text+0x9e): undefined reference to `_imp__SetSystemPaletteUse@8' 21../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x83): undefined reference to `DirectDrawCreate@12' 22../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0xa4): undefined reference to `IID_IDirectDraw2' 23../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x890): undefined reference to `_imp__DeleteObject@4' 24../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x8af): undefined reference to `_imp__DeleteObject@4' 25../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x917): undefined reference to `_imp__CreateCompatibleDC@4' 26../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x95a): undefined reference to `_imp__CreateBitmap@20' 27../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x97b): undefined reference to `_imp__CreateCompatibleBitmap@12' 28../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x981): undefined reference to `_imp__SelectObject@8' 29../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0x9f7): undefined reference to `_imp__SetPixel@16' 30../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0xa16): undefined reference to `_imp__SetPixel@16' 31../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0xa8c): undefined reference to `_imp__SetPixel@16' 32../../mingw32/lib/liballeg.a(wddraw.c.obj):wddraw.c:(.text+0xafd): undefined reference to `_imp__DeleteDC@4' 33../../mingw32/lib/liballeg.a(wddmode.c.obj):wddmode.c:(.text+0x19a): undefined reference to `_imp__GetSystemPaletteEntries@16' 34../../mingw32/lib/liballeg.a(wddovl.c.obj):wddovl.c:(.text+0x2c5): undefined reference to `_imp__DeleteObject@4' 35../../mingw32/lib/liballeg.a(wddovl.c.obj):wddovl.c:(.text+0x3c2): undefined reference to `_imp__CreateSolidBrush@4' 36../../mingw32/lib/liballeg.a(wddwin.c.obj):wddwin.c:(.text+0x914): undefined reference to `_imp__BitBlt@36' 37../../mingw32/lib/liballeg.a(wdsound.c.obj):wdsound.c:(.text+0xc9f): undefined reference to `DirectSoundCreate@12' 38../../mingw32/lib/liballeg.a(wdsound.c.obj):wdsound.c:(.text+0x11a3): undefined reference to `DirectSoundCreate@12' 39../../mingw32/lib/liballeg.a(wdsound.c.obj):wdsound.c:(.text+0x1e91): undefined reference to `DirectSoundEnumerateA@8' 40../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x59): undefined reference to `_imp__waveOutGetVolume@8' 41../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0xb8): undefined reference to `_imp__waveOutSetVolume@8' 42../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0xed): undefined reference to `_imp__waveOutReset@4' 43../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x107): undefined reference to `_imp__waveOutSetVolume@8' 44../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x129): undefined reference to `_imp__waveOutUnprepareHeader@12' 45../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x13a): undefined reference to `_imp__waveOutClose@4' 46../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x219): undefined reference to `_imp__waveOutGetPosition@12' 47../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x2f9): undefined reference to `_imp__waveOutRestart@4' 48../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x31f): undefined reference to `_imp__waveOutPause@4' 49../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x433): undefined reference to `_imp__waveOutOpen@24' 50../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x488): undefined reference to `_imp__waveOutPrepareHeader@12' 51../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x4b2): undefined reference to `_imp__waveOutWrite@12' 52../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x54e): undefined reference to `_imp__waveOutGetVolume@8' 53../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x5bc): undefined reference to `_imp__waveOutReset@4' 54../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x5d6): undefined reference to `_imp__waveOutSetVolume@8' 55../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x5f8): undefined reference to `_imp__waveOutUnprepareHeader@12' 56../../mingw32/lib/liballeg.a(wsndwo.c.obj):wsndwo.c:(.text+0x609): undefined reference to `_imp__waveOutClose@4' 57../../mingw32/lib/liballeg.a(wdxver.c.obj):wdxver.c:(.text+0x14a): undefined reference to `IID_IDirectDraw2' 58../../mingw32/lib/liballeg.a(wdxver.c.obj):wdxver.c:(.text+0x23e): undefined reference to `IID_IDirectDrawSurface3' 59../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x2ff): undefined reference to `IID_IDirectInputA' 60../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x316): undefined reference to `CLSID_DirectInput' 61../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x31c): undefined reference to `_imp__CoCreateInstance@20' 62../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x484): undefined reference to `IID_IDirectInputDevice2A' 63../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x524): undefined reference to `c_dfDIJoystick' 64../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x5d3): undefined reference to `GUID_XAxis' 65../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x5de): undefined reference to `GUID_YAxis' 66../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x5ea): undefined reference to `GUID_ZAxis' 67../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x5f6): undefined reference to `GUID_RzAxis' 68../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x602): undefined reference to `GUID_Slider' 69../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x60e): undefined reference to `GUID_POV' 70../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x61a): undefined reference to `GUID_Button' 71../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x635): undefined reference to `GUID_XAxis' 72../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x640): undefined reference to `GUID_XAxis' 73../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x64b): undefined reference to `GUID_XAxis' 74../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x6a2): undefined reference to `GUID_YAxis' 75../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x6b1): undefined reference to `GUID_YAxis' 76../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x6c0): undefined reference to `GUID_YAxis' 77../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x715): undefined reference to `GUID_ZAxis' 78../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x724): undefined reference to `GUID_ZAxis' 79../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x733): undefined reference to `GUID_ZAxis' 80../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x792): undefined reference to `GUID_RzAxis' 81../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x7a1): undefined reference to `GUID_RzAxis' 82../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x7b0): undefined reference to `GUID_RzAxis' 83../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x813): undefined reference to `GUID_Slider' 84../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x822): undefined reference to `GUID_Slider' 85../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x831): undefined reference to `GUID_Slider' 86../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x8c2): undefined reference to `GUID_POV' 87../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x8d1): undefined reference to `GUID_POV' 88../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x8e0): undefined reference to `GUID_POV' 89../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x943): undefined reference to `GUID_Button' 90../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x951): undefined reference to `GUID_Button' 91../../mingw32/lib/liballeg.a(wjoydx.c.obj):wjoydx.c:(.text+0x95f): undefined reference to `GUID_Button' 92../../mingw32/lib/liballeg.a(wjoyw32.c.obj):wjoyw32.c:(.text+0x103): undefined reference to `_imp__joyGetPosEx@8' 93../../mingw32/lib/liballeg.a(wjoyw32.c.obj):wjoyw32.c:(.text+0x370): undefined reference to `_imp__joyGetNumDevs@0' 94../../mingw32/lib/liballeg.a(wjoyw32.c.obj):wjoyw32.c:(.text+0x3af): undefined reference to `_imp__joyGetDevCapsA@12' 95../../mingw32/lib/liballeg.a(wjoyw32.c.obj):wjoyw32.c:(.text+0x3d9): undefined reference to `_imp__joyGetPosEx@8' 96../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x81): undefined reference to `_imp__midiOutReset@4' 97../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x92): undefined reference to `_imp__midiOutClose@4' 98../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0xd1): undefined reference to `_imp__midiInStop@4' 99../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0xe2): undefined reference to `_imp__midiInReset@4' 100../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0xf3): undefined reference to `_imp__midiInClose@4' 101../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x139): undefined reference to `_imp__midiOutSetVolume@8' 102../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x169): undefined reference to `_imp__midiOutGetVolume@8' 103../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x245): undefined reference to `_imp__midiOutShortMsg@8' 104../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x255): undefined reference to `_imp__midiOutReset@4' 105../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x273): undefined reference to `_imp__midiOutShortMsg@8' 106../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x2bf): undefined reference to `_imp__midiOutOpen@20' 107../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x2d6): undefined reference to `_imp__midiOutReset@4' 108../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x2f2): undefined reference to `_imp__midiOutReset@4' 109../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x303): undefined reference to `_imp__midiOutClose@4' 110../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x354): undefined reference to `_imp__midiInOpen@20' 111../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x36b): undefined reference to `_imp__midiInReset@4' 112../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x37c): undefined reference to `_imp__midiInStart@4' 113../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x39e): undefined reference to `_imp__midiInStop@4' 114../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x3af): undefined reference to `_imp__midiInReset@4' 115../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x3c0): undefined reference to `_imp__midiInClose@4' 116../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x3fc): undefined reference to `_imp__midiOutGetNumDevs@0' 117../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x416): undefined reference to `_imp__midiInGetNumDevs@0' 118../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x48a): undefined reference to `_imp__midiInGetDevCapsA@12' 119../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x5cb): undefined reference to `_imp__midiOutGetDevCapsA@12' 120../../mingw32/lib/liballeg.a(wmidi.c.obj):wmidi.c:(.text+0x6d1): undefined reference to `_imp__midiOutReset@4' 121../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x5c1): undefined reference to `IID_IDirectInputA' 122../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x5d8): undefined reference to `CLSID_DirectInput' 123../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x5de): undefined reference to `_imp__CoCreateInstance@20' 124../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x632): undefined reference to `GUID_SysMouseEm2' 125../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x6ab): undefined reference to `c_dfDIMouse' 126../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x101c): undefined reference to `GUID_ZAxis' 127../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x1024): undefined reference to `GUID_Button' 128../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x1034): undefined reference to `GUID_ZAxis' 129../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x103f): undefined reference to `GUID_ZAxis' 130../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x104a): undefined reference to `GUID_ZAxis' 131../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x1061): undefined reference to `GUID_Button' 132../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x106b): undefined reference to `GUID_Button' 133../../mingw32/lib/liballeg.a(wmouse.c.obj):wmouse.c:(.text+0x1075): undefined reference to `GUID_Button' 134../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x11): undefined reference to `_imp__DeleteObject@4' 135../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x613): undefined reference to `_imp__SetPaletteEntries@16' 136../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x630): undefined reference to `_imp__SelectPalette@12' 137../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x63c): undefined reference to `_imp__RealizePalette@4' 138../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x6cc): undefined reference to `_imp__CreatePalette@4' 139../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x76c): undefined reference to `_imp__CreatePalette@4' 140../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x7bb): undefined reference to `_imp__GetPaletteEntries@16' 141../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x8fb): undefined reference to `_imp__CreatePalette@4' 142../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x91b): undefined reference to `_imp__SelectPalette@12' 143../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x945): undefined reference to `_imp__RealizePalette@4' 144../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x96d): undefined reference to `_imp__CreateDIBitmap@24' 145../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x9ad): undefined reference to `_imp__DeleteObject@4' 146../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x9ec): undefined reference to `_imp__GetObjectA@12' 147../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0xbea): undefined reference to `_imp__CreatePalette@4' 148../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0xc12): undefined reference to `_imp__SelectPalette@12' 149../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0xc2b): undefined reference to `_imp__RealizePalette@4' 150../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0xc5f): undefined reference to `_imp__GetDIBits@28' 151../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0xc9e): undefined reference to `_imp__DeleteObject@4' 152../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x145c): undefined reference to `_imp__StretchDIBits@52' 153../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x15b4): undefined reference to `_imp__CreateCompatibleDC@4' 154../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x15ce): undefined reference to `_imp__CreateCompatibleBitmap@12' 155../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x15d4): undefined reference to `_imp__SelectObject@8' 156../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x1636): undefined reference to `_imp__StretchBlt@44' 157../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x16a4): undefined reference to `_imp__DeleteObject@4' 158../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x16b0): undefined reference to `_imp__DeleteDC@4' 159../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x16d7): undefined reference to `_imp__CreateCompatibleDC@4' 160../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x16f4): undefined reference to `_imp__CreateCompatibleBitmap@12' 161../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x16fa): undefined reference to `_imp__SelectObject@8' 162../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x1767): undefined reference to `_imp__StretchBlt@44' 163../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x17d8): undefined reference to `_imp__DeleteObject@4' 164../../mingw32/lib/liballeg.a(gdi.c.obj):gdi.c:(.text+0x17e4): undefined reference to `_imp__DeleteDC@4' 165../../mingw32/lib/liballeg.a(wddbmp.c.obj):wddbmp.c:(.text+0x175): undefined reference to `IID_IDirectDrawSurface2' 166../../mingw32/lib/liballeg.a(wddbmp.c.obj):wddbmp.c:(.text+0x4f2): undefined reference to `IID_IDirectDrawSurface2' 167../../mingw32/lib/liballeg.a(wddbmp.c.obj):wddbmp.c:(.text+0x794): undefined reference to `IID_IDirectDrawSurface2' 168../../mingw32/lib/liballeg.a(wddbmp.c.obj):wddbmp.c:(.text+0xa26): undefined reference to `IID_IDirectDrawSurface2' 169../../mingw32/lib/liballeg.a(wddbmp.c.obj):wddbmp.c:(.text+0xf54): undefined reference to `IID_IDirectDrawSurface2' 170../../mingw32/lib/liballeg.a(wdsinput.c.obj):wdsinput.c:(.text+0x2c2): undefined reference to `IID_IDirectSoundCapture' 171../../mingw32/lib/liballeg.a(wdsinput.c.obj):wdsinput.c:(.text+0x2d9): undefined reference to `CLSID_DirectSoundCapture' 172../../mingw32/lib/liballeg.a(wdsinput.c.obj):wdsinput.c:(.text+0x2e3): undefined reference to `_imp__CoCreateInstance@20' 173../../mingw32/lib/liballeg.a(wdsinput.c.obj):wdsinput.c:(.text+0x5fe): undefined reference to `IID_IDirectSoundCapture' 174../../mingw32/lib/liballeg.a(wdsinput.c.obj):wdsinput.c:(.text+0x615): undefined reference to `CLSID_DirectSoundCapture' 175../../mingw32/lib/liballeg.a(wdsinput.c.obj):wdsinput.c:(.text+0x61f): undefined reference to `_imp__CoCreateInstance@20' 176../../mingw32/lib/liballeg.a(wdsndmix.c.obj):wdsndmix.c:(.text+0x50f): undefined reference to `DirectSoundCreate@12' 177../../mingw32/lib/liballeg.a(wdsndmix.c.obj):wdsndmix.c:(.text+0x5a3): undefined reference to `DirectSoundCreate@12' 178collect2.exe: error: ld returned 1 exit status 179 180E:\Dev-Cpp\workspace\Dragons\Makefile.win:25: recipe for target 'Dragons.exe' failed 181mingw32-make.exe: *** [Dragons.exe] Error 1

Peter Hull
Member #1,136
March 2001

Are these critical fixes relevant to all platforms or are they Windows specific?

Neil Roy
Member #2,229
April 2002
avatar

Great stuff, thanks Edgar. I'll be really curious to try this with my Deluxe Pacman 1 game as I noticed some strange fullscreen problems, but only when the game shuts down. There's a strange delay that lasts a few seconds. No big deal but...

...nope, still there. Long exit from fullscreen mode. I think it has something to do with a directx driver taking a while to shut down.

AceBlkwell
Member #13,038
July 2011

Edgar,

I've done some research on my errors. I was able to get rid of the errors for my program obj files by adding

#define ALLEGRO_STATICLINK

However I still have all the liballeg.a errors. I was reading someplace there may be an allegro version vs mingw version conflict. Does this sound right?

Not trying to make my problems your problems, especially in light of all the work you've put in to this. Just trying to figure out where to look next.

Thanks
Ace

Edgar Reynaldo
Member #8,592
May 2007
avatar

Edit
@Peter - The fixes are only for Windows

No problem Ace, usage is On Topic for this thread. It's not a problem with the build though, but a problem in the way you're linking. When you link the static allegro lib, you also have to link in all the other libraries that it uses. That's what makes it static - it hasn't been linked yet.

So compare your link commands to this list, and see if you're missing any :

-static -lalleggl -ljpgalleg -lloadpng -llogg -lalleg-debug-static -lvorbis -lvorbisenc -lvorbisfile -logg -lpng16 -lzlibstatic -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lole32 -ldinput -lddraw -ldxguid -lwinmm -ldsound -static-libstdc++ -static-libgcc

Edit2
Neil, can you set me up with a debugging build of your Deluxe Pacman 1 game? I want to try and catch that bug you're describing in shutdown. Is it just DP1 or is it other programs / games that exhibit this behavior?

ZoriaRPG
Member #16,714
July 2017
avatar

The fix for keyboard threadding is in now. I gave five or six hours of my day fighting with ag443 to get it to compile in MSVC9, and you can see my threads on that. The CMake config files for MSVC are incorrect, and it flat out refuses to compile after I fixed everything manually. Very fun indeed, but this latest patch:

https://github.com/ArmageddonGames/allegro5/commit/f805b1ed4ac1aeab631763b699060943e157cfa3

...should do it. IDK if you feel up to remastering this once this fix is in, or who would be in charge of it; and to verify that it compiles properly.

I need to set up MSYS again, as clearly that is the only way to compile allegro on Windows. :/

AceBlkwell
Member #13,038
July 2011

Thanks Edgar,

I have linked a lot of the libraries you said to and it has changed up the errors some but I couldn't find kernal32 or anything after it. Are they in a Windows folder somewhere? I am running portable so I may not have them.

Just checking .

Thanks
Ace

Edgar, I found the files. I'm getting a run error but it did compile and link.

Thanks
Ace

Go to: