• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
Glass_Knife

MinGW *.exe not a valid win32 application

16 posts in this topic

Been banging my head on the wall.  

 

Windows 7

Eclipse Helios CDT

MinGW toolchain.

 

Simple hello world compiled gives this error, and I have not idea.  Googled for two hours and searched all property dialogs to find nothing.

 

GAHHHH!!!!  Ironically I just read this article the other day and thought "Well that's not true."  http://www.drdobbs.com/tools/just-let-me-code/240168735

 

Anyways, any help is appreciated.

 

 

0

Share this post


Link to post
Share on other sites

On a side note, I just downloaded Visual Studio 2010 so eclipse would "just work."  It doesn't.  It seems while I was working with libraries and Java and the web and stuff, C++ by hand because something that a new programmer can't do anymore, which is kind of sad.

0

Share this post


Link to post
Share on other sites
Which MinGW version are you using? I'm using TDM-GCC 4.8.1 with Eclipse Luna (before that with Kepler and Juno) and never had any problem like that.
0

Share this post


Link to post
Share on other sites

I have the same version.  Just downloaded it on Friday.  I am also using the newest Eclipse (Luna).

0

Share this post


Link to post
Share on other sites

This can happen if you've accidentally targeted a different architecture from the one you're running, so give the project settings a check. You could be building a 64-bit binary and then trying to run it on a 32-bit copy of Windows, as an example.

Edited by Indifferent
0

Share this post


Link to post
Share on other sites

This can happen if you've accidentally targeted a different architecture from the one you're running, so give the project settings a check. You could be building a 64-bit binary and then trying to run it on a 32-bit copy of Windows, as an example.

 

I'm on windows 7, so there should be no problem running either 32 or 64 bit apps.  I have been trying to find a setup for teaching C++ that could use as many of the same tools as possible but still allow for Mac, Widows, or Linux.  I settled on Eclipse, but I had hoped installing and configuring the libraries and tool chains would be easier.

0

Share this post


Link to post
Share on other sites

What happens if you compile hello world from the command line using MinGW? At least that should tell you if the problem is the compiler or the IDE.

 

Put hello.cpp in a directory, command just g++ hello.cpp, then run a.out.

 

(This assumes your bin and include directories are set up by default, may not be the case if you have only used it via the IDE)

 

I've not had this problem with MinGW myself.

Edited by Aardvajk
2

Share this post


Link to post
Share on other sites


What happens if you compile hello world from the command line using MinGW? At least that should tell you if the problem is the compiler or the IDE.

 

This was my thought for a next step.  I'll try it tonight.  I suspect I did something weird when installing it.  It seemed like a lot places to go wrong are built into the installer.

0

Share this post


Link to post
Share on other sites

This can happen if you've accidentally targeted a different architecture from the one you're running, so give the project settings a check. You could be building a 64-bit binary and then trying to run it on a 32-bit copy of Windows, as an example.

 
I'm on windows 7, so there should be no problem running either 32 or 64 bit apps.  I have been trying to find a setup for teaching C++ that could use as many of the same tools as possible but still allow for Mac, Widows, or Linux.  I settled on Eclipse, but I had hoped installing and configuring the libraries and tool chains would be easier.


Windows 7 has both 32-bit and 64-bit editions. Definitely find out for sure which you're using!

http://windows.microsoft.com/en-us/windows7/find-out-32-or-64-bit
2

Share this post


Link to post
Share on other sites

Sadness.  After some reboots, things just started working.  So no idea what was wrong...

0

Share this post


Link to post
Share on other sites

There was still some weirdness with -staticlib preprocessor flags, but it worked.

0

Share this post


Link to post
Share on other sites

There was still some weirdness with -staticlib preprocessor flags, but it worked.

 

Not too sure what -staticlib would have to do with the preprocessor, could you elaborate? I'd expect -staticlib to be a linker command to build a lib file rather than an exe, although I thought for MingW that was just -static?

0

Share this post


Link to post
Share on other sites

 

There was still some weirdness with -staticlib preprocessor flags, but it worked.

 

Not too sure what -staticlib would have to do with the preprocessor, could you elaborate? I'd expect -staticlib to be a linker command to build a lib file rather than an exe, although I thought for MingW that was just -static?

 

 

So after I installed Visual Studio 2010 Express and rebooted, I fired Eclipse back up to try and use that.  Just for fun, I tried the MinGW *.exe again.  This time there was no error.  But nothing happened.  No error, no "Hello World!" output in the console, nothing.

 

Navigating to the Debug folder and running the exe by hand gave this error:

 

"The program can't start because libgcc_s_dw2-1.dll is missing from your computer." 

 

I had to add "-static-libgcc -static-libstdc++" to the linker flags to get it working...

0

Share this post


Link to post
Share on other sites
Well, the alternative would have been to add libgcc_s_dw2-1.dll next to the created application or put it into the path.

The same goes for MSVC as well: you need to add/install the runtime DLLs (unless you compile with /MT instead of the default /MD), otherwise the program won't work. The difference is, the runtime will be in the path by default on development machines (but often not an the average user's). That's why you see those "I gave my program to a friend and he cannot use it"-threads every now and again.

Switching to static linkage for the runtime is obviously an option, but has ramifications: for example it can cause severe problems when you need to dynamically link C++ libraries which require you to pass ownership of objects over the DLL boundary (like for example Qt). Edited by BitMaster
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0