Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: Wierd debug link error  (Read 1749 times)

0 Members and 1 Guest are viewing this topic.

slotdev

  • Sr. Member
  • ****
  • Posts: 385
    • View Profile
Wierd debug link error
« on: October 04, 2011, 10:05:00 am »
Hi Folks

I've written an SFML game framework, which I've given to other people in my dev team. I've compiled the SFML libs and zipped up the resulting folders, source code and all, and on linking a debug version, this is what I get:

1>Linking...
1>LINK : warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library
1>sfml-graphics-s-d.lib(jmemnobs.obj) : fatal error LNK1103: debugging information corrupt; recompile module

Release mode works fine. We're all using VS2005.

Any ideas?
SFML 2.1

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32504
    • View Profile
    • SFML's website
    • Email
Wierd debug link error
« Reply #1 on: October 04, 2011, 10:30:03 am »
If I remember correctly, static libs of SFML dependencies (such as libjpeg) were recompiled with VS2008, making them incompatible with VS2005.

As a temporary solution you can use dynamic SFML libs. A more tedious one would be to recompile all the external dependencies with VS2005. But you should rather upgrade your VS, 2005 is quite outdated ;)
Laurent Gomila - SFML developer

slotdev

  • Sr. Member
  • ****
  • Posts: 385
    • View Profile
Wierd debug link error
« Reply #2 on: October 04, 2011, 10:35:23 am »
I should have said: it works fine on my system!

Shall I use VS2010 then? :p
SFML 2.1

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32504
    • View Profile
    • SFML's website
    • Email
Wierd debug link error
« Reply #3 on: October 04, 2011, 10:45:18 am »
Yes, any version >= 2008 should work.
Laurent Gomila - SFML developer

slotdev

  • Sr. Member
  • ****
  • Posts: 385
    • View Profile
Wierd debug link error
« Reply #4 on: October 09, 2011, 10:45:20 pm »
Quote from: "Laurent"
If I remember correctly, static libs of SFML dependencies (such as libjpeg) were recompiled with VS2008, making them incompatible with VS2005.

As a temporary solution you can use dynamic SFML libs. A more tedious one would be to recompile all the external dependencies with VS2005. But you should rather upgrade your VS, 2005 is quite outdated ;)


Laurent, I need to fix this urgently, and spending a load of money on new MSVC for all our developers isn't possible (yet!).

Can you give me a list of all the external dependencies of SFML, and where to get them, so that I can rebuild under 2005.

Thanks in advance
SFML 2.1

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32504
    • View Profile
    • SFML's website
    • Email
Wierd debug link error
« Reply #5 on: October 09, 2011, 10:50:30 pm »
The libraries to recompile are those that you can find in the extlibs/lib/msvc directory of the SFML SDK.

Where to get them? on Google ;)

By the way, VC++ 2010 express is free. VS 2005 won't be supported anymore with SFML 2.
Laurent Gomila - SFML developer

slotdev

  • Sr. Member
  • ****
  • Posts: 385
    • View Profile
Wierd debug link error
« Reply #6 on: October 09, 2011, 11:07:11 pm »
Can you install VS2010 and VS2005 side by side?

What is strange is that it all works fine on my system with VS2005......and I don't know how or why.

EDIT: I need VS2005 as I have a lot of legacy systems that cannot be updated (as they're not my code) so I must keep using VS2005 :(
SFML 2.1

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32504
    • View Profile
    • SFML's website
    • Email
Wierd debug link error
« Reply #7 on: October 10, 2011, 08:02:03 am »
Quote
Can you install VS2010 and VS2005 side by side?

Yes of course. I always have at least two versions of VS installed, never had any problem with that.

Quote
What is strange is that it all works fine on my system with VS2005......and I don't know how or why

Have you checked the version? Maybe 2005 SP1 is compatible with 2008.

Quote
I need VS2005 as I have a lot of legacy systems that cannot be updated (as they're not my code)

I don't get. What can't be updated, and what does it have to do with code?
Laurent Gomila - SFML developer