I wanted to do so and in several forums I read I should provide if possible the DLLs compiled with the same MSVC version than the main program.
So I tried to compile the DLL by myself. I was able to update their solution files, see PR https://github.com/FreeCAD/FreeCAD/pull/2690
But when compiling the target FCStdThumbnail I get this error:
Code: Select all
1>c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\stdint.h(17): error C2371: 'int8_t': redefinition; different basic types
1>d:\freecadgit\src\tools\thumbs\thumbnailprovider\fcconfig.h(105): note: see declaration of 'int8_t'
Code: Select all
1> Creating library D:\FreeCADGit\src\Tools\thumbs\ThumbnailProvider\x64\Release\FCStdThumbnail.lib and object D:\FreeCADGit\src\Tools\thumbs\ThumbnailProvider\x64\Release\FCStdThumbnail.exp
1>deflateoutputstreambuf.obj : error LNK2001: unresolved external symbol deflateInit2_
1>deflateoutputstreambuf.obj : error LNK2001: unresolved external symbol deflateReset
1>deflateoutputstreambuf.obj : error LNK2001: unresolved external symbol deflateEnd
1>deflateoutputstreambuf.obj : error LNK2001: unresolved external symbol crc32
1>deflateoutputstreambuf.obj : error LNK2001: unresolved external symbol deflate
1>inflateinputstreambuf.obj : error LNK2001: unresolved external symbol inflateEnd
1>inflateinputstreambuf.obj : error LNK2001: unresolved external symbol inflate
1>inflateinputstreambuf.obj : error LNK2001: unresolved external symbol inflateInit2_
1>inflateinputstreambuf.obj : error LNK2001: unresolved external symbol inflateReset
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: struct HBITMAP__ * __cdecl CxImage::MakeBitmap(struct HDC__ *)" (?MakeBitmap@CxImage@@QEAAPEAUHBITMAP__@@PEAUHDC__@@@Z)
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: bool __cdecl CxImage::DestroyFrames(void)" (?DestroyFrames@CxImage@@QEAA_NXZ)
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: bool __cdecl CxImage::Destroy(void)" (?Destroy@CxImage@@QEAA_NXZ)
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: __cdecl CxImage::CxImage(unsigned long)" (??0CxImage@@QEAA@K@Z)
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: virtual __cdecl CxMemFile::~CxMemFile(void)" (??1CxMemFile@@UEAA@XZ)
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: __cdecl CxMemFile::CxMemFile(unsigned char *,unsigned long)" (??0CxMemFile@@QEAA@PEAEK@Z)
1>ThumbnailProvider.obj : error LNK2001: unresolved external symbol "public: bool __cdecl CxImagePNG::Decode(class CxFile *)" (?Decode@CxImagePNG@@QEAA_NPEAVCxFile@@@Z)
1>D:\FreeCADGit\src\Tools\thumbs\ThumbnailProvider\x64\Release\FCStdThumbnail.dll : fatal error LNK1120: 16 unresolved externals
There is also a file FCThumbs.sln. When I compile its target FCThumbs I get this error:
Code: Select all
1>StdAfx.cpp
1>d:\freecadgit\src\tools\thumbs\stdafx.cpp(34): fatal error C1083: Cannot open include file: 'atlimpl.cpp': No such file or directory