Allegro.cc - Online Community

Allegro.cc Forums » Allegro Development » Allegro 5.0.10 released!

This thread is locked; no one can reply to it. rss feed Print
 1   2 
Allegro 5.0.10 released!
Trent Gamblin
Member #261
April 2000
avatar

In my case, it defaults to link static run-time and produce executables without unwanted MinGW DLL. For games this is a good thing, I think.

`-static-libgcc -static-libstdc++` is all you need with regular MinGW.

Note: I don't even build my libraries with those switches, just the game.

Michał Cichoń
Member #11,736
March 2010

That's true. I cannot recall more arguments. I just know people are using it.

"God starts from scratch too"
Windows Allegro Build Repo: http://targonski.nazwa.pl/thedmd/allegro/

Apollo_EE
Member #14,148
March 2012

Thanks Michal. I tested it and it works great. Just had to link openal and libwinmm.a which seemed to be unnecessary in 5.0.6, but everything is working nicely again.

LennyLen
Member #5,313
December 2004
avatar

I don't understand why people use the "tdm" version of MinGW in the first place...

At one point (I'm not sure if it's still the case), they were releasing newer versions of GCC before the MinGW team were.

ArekXV
Member #15,158
May 2013

Thanks Michal for MSVC2010 version! :D

Here's a contribution from me. :)

Allegro 5.0.10 - Compiled CHM API reference
https://www.dropbox.com/s/8oazl79tyfoad6n/allegro-5.0.10-doc.7z

Enjoy! :)

Edgar Reynaldo
Member #8,592
May 2007
avatar

@ArekXV
Hey, nice contribution with the CHM docs!

It would be awesome if allegro's build system was capable of producing a CHM manual as well. How much work would that be? Are there any good guides for writing hhc / hhp files? I forget what all is involved in making chm docs.

Michał Cichoń
Member #11,736
March 2010

If someone is looking for GCC for windows there is one up to date version prepared by Stephan T. Lavavej there. It is up to date in order to test newest C++ features.

"God starts from scratch too"
Windows Allegro Build Repo: http://targonski.nazwa.pl/thedmd/allegro/

Trent Gamblin
Member #261
April 2000
avatar

Interesting. The guy works for Microsoft and maintains a version of GCC. :D.

ArekXV
Member #15,158
May 2013

Well you have HTML Help Workshop which is free, it's not that difficult to understand. You have a HHP file which is a project file, HHC is a content file and there is also an index file which is not required, but helpful.

Here's what I've done. :)

1. Download the whole API reference from allegro site using wget - you can get it for windows here - http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-setup.exe
I've used this commad:
wget.exe --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=windows --domains alleg.sourceforge.net --no-parent alleg.sourceforge.net/a5docs/5.0.10

After it's finished it will create folder structure:
alleg.sourceforge.net/a5docs/5.0.10

You can stop here if you don't need the CHM version. HTML files work okay. :)

Then I've made a simple ruby script for making HHP, HHC and index files so that I don't have to add all of those content file index and stuff by myself, you can get it here:
https://www.dropbox.com/s/2tn6j5pv8unz6n5/generateHHP.7z

You put it inside:
alleg.sourceforge.net/a5docs/

And run it, enter folder name, which in this case is 5.0.10 and it will generate HHP, HHC and index files in it. It will also remove searchbox from all html files because javascript doesn't work very well in CHM.

After that you just run the chmproject.hhp file and compile the file which should be saved inside:
alleg.sourceforge.net/a5docs/

And that's it. :)

Also here's 5.1.8 - Compiled CHM api:
https://www.dropbox.com/s/3lka1o1xzwr0cxg/allegro-5.1.8-doc.7z

Peter Wang
Member #23
April 2000

Allegro sources come with pregenerated documentation so there is no need top scrape the web site.

ArekXV
Member #15,158
May 2013

Haven't really looked at it. I see it now. :)

You can skip the download step and put the contents of generateHHP.7z into docs/html of allegro source. :)

Run generateHHP.bat and enter refman as folder name.

Rest is the same. :)

HTML Help Workshop is available here - http://go.microsoft.com/fwlink/?LinkId=14188

EDIT:

I've made a batch script which automatically generates necessary files and compiles CHM file.

All you need to do is to put the contents into docs/html of allegro source run generateCHM.bat and press Enter to begin.

Get it here:
https://www.dropbox.com/s/93queu1a4nvv4wc/generateCHM.7z

Please note that HTML Help Workshop needs to be installed for this to work. This script will look for it in Program Files directory.

angelvet
Member #15,222
July 2013
avatar

