Allegro.cc - Online Community

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

This thread is locked; no one can reply to it. rss feed Print
 1   2   3   4 
Allegro 5.2.0 released!
MiquelFire
Member #3,110
January 2003
avatar

You install the nuget package, then just use the include files as needed in your source. The nuget package will add a property screen where you select what features you want, how you want it built, and it will handle the lib stuff for you.

It's like that pkg-configure (I think that's the command) on Linux.

---
Febreze (and other air fresheners actually) is just below perfumes/colognes, and that's just below dead skunks in terms of smells that offend my nose.
MiquelFire.red | +Me
Windows 8 is a toned, stylish, polished professional athlete. But it’s wearing clown makeup, and that creates a serious image problem. ~PCWorld Article

Edgar Reynaldo
Member #8,592
May 2007
avatar

Sorry, I don't know what you're talking about. What nuget properties page? I access the project properties by right clicking on the project and setting the include directories there. It's not detecting the allegro headers. "Cannot open include file 'allegro5/allegro.h' no such file or directory".

Edit
I figured out I need to use $(SolutionDir) as a root directory for it to work with relative paths.

Now I have to get it to link with allegro.

I'm confused which libraries to link to. Are the dynamic release libs not included in the package? If I want release do I have to link statically? Why is there no dynamic debug monolith? Or dynamic release monolith? The only monolith provided is allegro_monolith-static.lib.

Edit
I set the link directory and added allegro.lib to the additional libraries, and it says it still can't find it. :/

MiquelFire
Member #3,110
January 2003
avatar

{"name":"610435","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/0\/8\/084e43eb6c2f2ef0adfa6bfe1d7eb420.png","w":1307,"h":297,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/0\/8\/084e43eb6c2f2ef0adfa6bfe1d7eb420"}610435

2015 might have change things a tad, but this is what I was talking about with the property page.

Also, my include is define like this: $(ProjectDir)\include;$(IncludePath)

Then I just use #include <allegro5/allegro.h> (Note, $(ProjectDir)\include is a by product of using the SpeedHack makefile and allowing that to work with my code)

---
Febreze (and other air fresheners actually) is just below perfumes/colognes, and that's just below dead skunks in terms of smells that offend my nose.
MiquelFire.red | +Me
Windows 8 is a toned, stylish, polished professional athlete. But it’s wearing clown makeup, and that creates a serious image problem. ~PCWorld Article

Edgar Reynaldo
Member #8,592
May 2007
avatar

I'm still pretty new at using MSVS. I have some more questions.

1. How do I specify I want to build a dll? I can't seem to find the application type anywhere in any properties or settings page. Do I have to re-create the project all over again?

2. How do I get one project to build at a time? I told it to build only my DLL project, but it insists on linking the second project's object files which results in unresolved externals. It seems to think that the two projects are really one. I told it that the second project depends on the first one in Project Dependencies so I don't know what's up with it. It keeps insisting on linking object files that are only used in the second project.

3. Where do I look for the resulting *.lib and *.dll files once I get it to build my dll properly? So I can link my second project to the dll project.

Edit
4. So I recreated the project using Win32 Console application and DLL and now it says "LNK2019 unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ). I followed the advice from StackOverflow and set the linker subsystem type to Windows (it already was) and it still persists. It says it whether it's set to console or to windows. :P

I'm getting kind of tired of MSVS. :P

Michael Moffitt
Member #15,246
July 2013

This looks like a great update. Thanks to everybody involved for their hard work.

Are binaries (not a Nuget package) available for MSVC2015? I prefer managing libraries the "traditional" way, but if not the package is usable.

My game is made with Allegro (http://store.steampowered.com/app/363220/), perhaps it will benefit from a new build with the update library (I think it runs on 5.0.9 still).

The allegro.cc files page should probably be updated, too.

Edgar Reynaldo
Member #8,592
May 2007
avatar

I think the unresolved external reference to _main error is coming from the CRT. It says it's in the file MSVCRTD.lib, which corresponds to the Multi Threaded Debug DLL runtime. What were the allegro libs compiled with? I am using the dynamic debug allegro library from nuget with MSVS 2015.

Neil Roy
Member #2,229
April 2002

I may try one last time. I tried an install where I removed ALL files pertaining to Allegro 5. I'll try re-installing MinGW from scratch along with Allegro from scratch and see how that goes but I have my doubts. My paths are all fine, I done clean installs, clean builds.

If that works, I'll let you know, if not... I just won't bother. I don't work with this enough anymore.

Edgar Reynaldo
Member #8,592
May 2007
avatar

Neil Roy
Member #2,229
April 2002

Sorry, it was MY fault. I checked my paths and sure enough, there is another path it checks that had an older Allegro in it. Works fine now, thanks for all your work and help. I didn't mean to be a pain, I just don't work on this as much as I used to, so I am a little rusty at times. I'll recompile the game and put up a new version of it using your latest build.

It correctly reported 5.2.1 etc... on both versions as well. I guess I need to put a note somewhere reminding me where all my folders are to avoid future headaches (and unnecessary reports here).

Thanks again "Edgar" ;)

Edit: My game, now compiled with this version, can be downloaded here (game play video on the page too): http://home.cogeco.ca/~nroy15/games_index.html

AMCerasoli
Member #11,955
May 2010
avatar

Allegro 5.2!!! WTF!! I didn't know! Man it's incredible. Has passed 6 years since I first joined this forums... Just like a fine wine.

Niunio
Member #1,975
March 2002
avatar

@AMCerasoli: You should visit us more often. :)

