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

Author Topic: MSVC++ 2010 64 bit libraries  (Read 5699 times)

0 Members and 1 Guest are viewing this topic.

Debilo

  • Newbie
  • *
  • Posts: 10
    • View Profile
MSVC++ 2010 64 bit libraries
« on: September 26, 2010, 02:27:38 pm »
Hey everybody,
I'm trying to build the latest SFML2.0 snapshot from source, using MSVC++ 2010 Express. All packages were flawlessly compiled, except for the graphics package. Well, it works out great when building static libraries, but as soon as I try to build a DLL, my linker complains about 15 unresolved externals in the Freetype library.
I've built all the extlibs for x64 by hand, including Freetype. But even when I use the extlibs shipping with the snapshot my linker still isn't content with it.

If anyone is wondering why I would do all this: The reason is a crash occuring when sf::RenderImage::~RenderImage() is called after invoking sf::RenderImage::Create().
I was able to trace it back to ig4icd32.dll, which is my graphics driver, so I assume that there might be some trouble with the 32 bit binaries, especially when OpenGL is concerned.
Maybe this is the wrong approach for fixing the problem. If so, I'd of course appreciate any help fixing this problem and thus making a x64-build unnecessary.

However, my competitive spirit was aroused by these nasty linker errors, and I guess it's not exactly a bad idea having native 64 bit binaries instead of the 32 bit ones (although this should not pose a problem, usually).

It'd be great if you can help me out once again,
regards,
Debilo


Edit: Update: I don't know how, but somehow the sfml2-graphics.dll was finally built with no problem. Unfortunately, I don't remember having made a change in the configuration, so it's still nebulous what caused this problem. Building sfml2-graphics-d.dll still produces the errors, though.

Edit2: Well, well, well...just made a 3rd complete new attempt, and it worked. Yet again I have no idea what I might have done to finally convince my linker to swallow it...
And since I'm just in the act of asking:
I wonder how to build sfml2-module.lib. I have *-s.lib, *-s-d.lib, *.dll and *-d.dll, but no *.lib, if you know what I mean. I built SFML for targets "Release Static", "Debug Static", "Release DLL" and "Debug DLL", which
are 4 in number (and I have 4 output binaries). Where is the rest? (I guess I'm just not seeing it at the moment)

Edit3: Yay, everything works fine, 64bit libs built successfully...

Debilo

  • Newbie
  • *
  • Posts: 10
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #1 on: September 29, 2010, 04:17:30 pm »
It seems I finally got it working.
Thus, here are the libraries, for anyone interested:
http://www.file-upload.net/download-2853289/SFML2.0-Win64-Binaries.zip.html

CBenni::O

  • Newbie
  • *
  • Posts: 48
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #2 on: September 29, 2010, 06:05:51 pm »
For everyone triing to compile themselves: how did you get it to work?

bye, CBenni::O
42!
Metal will never die!

Debilo

  • Newbie
  • *
  • Posts: 10
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #3 on: September 29, 2010, 09:11:19 pm »
Oh of course, I forgot to mention that in the rush...So here's a short manual.

First of all, I built the latest versions of the extension libraries for 64 bit. The easiest way to do this is to download the source packages from the developers' sites and use CMake for Makefile (resp. .vsxproj) generation.

libjpeg however is a bit off at that, since it has no CMakeFileList.txt. Instead you have to - watch out, it's really sophistical... - rename the file makevcxproj.v10 and adjust the file extension, as it is simply a disguised Visual Studio 2010 project. Additionally, the file jconfig.h should be overwritten with the content of jconfig.vc, at least it's recommended by the installation guide.

All of the other libraries should build just fine when you have a very basic knowledge on how to work with CMake (the GUI makes it kind of snap, actually).

You should then replace the files in your SFML2.0/extlibs folder with those you just created (and of course rename them accordingly) and then have your VS2010 solution generated by CMake once again for the SFML2.0 build. You need to do this two times: One time with "Build shared" enabled, and one time without, so that all of the needed binaries are created.
Then just load up the respective solution and build the "BUILD-ALL" project. If everything was adjusted correctly, you should, after a few seconds - or minutes, depending on your processor - be the proud owner of a freshly baked SFML2.0 64 bit build.

I hope this short instruction was helpful :)

regards,
Debilo

heishe

  • Full Member
  • ***
  • Posts: 121
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #4 on: December 06, 2010, 09:32:59 pm »
hey there.

any chance you could upload the dlls and libs again?

Zweistein

  • Newbie
  • *
  • Posts: 29
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #5 on: December 07, 2010, 10:03:22 pm »
Hey,

I made you some new Libs from the current, today version. So everybody who needs them, get Release and Debug Libs for SFML2 here:

http://data.whosme.de/SFML2/SFML2_REV1751.zip

I used this external 64Bit versions of libjpeg, glew, freetype, openal and sndfile, if anybody wants to compile their own sfml libs.

http://data.whosme.de/SFML2/extlibs_x64.zip

I just used cmake, it worked very well.

heishe

  • Full Member
  • ***
  • Posts: 121
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #6 on: December 08, 2010, 12:16:32 pm »
thanks! thats awesome.

by the way, on mc PC there's no runtime error or anything when I used the 32bit dll's, it just doesn't ever draw anything.

Mr. X

  • Jr. Member
  • **
  • Posts: 80
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #7 on: December 08, 2010, 04:33:53 pm »
If you need a project file and all extlibs for x64 (So that you can easily build it yourself): http://www.sfml-dev.org/forum/viewtopic.php?t=3582

GatorQue

  • Newbie
  • *
  • Posts: 36
    • View Profile
MSVC++ 2010 64 bit libraries
« Reply #8 on: July 09, 2011, 04:46:03 am »
I followed your link to the other thread, but it doesn't seem to be available anymore.  Do you still have the project files for building the extlibs used by SFML 2?  Thanks.