Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Issue with SFML #3447
I successfully install the sfml package
I successfully integrate vcpkg with Visual Studio
I successfully build a 64 bit sample project (debug version).Here is the complete source code :
However when I run it with F5 the application complains because the hereafter DLL is missing
When I look in the x64/Debug directory, close to my code, I can see the following dlls :
If I look for freetype.dll I can find one instance in
My understanding is that in order to build SFML, vcpkg downloaded and compiled successfuly freetype package.
If I copy freetype.dll close to my executable (in the x64/Debug directory) and run the code again I have similar messages for the following DLLs
For each of them I can find the correct DLL in the ../vcpkg/XYZ directory
At the end when all the DLLs were pasted close to the executable I was able to run and debug my code.
However, I don't know how vcpkg miss the dependencies that exist between the SFML DLLs and the 4 DLLs (freetype, zlib1...)
From the user point of view vcpkg should track the dependencies and copy the 4 missing DLLs
I hope this report will help you to improve vcpgk
I encountered this issue too (and so are many of my students...).
I understand that vcpkg uses
Bonsoir I confirm it only happen in Debug version not in Release version I believe this will help the experts to track and fix the issue Many thanks in advance, Philippe Le sam. 12 mai 2018 à 23:50, Yehezkel Bernat <email@example.com> a écrit :…
I encountered this issue too (and so are many of my students...). One interesting point I have noticed is that this happens only on Debug builds and not on Release builds. x86/x64 selection doesn't affect it, with either of the options it happens for Debug build but copies all the needed DLLs for Release build. I understand that vcpkg uses dumpbin for inspecting dependencies. Both sfml-graphics-2.dll and sfml-graphics-d-2.dll mention freetype.dll when using dumpbin /dependents on them. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <#3447 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/ABbmjU041QbKcphk8oOWUFCz_B2HhYZ6ks5tx1kMgaJpZM4T013J> .
I can see this list of files :
Note that the freetype DLL is in fact named freetyped.dll
Please not that it seems this is the same thing for the 3 others DLLs :
My belief is :
Proposed solutions :
I would vote for Option 1
One final note : To tell the truth I'm quite surprised no one take the time to confirm what is said here by different sources. We (the reporters) don't even know if someone in charge is reading our feedback.
Again, I would more than happy to help but I don't know where to start and I don't know how to contact the maintainer of the SFML vcpk package directly.
Coud someone take the time to confirm he red this thread of mail?
Writing to back the validity of this issue. I'm seeing the exact same symptoms on a fresh install of VS 2017, with a fresh version of vcpkg, with US English locales (VS Installed yesterday, vcpkg installed today). I'm trying to build using SFML and debug builds are not properly copying the debug versions of their requisite DLLs, while release builds are successful.
I've left this in the LCMS thread, but I wanted to touch back here because of its relevance.
I tested by placing freetyped.dll next to the executable and running it. It crashed with the error above. I then renamed freetyped.dll to freetype.dll and it now errors out on the missing DLL dependencies of Freetype, but it mentions these explicitly as the debug versions. E.G. "libpng16d.dll", "zlibd1.dll", and "libbz2d.dll".
It's interesting to note that the executable is expecting the non-debug freetype.dll, while the executable is expecting the debug versions of freetype's dependencies.
I've tried adding freetype and zlib explicitly to my CMakeLists and target_link_libraries so they'll be copied but it hasn't helped. Only when I've directly included freetype.h and zlib.h in my code the dll's have been copied into Debug folder along the exec. Although freetyped.dll has been copied (which is correct) and I've to duplicate the file and rename it to freetype.dll.