Downloaded from SVN, can't compile in VC8.

Trying to build your own version of Vega Strike and having problems? Unix users, paste your config.log here (stderr output alone is not helpful).
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Downloaded from SVN, can't compile in VC8.

Post by spiritplumber »

------ Build started: Project: vegastrike, Configuration: Debug Win32 ------
Linking...
Creating library ..\Data4.x\bin\vegastrikeD.lib and object ..\Data4.x\bin\vegastrikeD.exp
libpng3.lib(pngerror.obj) : error LNK2019: unresolved external symbol __iob referenced in function _png_default_error
libpng3.lib(pngrutil.obj) : error LNK2001: unresolved external symbol __iob
libpng3.lib(pngwutil.obj) : error LNK2001: unresolved external symbol __iob
..\Data4.x\bin\vegastrikeD.exe : fatal error LNK1120: 1 unresolved externals
Build log was saved at "file://c:\GAMES\vegastrike-devel\vega-vc7\vegastrike_Win32_Debug\BuildLog.htm"


I get this while using msvcrtd but not libcmt. By doing the opposite, I get a shitload more errors. By using both I get it telling me that some functions have been redefined. Is there a way to tell it "Just pick one, they do the same thing anyway"?

How do I deal with it? Please help :(
vegastrike - 4 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

:(
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Fixed -- you need to tell it to include zlib, also, you may need to rebuild libpng. No big deal. :) I can upload the usable zlib and libpng somewhere if you want?
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Now it compiles, but it crashes (both in VS and WCU), with me unable to see any meaningful debugging info.

I give up :( sorry, I tried.

What I will do is reinstall everything (including windows), then try again to follow the instructions to the letter, and keep you posted.
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Okay, reinstalled everything (I do mean everything: Windows, VC 8, the SDK's....), downloaded from CVS... SAME EXACT ERROR AS ABOVE.

And absolutely no reply as far as getting help goes.

Bye guys, it's been fun :) I did the best I could.
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
Zeog
ISO Party Member
ISO Party Member
Posts: 453
Joined: Fri Jun 03, 2005 10:30 am
Location: Europe

Post by Zeog »

I've never compiled SVN, but I did get the CVS compiled with my Linux.
Are you sure that the "vega-vc7" is the right one for you? I mean you have VC8--don't know if that makes a difference, but I remember a discussion about the VC support, some versions were working, some not. This thread contains some of the problems and solutions.
In linux the "vegastrike" + "datax.x" + "music" is all you need... Sorry.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Can I make a Windows binary in Linux easily?

Also, I did the same steps as here -- libpng and zlib, etc. -- guess what... no changes. I got it to compile but it still crashes consistently (Priv Remake, WCU, Gemini Gold and VS)
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Well... sorry for the delay, but you know I'm not around on weekends and I think I'm one of the very few experimenting with VC8.

As a matter of fact, you really should stay away from VC8 for now, because it has a weird bug on the STL that causes serious memory leaks. I don't know how much it affects VegaStrike, but I chose to wait for the patch to fix it (M$ promised to post one such patch shortly). The temporary solution is slightly out of my reach (rebuilding the CRT - I just couldn't get the source... it seems only the Pro version gets the source).

Anyway... I'll see if I can get it to build out of the box, even with the leak, and commit a vega-vc8 eventually.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

What would you recommend I use to make a win version right now?

I traced the problem to libpng -- libpng3 doesn't play nice with VC8 and when I tried to compile my own, it compiles OK but causes a crash. I don't know why -- haven't had time to trace teh bug. In addition, I don't know how to use the debugger on a library...
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Well... there's the Toolkit 2003 that runs fine, they say. Oh... no multithreading. So it doesn't work for VS (the music needs multithreading).

Hm... I guess you have to use gcc then. I never set up gcc to work in Windows, although I've been told it is possible. I've used DevCPP (which uses mingw=gcc), but I don't think VS builds with DevCPP (it's using a rather old version of mingw).

I use Visual Studio 6 (VC6 - The best version I know aside from VC8, but VC8 has that nasty bug). If you can't get VC6, then you're left with no choice: get GCC working on windows. I imagine it isn't a piece of cake, though.

In any case, I'll try my luck with VC8, as it's going to be the best option once they fix that damn CRT - even if I can't build a new CRT, someone else might... it's just getting our hands on a patched version. I've already made VS work with VC8, only using the Ogre branch, which is a tad out of date. Perhaps some new changes brought some trouble, but I doubt it's too hard to fix. I'll let you know how it goes.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Okay, pretend I'm stupid (not hard to do: I AM stupid :) ) and tell me which one to try first...
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

