Linker error (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).
Post Reply
Tc27
Trader
Trader
Posts: 22
Joined: Thu Jan 31, 2008 7:06 pm

Linker error (vc8)

Post by Tc27 »

I figure things are going to get broken a bit now that a stable release has been made, but...

Updated svn to current; trying to build vega-vc8 fails.

Code: Select all

LINK : fatal error LNK1104: cannot open file 'libboost_python-vc80-mt-1_35.lib'
Also, the vc8 project is still targeting the old data4.x directory for output.
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 »

The 'libboost_python-vc80-mt-1_35.lib' error should have been fixed a while ago. Make sure you did a SVN Update inside of the vega-vc8 directory as well).

I just also fixed the 'win32' directory problem so update to 12321(a nice palindromic revision)

Also, I just tried out VC9 and it works flawlessly if I just let it import the vc8 projects.
And along with that I just discovered the "/MP" option that lets me use all four cores for compiling.
[err...nevermind, apparently python's very particular about building it with the same vc++ version that you are using. still, should be easy to fix later]
Tc27
Trader
Trader
Posts: 22
Joined: Thu Jan 31, 2008 7:06 pm

Post by Tc27 »

ace123 wrote:The 'libboost_python-vc80-mt-1_35.lib' error should have been fixed a while ago. Make sure you did a SVN Update inside of the vega-vc8 directory as well.
I generally update the source, data and project directories in the one pass if build problems crop up, before posting here, but that hasn't fixed it this time. I'm still getting the link error; searching all the trees didn't find the file in question.
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 shouldn't be getting that error unless you have some old object files lying around somewhere.
Try doing a "Clean" from the project menu before building.
Tc27
Trader
Trader
Posts: 22
Joined: Thu Jan 31, 2008 7:06 pm

Post by Tc27 »

"Rebuild" did the trick. Thanks; noted for future reference.
Tc27
Trader
Trader
Posts: 22
Joined: Thu Jan 31, 2008 7:06 pm

Post by Tc27 »

Related only in the sense that it's still vc++, but this doesn't seem worth starting another thread...

The compiler doesn't like a couple of changes from a recent commit; it complains that two functions declared as returning values don't do so.

universe_util_generic.cpp:369 in UniverseUtil::getRelationModifier
and
cmd/pilot.cpp:131 in Pilot::GetEffectiveRelationship
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 »

Thank you for that -- why in the world those *aren't* errors in GCC is something I don't understand.

I committed a patch for that. And now I'll add the "Control reaches end of non-void function" warning to be colored in bright red by my colorizer script :-p
pyramid
Expert Mercenary
Expert Mercenary
Posts: 988
Joined: Thu Jun 15, 2006 1:02 am
Location: Somewhere in the vastness of space
Contact:

Post by pyramid »

What script is it that you are using? It would be nice if you'd share (those pesky non-POD errors...).
Tc27
Trader
Trader
Posts: 22
Joined: Thu Jan 31, 2008 7:06 pm

Post by Tc27 »

ace123 wrote:Thank you for that -- why in the world those *aren't* errors in GCC is something I don't understand.
I must say I was surprised that those made it through to a commit in the first place, but this GCC behaviour does explain it. Odd that a microsoft compiler did something that makes sense... :P

Apparently you can make more recent GCCs treat this as an error using the -Werror=return-type switch, if you don't mind it also erroring on functions that default return type to int.
Post Reply