Hello
I am trying to build quickfix-1-15.1 for Python using comand "python setup.py install". Windows environment. I have Microsoft Visual Studio 14.0 installed.
First i got an issue with extra_compile_args, compilation failed because of the Wno-xxxx options. I removed them in setup.py and it fixed this issue.
Then it failed because of it could not find stdafx.h. I created an empty such file and it fixed this issue as well.
But now i am getting a new one that i cannot sort out. Compilation is working but it fails linking, see error message below. I am not sure how it cannot find the right libraries, can you help?
Thanks
Error message:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\link.exe /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO /LIBPATH:C:\Python36\libs /LIBPATH:C:\Python36\PCbuild\win32 "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\LIB" "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\LIB" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.10240.0\ucrt\x86" "/LIBPATH:C:\Program Files (x86)\Windows Kits\8.1\lib\winv6.3\um\x86" /LIBPATH:\cib.net\ShareHK\Soft\Sybclient\oc_1251\OCS-12_5\lib /LIBPATH:\cib.net\ShareHK\Soft\Sybclient\oc_1251\ADO.NET\dll /EXPORT:PyInitquickfix build\temp.win32-3.6\Release\C++\HttpServer.obj build\temp.win32-3.6\Release\C++\TimeRange.obj build\temp.win32-3.6\Release\C++\ThreadedSSLSocketAcceptor.obj build\temp.win32-3.6\Release\C++\ThreadedSocketInitiator.obj build\temp.win32-3.6\Release\C++\QuickfixPython.obj build\temp.win32-3.6\Release\C++\MessageSorters.obj build\temp.win32-3.6\Release\C++\MySQLStore.obj build\temp.win32-3.6\Release\C++\Group.obj build\temp.win32-3.6\Release\C++\ThreadedSSLSocketConnection.obj build\temp.win32-3.6\Release\C++\SessionFactory.obj build\temp.win32-3.6\Release\C++\MessageStore.obj build\temp.win32-3.6\Release\C++\SSLSocketAcceptor.obj build\temp.win32-3.6\Release\C++\SocketInitiator.obj build\temp.win32-3.6\Release\C++\MySQLLog.obj build\temp.win32-3.6\Release\C++\Initiator.obj build\temp.win32-3.6\Release\C++\FieldTypes.obj build\temp.win32-3.6\Release\C++\FieldMap.obj build\temp.win32-3.6\Release\C++\OdbcLog.obj build\temp.win32-3.6\Release\C++\Utility.obj build\temp.win32-3.6\Release\C++\Settings.obj build\temp.win32-3.6\Release\C++\SocketAcceptor.obj build\temp.win32-3.6\Release\C++\SocketServer.obj build\temp.win32-3.6\Release\C++\pugixml.obj build\temp.win32-3.6\Release\C++\NullStore.obj build\temp.win32-3.6\Release\C++\PostgreSQLLog.obj build\temp.win32-3.6\Release\C++\OdbcStore.obj build\temp.win32-3.6\Release\C++\DataDictionary.obj build\temp.win32-3.6\Release\C++\ThreadedSocketAcceptor.obj build\temp.win32-3.6\Release\C++\FileStore.obj build\temp.win32-3.6\Release\C++\PostgreSQLStore.obj build\temp.win32-3.6\Release\C++\Log.obj build\temp.win32-3.6\Release\C++\FileLog.obj build\temp.win32-3.6\Release\C++\Acceptor.obj build\temp.win32-3.6\Release\C++\ThreadedSSLSocketInitiator.obj build\temp.win32-3.6\Release\C++\ThreadedSocketConnection.obj build\temp.win32-3.6\Release\C++\UtilitySSL.obj build\temp.win32-3.6\Release\C++\SessionSettings.obj build\temp.win32-3.6\Release\C++\HttpConnection.obj build\temp.win32-3.6\Release\C++\Session.obj build\temp.win32-3.6\Release\C++\PUGIXML_DOMDocument.obj build\temp.win32-3.6\Release\C++\HttpParser.obj build\temp.win32-3.6\Release\C++\SocketConnector.obj build\temp.win32-3.6\Release\C++\DataDictionaryProvider.obj build\temp.win32-3.6\Release\C++\SSLSocketConnection.obj build\temp.win32-3.6\Release\C++\SSLSocketInitiator.obj build\temp.win32-3.6\Release\C++\HttpMessage.obj build\temp.win32-3.6\Release\C++\FieldConvertors.obj build\temp.win32-3.6\Release\C++\Dictionary.obj build\temp.win32-3.6\Release\C++\SocketConnection.obj build\temp.win32-3.6\Release\C++\Message.obj build\temp.win32-3.6\Release\C++\Parser.obj build\temp.win32-3.6\Release\C++\SocketMonitor.obj /OUT:build\lib.win32-3.6_quickfix.cp36-win32.pyd /IMPLIB:build\temp.win32-3.6\Release\C++_quickfix.cp36-win32.lib
Creating library build\temp.win32-3.6\Release\C++_quickfix.cp36-win32.lib and object build\temp.win32-3.6\Release\C++_quickfix.cp36-win32.exp
QuickfixPython.obj : error LNK2001: unresolved external symbol impWSAGetLastError@0
Utility.obj : error LNK2001: unresolved external symbol impsetsockopt@20
Utility.obj : error LNK2001: unresolved external symbol impioctlsocket@12
Utility.obj : error LNK2001: unresolved external symbol imphtons@4
Utility.obj : error LNK2001: unresolved external symbol impgetsockopt@20
Utility.obj : error LNK2001: unresolved external symbol imprecv@16
Utility.obj : error LNK2001: unresolved external symbol impinet_ntoa@4
Utility.obj : error LNK2001: unresolved external symbol impconnect@12
Utility.obj : error LNK2001: unresolved external symbol impntohs@4
Utility.obj : error LNK2001: unresolved external symbol impsocket@12
Utility.obj : error LNK2001: unresolved external symbol impsend@16
Utility.obj : error LNK2001: unresolved external symbol impgetsockname@12
Utility.obj : error LNK2001: unresolved external symbol impinet_addr@4
Utility.obj : error LNK2001: unresolved external symbol impgetpeername@12
Utility.obj : error LNK2001: unresolved external symbol impWSAStartup@8
Utility.obj : error LNK2001: unresolved external symbol implisten@8
Utility.obj : error LNK2001: unresolved external symbol impshutdown@8
Utility.obj : error LNK2001: unresolved external symbol impgethostbyname@4
Utility.obj : error LNK2001: unresolved external symbol impclosesocket@4
Utility.obj : error LNK2001: unresolved external symbol impbind@12
Utility.obj : error LNK2001: unresolved external symbol impaccept@12
Utility.obj : error LNK2001: unresolved external symbol impWSACleanup@0
ThreadedSocketConnection.obj : error LNK2001: unresolved external symbol imp__select@20
build\lib.win32-3.6_quickfix.cp36-win32.pyd : fatal error LNK1120: 23 unresolved externals
error: command 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\link.exe' failed with exit status 1120