Allegro.cc - Online Community

Allegro.cc Forums » Installation, Setup & Configuration » Allegro build problem on windows 10

Credits go to Peter Hull and Polybios for helping out!
This thread is locked; no one can reply to it. rss feed Print
 1   2 
Allegro build problem on windows 10
Neil Roy
Member #2,229
April 2002
avatar

bamccaig said:

Having DLLs in the PATH is a necessary evil in Windows to have the convenience to use the command line without having to type paths or cd all the time. It defeats the purpose entirely if you can't just type "command arg..."

For the developer, no. As a developer you do not want the DLLs for your project in your path. DLLs for allegro or whatever library you are programming for should not be in your path. The reason is that if you statically link a project but somehow forget and accidentally link to a DLL that ends up being required for your project, than you won't see this problem until someone reports back to you that your work doesn't work on their machine... because you linked to a DLL you should not have or you forgot a DLL that was needed; because you had them in your path so the problem never shows up. Just ask Edgar (no offence to him intended) about the last Allegro build of his. He had the DLLs in his path so he missed the fact that he linked against DLLs for the static version of Allegro. This made it more difficult to spot what the problem was when it worked for him but not for me. In those cases one starts to think it is obviously something the end user done wrong as it works for you.

These days, with so much disk space, there is no need to have DLLs in your path anymore (or have them at all, just statically link) as it leads to these sorts of problems. But at the very least, as a developer, you should not have the DLLs for the libraries you are working with in your path so you can easily spot problems as I already described. I never have SDL or Allegro or anything like that in my path and you will find that all modern programs don't put DLLs in your path either! Look at games you installed, did they put things like SDL in your path or do you find the DLLs in their own folder? Putting them in your path is from Windows 95, 98, maybe XP days.

Edgar Reynaldo
Member #8,592
May 2007
avatar

You have to have entries in your path, at least for your system folders, and anything else you want to run. But you should keep custom (not system) dlls outside those folders and temporarily modify the path in a separate environment specifically for testing and running your app, unless you just keep all your dlls in the same folder as your program, which is what you should do.

Neil Roy
Member #2,229
April 2002
avatar

That's what I do. My DLLs are all in one folder, and I move the ones I need to run the game into the folder the game is in to test it. When I set up my game to install, IF it has DLLs (I normally statically link, so not a problem), they get installed along with the game in the same folder. But to develop the game with DLLs in the path? No way. I need to know if I am missing a DLL or if my game is trying to load one, and I won't get that if they are in the path.

Mitch Randall
Member #16,706
July 2017

Well, at least I got my allegro to compile and then run the examples. I can compile all my stuff and everything works.

I agree I should upgrade to the newest version of msys and mingw.

Right now, I can't say that your (Polybios) tutorial works, because when I was finished, programs wouldn't run. I suspect there was a dll missing, but it wasn't the allegro monolith.

When I would try to run one of the allegro examples from the msys shell, nothing would happen. It's as if I just hit return without typing the program name (ex_bitmap, for instance). I moved the monolith to the examples directory, and still something was missing. (As I said, the OS complained that an entry point was missing. If I ever recreate the issue, I'll publish the exact message verbatim.)

For now, I just needed to be able to compile so I can get my work done.

Thanks so much for the discussion. I really appreciate this community. I have gotten a lot out of it for many years.

For example, I wrote the the Doppler weather radar display that is in the DOW storm chaser trucks with allegro in the 90's. It's been on TV (many a news channel and Discover), and has served science for two decades.

Neil Roy
Member #2,229
April 2002
avatar

For testing the examples, just hop on over to regular Windows, navigate to the folder they are in and double click them.

Tyler Wrobel
Member #16,594
November 2016

You should make a website specifically build allegro oriented.

 1   2 


Go to: