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

Author Topic: MSVC project configs to have the CRT statically linked  (Read 5397 times)

0 Members and 1 Guest are viewing this topic.

nitram_cero

  • Full Member
  • ***
  • Posts: 166
    • View Profile
MSVC project configs to have the CRT statically linked
« on: June 05, 2009, 09:52:25 pm »
I had a bunch of problems releasing the dinamically linked Microsoft CRT.

Apparently when IE7 was installed, it installed a DLL that the CRT uses (without delay-load, dunno why).
That DLL generated a dependency to another DLL that comes only with Vista, but not WinXP.

So the only solution was to statically link the CRT in SFML and also in my application (God save open source :D), that made the dependecy dissapear.

It's a pain to make static-CRT configs each time I install SFML, so it would be nice to add a bunch of configs for that (like "Debug/release static with static CRT")

Thanks
-Martín

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
MSVC project configs to have the CRT statically linked
« Reply #1 on: June 05, 2009, 10:03:21 pm »
Well, 4 different configurations is already hard to maintain, and makes huge SDKs (> 20 Mb). I really can't add 4 more configurations :)

But you should have no problem if you provide the standard VC++ redistributables that you can find on microsoft's website. Do you?
Laurent Gomila - SFML developer

nitram_cero

  • Full Member
  • ***
  • Posts: 166
    • View Profile
MSVC project configs to have the CRT statically linked
« Reply #2 on: June 05, 2009, 10:18:41 pm »
The thing with distributables is that it's the "proper way", but most people don't know sh*t about dependencies and DLLs... and if the program doesn't run "out of the box", they'll just throw it away and you've lost a costumer.

I mean if you're well known and people want to play your game... that's cool, they'll even...:twisted:  read the README.txt (ZOMG):twisted:
If not (my case) you're doomed.
And shipping installers instead of "decompress and run" is not really appealing as most people won't install something, bloat the "start menu" and that just to try a demo.

Wait, I'm not asking for precompiled stuff, just the configuration in SVN vc2008 projects ... I would compile them myself without problems.

The thing is to fix the projects each time I update the projects to latest versions.
Well, I think they don't change a lot, right?

I don't think that >20 megs is too big. If you build all wxWidgets projects you get like... 1 GB of stuff (dll, lib, debug databases...)... now that's heavy :D

Regards
-Martín

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
MSVC project configs to have the CRT statically linked
« Reply #3 on: June 05, 2009, 10:27:29 pm »
Compiling SFML is simple (just open the sln file and click "build solution"), and yet a lot of people fail to do it because they just don't know about the different configurations. Adding one more parameter which creates 4 more configurations would just add more confusion. It would also add confusion for myself, when compiling all the configurations for a release ;)

I know, I never just say "yes" to users requests. Sorry for that ;)

Quote
The thing is to fix the projects each time I update the projects to latest versions.

Maybe you can create a patch file, so that this step is reduced to only 2 clicks?
Laurent Gomila - SFML developer

Tank

  • SFML Team
  • Hero Member
  • *****
  • Posts: 1486
    • View Profile
    • Blog
    • Email
MSVC project configs to have the CRT statically linked
« Reply #4 on: June 06, 2009, 01:00:11 pm »
Quote
I know, I never just say "yes" to users requests. Sorry for that ;)

You're known for that! SCNR ;)
In fact, it keeps the library clean. And if there's something really important, I'm sure users will be able to convince you.

nitram_cero

  • Full Member
  • ***
  • Posts: 166
    • View Profile
MSVC project configs to have the CRT statically linked
« Reply #5 on: June 13, 2009, 11:59:30 am »
Quote from: "Laurent"

Maybe you can create a patch file, so that this step is reduced to only 2 clicks?


I could try, but there's something creepy about diff'ing microsoft project/solution format.

But I'll do it, thanks

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
MSVC project configs to have the CRT statically linked
« Reply #6 on: June 13, 2009, 12:10:07 pm »
Quote
I could try, but there's something creepy about diff'ing microsoft project/solution format.

It's pure XML, and there's nothing creepy about diff'ing XML.
Laurent Gomila - SFML developer

nitram_cero

  • Full Member
  • ***
  • Posts: 166
    • View Profile
MSVC project configs to have the CRT statically linked
« Reply #7 on: June 13, 2009, 12:18:27 pm »
Really? great.