|
Allegro 5.1.11 released! |
SiegeLord
Member #7,827
October 2006
|
I'm pleased to present yet another release of the WIP branch of Allegro. As always, this was a mix of new features and bug fixes. Download the souces here. Download the windows binaries here as well as the MSVC dependencies here. The format of the MSVC binaries changed a little bit. The static release version is now compiled with the static MSVC runtime. The static debug version, on the other hand, is removed altogether as it is not clear what runtime is best to compile it with. As the staticness matters most for releasing software, I don't think it will be a big issue to link to the dynamic version of Allegro when you want to debug it. The Ubuntu PPA has been updated, and the OSX homebrew will be updated in a few days. Changes from 5.1.10 to 5.1.11 (June 2015)The main developers this time were: SiegeLord, Trent Gamblin. Input
OSX port
Windows port
Build system
Documentation
Other
Color addon
Video addon
EDIT: The MSVC binaries were updated to fix the dynamic loading acodec bug, so the hashes for those two files changes SHA256SUMS 5928cfec00dd7f3b7043d6b7254cdfe27deba0f428c4ea842f2da9357747e854 allegro-5.1.11.7z 7a071635e39105ce52cd82c8641a8f3841efbdfe8fdb39f7a5ae1be6db3be07f allegro-5.1.11.tar.gz a14c5fe2c7c0cf945484b998defde5815a12c377c921030236fc08d3dd878616 allegro-5.1.11.zip 64323639cc35e4ca65e3cff997d1ee01975350f170f7c3cb6f00c9da877cad51 allegro_deps-msvc2013-x64-1.1.0.zip ccab3959b3e98a6813404ddcdbdded5fa268e94d44963ecf94b6bc169a337d6a allegro_deps-msvc2013-x86-1.1.0.zip 81ae5d6b64e51d75bc726ec4cd75351225bdb2eed5e45d5fb696cd3bfc23c3b0 allegro-msvc2013-x64-5.1.11.zip 58c31463390e1621792e8f61f6790b94aabb6a0cb7569db26c69ff923c5a88fb allegro-msvc2013-x86-5.1.11.zip 72f880dbb9f9f272f3145629636e7bedb6c76640cf20abfdc7a96f782231d877 mingw-w64-i686-allegro-5.1.11-1-any.pkg.tar.xz c0cf85b60fd40d50349f9623dbeb49e95cc69eb4288a223940277374216f3dd5 mingw-w64-x86_64-allegro-5.1.11-1-any.pkg.tar.xz
"For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Bruce Pascoe
Member #15,931
April 2015
|
Just to verify, the MSVC binaries are compiled using the "XP" toolchain, yes? I ask because otherwise they won't work on anything lower than Win7--something I learned the hard way.
|
SiegeLord
Member #7,827
October 2006
|
Bruce Pascoe said: Just to verify, the MSVC binaries are compiled using the "XP" toolchain, yes? I ask because otherwise they won't work on anything lower than Win7--something I learned the hard way. Yes, they use the XP toolchain. "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Edgar Reynaldo
Major Reynaldo
May 2007
|
I have put together binaries for 5.1.11 for MinGW 4.8.1 if anyone is interested. My distribution includes statically linked examples and demos, as well as all of allegro and its dependency's libraries, headers and dlls. Static and dynamic, and debug and release monoliths are included. You can get them from SF here : And I provide binaries for MinGW 4.8.1 to go along with them, which you can find here : http://sourceforge.net/projects/unofficialmingw/files/mingw_4_8_1-4.tar.7z/download You'll need 7-zip to extract them. Simply extract twice for each archive. Rename the directories if you like, add the mingw directory to your %PATH%, set your linker and include directories, set your target link libraries, and away you go. And now there's no reason left not to sign up for SpeedHack 2015. MinGW and A5 are neatly packaged up and ready to go, and so you should be too. My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Mark Oates
Member #1,146
March 2001
|
Edgar Reynaldo said: I have put together binaries for 5.1.11 for MinGW 4.8.1 if anyone is interested. Oh, noice! Quote: as well as all of allegro and its dependency's libraries NNOOOIICE! -- |
Edgar Reynaldo
Major Reynaldo
May 2007
|
Thank SiegeLord for getting this release ready in time for SpeedHack. Now that's Noiice!!!1111 My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Striker
Member #10,701
February 2009
|
Thanks SiegeLord and Edgar, i will give it a try. Nooice.
|
Bruce Pascoe
Member #15,931
April 2015
|
I tried the binaries, and for some reason Vorbis doesn't work (al_load_audio_stream() returns NULL), with either 32 or 64-bit builds. Not sure if anything else is broken. Self-built 5.1.11 binaries work fine. As a minor nitpick, is there any reason these depend on libpng and jpeglib? I use native image loading (GDIplus) for my own Windows builds. That's neither here nor there though--I'm more concerned about the Vorbis issue.
|
Edgar Reynaldo
Major Reynaldo
May 2007
|
Bruce Pascoe said: I tried the binaries, and for some reason Vorbis doesn't work (al_load_audio_stream() returns NULL), with either 32 or 64-bit builds. Not sure if anything else is broken. Self-built 5.1.11 binaries work fine. That doesn't necessarily mean the build is broken. Did you call al_init_acodec_addon()? Did you check the cwd? Did you use the same program code run from the same location with the same directory structure as when you built your own version of allegro? It could be a lot of different things causing it to return NULL. Edit My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Bruce Pascoe
Member #15,931
April 2015
|
This was swapping out the 5.1.10 self-built binaries and includes I was using (which worked) with the pre-built 5.1.11 ones in the same app, so yes, al_init_acodec_addon() was called. I'll try using a debug build and see what's up.
|
Edgar Reynaldo
Major Reynaldo
May 2007
|
Like I said, you may have a problem with a dll. You could still be using the old version of the dll, which would probably screw things up. But that's just an educated guess I guess. :/ My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Bruce Pascoe
Member #15,931
April 2015
|
Actually I'm using the static libs. I even double-checked that I used the right dependencies (the ones linked in the OP). What's interesting is that it works when I link against a dynamic build (including the provided debug build), only the static build fails. So it looks like I'll have to figure out how to enable logging on the static build.
|
SiegeLord
Member #7,827
October 2006
|
The situation is under control. Stand by for the fixed binaries . For logging, incidentally, you can do: al_set_config_value(al_get_system_config(), "trace", "level", "debug") before al_init(). "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Bruce Pascoe
Member #15,931
April 2015
|
So it was broken then? Good to know, that saves me some time diagnosing it. Out of curiosity, what was wrong?
|
SiegeLord
Member #7,827
October 2006
|
I keep forgetting about the acodec addon's "feature" of dynamic loading of the dependecies. By default, it doesn't link to any library but will instead try to open the DLL next to the executable (and a few other spots). In your case, it didn't find the OGG DLLs and refused to load OGGs as a result. It is more annoying than anything, but it does save you from distributing FLAC.dll if you're not using any FLAC files. What I'm doing now is simply recompiling the Allegro binaries with that feature disabled. "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Edgar Reynaldo
Major Reynaldo
May 2007
|
Aha! So it was a dll problem. My spidey sense still works! Coincidentally, the binaries I made don't seem to suffer from the same problem. "ex_stream_file.exe game_music.ogg" works ok on my end with statically built examples. SiegeLord, out of curiosity, what option enables/disables the dynamic loading of dlls for the acodec addon? My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Bruce Pascoe
Member #15,931
April 2015
|
I'm not SiegeLord, but nonetheless: The option is WANT_ACODEC_DYNAMIC_LOAD.
|
SiegeLord
Member #7,827
October 2006
|
Bruce Pascoe said: I'm not SiegeLord What! I've updated the binaries, hopefully now they're all set. For GDI+, incidentally, I think the reason I prefer libpng and libjpeg is because it leads to a bit more consistency between platforms... I think we did have some issues with GDI+, but honestly I can't remember them. I'll have to explore this question next time around. "For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18 |
Neil Roy
Member #2,229
April 2002
|
I tried this out using my current game "Deluxe Pacman 2" I am working on, which compiles fine with MinGW 4.7.0 & an older Allegro 5 version. I downloaded the MinGW and binaries for Allegro you supplied and compiled it all with Code::Blocks and the compiler you supplied. I use the switch -std=c11 to compile (C 2011 project). It seems to compile okay except I get the following errors... ||=== Clean: Debug in Deluxe Pacman 2 (compiler: GNU GCC Compiler) ===| ||=== Build: Debug in Deluxe Pacman 2 (compiler: GNU GCC Compiler) ===| c:\mingw\include\io.h|301|error: unknown type name 'off64_t'| c:\mingw\include\io.h|301|error: unknown type name 'off64_t'| c:\mingw\include\io.h|302|error: unknown type name 'off64_t'| c:\mingw\include\io.h|302|error: unknown type name 'off64_t'| c:\mingw\include\allegro5\file.h|34|error: expected specifier-qualifier-list before 'off_t'| c:\mingw\include\allegro5\fshook.h|75|error: expected specifier-qualifier-list before 'off_t'| c:\mingw\include\allegro5\fshook.h|101|error: unknown type name 'off_t'| ||=== Build failed: 7 error(s), 0 warning(s) (0 minute(s), 1 second(s)) ===| Again, I am ONLY using the compiler + Allegro binaries you linked to here. This seems relatively minor but it would be nice if I could get it running, thanks. Edit: Someone on other forums suggested adding "-Doff64_t=_off64_t" to the compiler flags. I tried this and it widdled the errors down to just 3... ||=== Build: Debug in Deluxe Pacman 2 (compiler: GNU GCC Compiler) ===| c:\mingw\include\allegro5\file.h|34|error: expected specifier-qualifier-list before 'off_t'| c:\mingw\include\allegro5\fshook.h|75|error: expected specifier-qualifier-list before 'off_t'| c:\mingw\include\allegro5\fshook.h|101|error: unknown type name 'off_t'| ||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
--- |
Mark Oates
Member #1,146
March 2001
|
Neil Roy!! Good to see you, old chap! -- |
Neil Roy
Member #2,229
April 2002
|
Thanks. Upon further investigation into my problem, it appears that there is a bug in the current MinGW so that if I compile as a C program with -std=c11 I get that error (also occurs with specifying certain C++ standards). So I switch to C++ compiling and now my game goes from running to freezing up during loading. I hate having to compile it with regular C++, I feel all dirty (I prefer C). (sigh) --- |
Bruce Pascoe
Member #15,931
April 2015
|
I prefer C too. C++ to me is the poster child for design-by-committee, like if you asked a Family Feud survey panel what they would like to have added to C and then implemented every single idea. But I digress.
|
Neil Roy
Member #2,229
April 2002
|
I guess there was a patch someone issued for this problem (in io.h), you can read about the problem here: http://sourceforge.net/p/mingw/bugs/2104/, which I tried out, but still there are errors... ||=== Build: Debug in Deluxe Pacman 2 (compiler: GNU GCC Compiler) ===| c:\mingw\include\allegro5\file.h|34|error: expected specifier-qualifier-list before 'off_t'| c:\mingw\include\allegro5\fshook.h|75|error: expected specifier-qualifier-list before 'off_t'| c:\mingw\include\allegro5\fshook.h|101|error: unknown type name 'off_t'| ||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| I did manage to find some minor problems (unrelated to this) with my own code, so something positive came out of it, but still. I would love to be able to use a newer version of the library with my C code. --- |
Edgar Reynaldo
Major Reynaldo
May 2007
|
@Neil Roy My Website! | EAGLE GUI Library Demos | My Deviant Art Gallery | Spiraloid Preview | A4 FontMaker | Skyline! (Missile Defense) Eagle and Allegro 5 binaries | Older Allegro 4 and 5 binaries | Allegro 5 compile guide |
Thomas Fjellstrom
Member #476
June 2000
|
What if you try gnu11 rather than c11? -- |
|
|