If you can get VC6, that would work like a charm (almost).
At least, I have projects that work out of the box for it.
I don't know if I commited them... I don't think so since I do modifications that I wouldn't want commited (like deleting projects I'm not working on to reduce clutter, for instance).

The problem with VC6 is that support for it will be dropped as soon as the Ogre port gets on its feet, because newer versions of Ogre will drop support for it. Now... if VC8 doesn't fix that bug, it could mean trouble. But I'm pretty sure that they will, or at least we can get our hands on a patched version of the CRT (probably from M$ themselves - failing that, Ogre guys may be able to help).
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

I can get VC6... what project should I use? I can also get VC7 (sort-of, the school has a site license, I'm not supposed to take it home but eh.)
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Okay, I got VC7.

What do I use to grab SVN? It's full of branches. ^_^;

(again, sorry for bothering but my brain is going to be firmly locked in stupid/clueless mode until I have an idea of what's going on -- safest way to get things started again)
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Grab TortoiseSVN, install it - of course, and check out from https://svn.sourceforge.net/svnroot/vegastrike/trunk

From then on, it's quite easy: just use the project in vega-vc7, and it should work.

I don't use vc7, but I think Daniel does, so if you have any trouble he could help. I could too... but it'll take longer.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

It works fine now; I downloaded from CVS and started to put in the stuff that probably never got there, like the autolanding and the new leech system.

thanks! :) should I compare cvs and svn? what's the difference?
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

A few bugfixes, I think.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
ace123
Lead Network Developer
Lead Network Developer
Posts: 2560
Joined: Sun Jan 12, 2003 9:13 am
Location: Palo Alto CA
Contact:

Post by ace123 »

I can't check at the moment, but I remember that I got some crashes on load using VC8.

You may want to try running under release instead of debug mode... that may have gotten around some crashes. (But you will have to recompile)

VC 8 is pretty bad, so it takes a lot of time fighting with it to get it to run.

VC Toolkit 2003 is reported to work as well if you are looking for a good free compiler. (VS does not use threads... I believe the only multithreading is done within the OpenAL library and SDL mixer in the soundserver, not in VS itself.

As far as I know, VC 6 still does work since OGRE has not been mixed in, as long as you select the "Boost 129" configuration. And VC 6 is the only one that works under WINE in Linux.

The wiki page should cover everything:
http://vegastrike.sourceforge.net/wiki/ ... _Compiling
and if it does then add it or post something on the Talk page.

You may also want to look at:
http://vegastrike.sourceforge.net/wiki/ ... _Compiling
and you might be able to get cygwin to work.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

I got vc7 and it works really cookies :) I'm doing some needed AI stuff, namely, spawned fighters landing back on the carrier once the fight is over to avoid clutter.
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Okay, I've done some useful stuff. How do I upload it? Who do I send it to? :)
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
ace123
Lead Network Developer
Lead Network Developer
Posts: 2560
Joined: Sun Jan 12, 2003 9:13 am
Location: Palo Alto CA
Contact:

Post by ace123 »

You can make a zip or tar.gz of the files and attach it to the forums or upload it to ftp space.
It shouldn't be very large if you just modified text files, so attaching should be fine.

If you want to mail it to me, ace123(a)users.sourceforge net should work

If you have a SourceForge user, we can also add you to the Sourceforge project so you have SVN access.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Yes please!

For now the source is at

http://www.spiritplumber.com/WCU/vegast ... _feb26.zip

hope it helps!!!
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Do I try again with SVN now? what do we do? :)


I would REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY like to avoid branching the exe.
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

I've been REALLY REALLY REALLY REALLY busy.
But I intend to make that vega-vc8 eventually... no kidding. So, please, be patient. Meanwhile... patches against current SVN would be the best way to post the changes, I imagine.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
spiritplumber
Developer
Developer
Posts: 1831
Joined: Mon Mar 07, 2005 10:33 pm
Contact:

Post by spiritplumber »

Eeeep, what do I feed to tortoiseSVN to grab the latest stuff?

and did you get mine? I'm still messing w/ the AI.
My Moral Code:
- The only sin is to treat people as if they were things.
- Rules were made for people, not the other way around.
- Don't deceive. Real life is complicated enough.
- If all else fails, smash stuff.
Post Reply