Are there any chance to have allegro build for Visual Studio 2012 with Windows XP (v110_xp) toolset?

ArekXV
Member #15,158
May 2013

You can use standard MSVC2012 version for that, it's the same - http://targonski.nazwa.pl/thedmd/allegro/5.0.10/allegro-5.0.10-msvc-11.0.7z

angelvet
Member #15,222
July 2013
avatar

ArekXV thanks for reply.

With this build there is one small problem, it is not targeting Windows XP operating system.
According to this post http://blogs.msdn.com/b/vcblog/archive/2012/10/08/10357555.aspx
To target Windows XP application and its dependencies must be built with v110_xp platform toolset selected.

Please reply if I'm missing something.

Michał Cichoń
Member #11,736
March 2010

I will look at XP compatible build on Friday or Saturday.

"God starts from scratch too"
Windows Allegro Build Repo: http://targonski.nazwa.pl/thedmd/allegro/

angelvet
Member #15,222
July 2013
avatar

Thanks.

ArekXV
Member #15,158
May 2013

Hmm you might be missing something here. I've tried compiling my project in MSVC2012 with Visual Studio 2012 - Windows XP (v110_xp) toolset and it compiled without any problems.

Again, I used this version - http://targonski.nazwa.pl/thedmd/allegro/5.0.10/allegro-5.0.10-msvc-11.0.7z

Can you write what kind of errors are you getting exactly?

angelvet
Member #15,222
July 2013
avatar

This is not a compilation or linking issue, application just not running on Windows XP system, it is not compatible with it.

Did you try to run your application on Windows XP? Is it working?

Probably you'll get some error that I had:

---------------------------
Main.exe - Entry Point Not Found
---------------------------
The procedure entry point K32GetModuleFileNameExA could not be located in the dynamic link library KERNEL32.dll.
---------------------------
OK
---------------------------

ArekXV
Member #15,158
May 2013

That's not Allegro's issue (probably), you're probably using something which uses Process Status API, i.e. psapi.lib. I had a similar problem, you need to define a preprocessor directive:

#SelectExpand
1#define PSAPI_VERSION 1

Also you can try this:

#SelectExpand
1 #define PASAPI_VERSION 1 2 #undef K32EnumProcesses 3 #undef K32EnumProcessModules 4 #undef K32EnumProcessModulesEx 5 #undef K32GetModuleBaseNameA 6 #undef K32GetModuleBaseNameW 7 #undef K32GetModuleFileNameExA 8 #undef K32GetModuleFileNameExW 9 #undef K32GetModuleInformation 10 #undef K32EmptyWorkingSet 11 #undef K32QueryWorkingSet 12 #undef K32QueryWorkingSetEx 13 #undef K32InitializeProcessForWsWatch 14 #undef K32GetWsChanges 15 #undef K32GetWsChangesEx 16 #undef K32GetMappedFileNameW 17 #undef K32GetMappedFileNameA 18 #undef K32EnumDeviceDrivers 19 #undef K32GetDeviceDriverBaseNameA 20 #undef K32GetDeviceDriverBaseNameW 21 #undef K32GetDeviceDriverFileNameA 22 #undef K32GetDeviceDriverFileNameW 23 #undef K32GetProcessMemoryInfo 24 #undef K32GetPerformanceInfo 25 #undef K32EnumPageFilesW 26 #undef K32EnumPageFilesA 27 #undef K32GetProcessImageFileNameA 28 #undef K32GetProcessImageFileNameW

Now I'm not 100% sure but I don't think that Allegro uses Process Status API.

Main cause for this error is because versions of Windows after Windows XP have moved functions (like those named upwards) from Process Status API (psapi.lib) to main kernel32.lib to gain more speed.

If Allegro uses psapi.lib then that's other story, and then it needs to be recompiled with MSVC2012 - Windows XP toolchain WITH preprocessor directive PSAPI_VERSION=1

Check your other libraries you are or might be using as well, if any of them are using psapi.lib then they should need to be recompiled too.

Michał Cichoń
Member #11,736
March 2010

I managed to experiment with XP mode but weekend passed before I put a build together on that. There is a chance I will be near my dev PC tomorrow so I give it a try.

"God starts from scratch too"
Windows Allegro Build Repo: http://targonski.nazwa.pl/thedmd/allegro/

angelvet
Member #15,222
July 2013
avatar

Yes you right.

But if allegro don't use PSAPI explicitly, it may use it implicitly via winmm or shell32 etc. libraries it linked with.

I think that even just small example allegro app won't run on xp with current build.

 1   2 


Go to: