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

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Nexus

Pages: 1 ... 5 6 [7]
General / Compatibility to other computers
« on: April 14, 2008, 06:57:29 pm »
First of all, I have used SFML since some weeks, for my current graphic requests it's perfect! At the moment I am creating a little 2D Space Shooter ;)

There is just one matter worrying me: I don't know how to make SFML applications compatible so that they work on other computers (where Visual C++ Express 2008 which I use isn't installed). I always get the error http://www.sfml-dev.org/forum/viewtopic.php?t=216&postdays=0&postorder=asc&highlight=lnk2005&start=15 . But on this computer, there is no problem if I choose the right configuration.

The problem is, I would like to link statically, because static apps without SFML work on other computers. So the CRT itsself is compatible in static (release) configuration. But as soon as I use any SFML stuff, I get loads of linking errors trying to link statically. Recompiling the libs didn't improve the situation. And in dynamic configuration, I don't know how to handle it with the DLLs and I think, spending a whole day searching the internet for solutions is enough...

Is it true that SFML applications in VC++ cannot be built statically? This would make it a lot easier, because if I link dynamically, I would have to install DLLs on every computer into SxS directories and so on...
Or am I just doing wrong all the time? Is there a possibility?

I just can't imagine everyone using SFML on other computers is doing all that Side by Side setup configuration stuff while it might be much easier?
How do you configure your apps if you want to use them on other computers (without any additional SDKs and compilers)?

General / Static release
« on: February 29, 2008, 06:04:38 pm »
In Visual C++ Express 2008, I am using SFML and linking statically with configuration "Release". Strangely, everything works if I link dynamically. I added the additional dependencies ("sfml-graphics.lib sfml-window.lib sfml-system.lib"), and order shouldn't be problem... I even tried to recompile the files in C:\...\SFML-1.2\vc2008\SFML.sln in release static mode and tested my project again, it didn't help.
I get a lot of errors like these:
Code: [Select]
1>msvcprt.lib(MSVCP90.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z) is already defined in libcpmt.lib(string.obj).
1>MSVCRTD.lib(MSVCR90D.dll) : error LNK2005: _strncmp is already defined in LIBCMTD.lib(strncmp.obj).
(btw: output is translated, might be not literally)

Can you tell me why this occurs? I've read similar posts but I have seen nowhere the same problem.

Pages: 1 ... 5 6 [7]