-----------------
Current projects: Allegro.pas | MinGRo

Neil Roy
Member #2,229
April 2002

Allegro 5.2!!! WTF!! I didn't know! Man it's incredible. Has passed 6 years since I first joined this forums... Just like a fine wine.

Don't be a stranger! How's the music coming along?

Edgar Reynaldo
Member #8,592
May 2007
avatar

Okay, I solved all of my earlier problems.

I have some concerns with debugging my program with MSVS and Allegro with the Nuget package though.

1. Sources aren't included so I can't see what code is causing an exception. For instance, right now it's crashing in al_mutex_lock inside al_register_destructor inside al_create_timer. It looks like al_install_system succeeded though, so I don't know what would make it crash in al_create_timer, and I can't look at the sources because they don't come with the Nuget package.

2. allegro_debug.pdb wasn't copied over into the Debug folder when I installed the Allegro Nuget package, so I had to do it manually to get the symbols for allegro to show up in the debugger.

AMCerasoli
Member #11,955
May 2010
avatar

Niunio said:

@AMCerasoli: You should visit us more often.

Yes it's true... I'm not into the game programming world right now. I use to visit the forums from time to time, but don't make any comments.

Neil Roy said:

Don't be a stranger! How's the music coming along?

HEY YO! WHAT'S UP! It's fine, it's a hobby though. Right now I'm working on other projects. Conquer the world and that stuff, you know, like everyone.

Edgar Reynaldo
Member #8,592
May 2007
avatar

1. Sources aren't included so I can't see what code is causing an exception. For instance, right now it's crashing in al_mutex_lock inside al_register_destructor inside al_create_timer. It looks like al_install_system succeeded though, so I don't know what would make it crash in al_create_timer, and I can't look at the sources because they don't come with the Nuget package.

Here's a screenie of what I mean. You can see the local variable window is empty, so I can't view the value of any of the local variables, like the mutex and it's critical section member. So I can't tell why it's crashing, and I'm stuck. Every time I try to switch to the frame where it is crashing, it says I have to have the source file to view it. Ideas?

{"name":"610451","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/f\/a\/fa7eb5321ebe756665d19c4baf57c93b.png","w":1919,"h":847,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/f\/a\/fa7eb5321ebe756665d19c4baf57c93b"}610451

SiegeLord
Member #7,827
October 2006
avatar

You should be able to specify the sources used for debug files: https://msdn.microsoft.com/en-us/library/ms241613.aspx#Anchor_1

"For in much wisdom is much grief: and he that increases knowledge increases sorrow."-Ecclesiastes 1:18
[SiegeLord's Abode][Codes]:[DAllegro5]:[RustAllegro]

 1   2   3   4 


Go to: