[zeromq-dev] Qt C++ Windows

Eric Gendron conceptid at gmail.com
Sun Dec 18 22:43:06 CET 2016


No productive answer yet...

I just wonder if there is really someone who succeed to compile on
windows???  Following instructions on the website?

Is it possible for someone more experienced than me with windows to try the
instructions on website and give the correct procedure?

I search the solution for a month and spent a lot of time on this...

I need to be able to use 0mq in Qt C++ (no need to integrate in the Qt
philosophy).  Qt C++ use mingw on windows.

I succeed with ubuntu linux and freebsd with clang++

Thanks.


On Dec 14, 2016 11:47 AM, "Eric Gendron" <conceptid at gmail.com> wrote:

I retry all the process on a new machine... Windows10PRO 64bits (but I try
all in 32bits).

I installed Qt Creator Open Source  in C:\Qt

and...

Following this:

http://zeromq.org/docs:windows-installations#toc2

What I've done:

Download 0mq sources here: http://zeromq.org/intro:get-the-software
Windows source 4.2 version

unzip in: c:\src\zeromq  (so I have subfolder builds, config, doc, include,
m4, perf, src, test, tools...)


Download devkit on  http://rubyinstaller.org/downloads
version For use with Ruby 2.0 and above (32bits version only):

This one:    DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe

Execute the file and put the result in  c:\devkit

In a console, I've gone to:   C:\devkit
and I executed   devkitvars.bat

To  compile 0mq, always in console:

cd C:\src\zeromq
sh configure —prefix=C:/zeromq
make

ERROR MESSAGE HERE AND I'M STUCK.
c:\src\zeromq>make
Making all in doc
make[1]: Entering directory `/c/src/zeromq/doc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/c/src/zeromq/doc'
make[1]: Entering directory `/c/src/zeromq'
  CXX      src/src_libzmq_la-address.lo
In file included from c:\devkit\mingw\bin\../lib/
gcc/i686-w64-mingw32/4.7.2/../../../../i686-w64-mingw32/
include/iphlpapi.h:16:0,
                 from src/windows.hpp:58,
                 from src/precompiled.hpp:37,
                 from src/address.cpp:30:
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:44:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:56:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:64:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:79:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:152:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:250:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:251:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:254:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:273:3: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:382:9: error: 'PSOCKADDR_IN6'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:384:9: error: 'PSOCKADDR_IN6'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:387:3: error:
'PSOCKADDR_IN6_PAIR' has not been declared
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:454:9: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:455:9: error: 'SOCKADDR_INET'
does not name a type
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:458:3: error: 'SOCKADDR_INET'
has not been declared
In file included from c:\devkit\mingw\bin\../lib/
gcc/i686-w64-mingw32/4.7.2/../../../../i686-w64-mingw32/
include/iphlpapi.h:16:0,
                 from src/windows.hpp:58,
                 from src/precompiled.hpp:37,
                 from src/address.cpp:30:
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/netioapi.h:585:9: error: 'SOCKADDR_INET'
does not name a type
In file included from src/windows.hpp:58:0,
                 from src/precompiled.hpp:37,
                 from src/address.cpp:30:
c:\devkit\mingw\bin\../lib/gcc/i686-w64-mingw32/4.7.2/../
../../../i686-w64-mingw32/include/iphlpapi.h:147:5: error: 'SOCKADDR_IN6'
does not name a type
make[1]: *** [src/src_libzmq_la-address.lo] Error 1
make[1]: Leaving directory `/c/src/zeromq'
make: *** [all-recursive] Error 1


On Wed, Dec 14, 2016 at 7:12 AM, Eric Gendron <conceptid at gmail.com> wrote:

> I already tried to compile... with exactly this doc.... but it gives me
> errors at make.
>
> On Dec 14, 2016 3:32 AM, "Stuart Dootson" <stuart.dootson at gmail.com>
> wrote:
>
>> On 13 December 2016 at 15:41, Eric Gendron <conceptid at gmail.com> wrote:
>>
>>> Thanks for trying.
>>>
>>> I have the same error: "cannot find -llibzmq_d" and if I remove the _d
>>> part, same thing... cannot find -llibzmq
>>>
>>> error: ld returned 1 exist status    collect2.exe
>>>
>>>
>>> My .pro:
>>>
>>> QT += core
>>>
>>> QT -= gui
>>>
>>>
>>> CONFIG += c++11
>>>
>>>
>>> TARGET = hello
>>>
>>> CONFIG += console
>>>
>>> CONFIG -= app_bundle
>>>
>>>
>>> TEMPLATE = app
>>>
>>>
>>> INCLUDEPATH += C:/zmq/include
>>>
>>> INCLUDEPATH += C:/zmq/src
>>>
>>> INCLUDEPATH += C:/zmq/bin
>>>
>>>
>>> CONFIG(debug, debug|release) {
>>>
>>>
>>>     LIBS += -LC:/zmq/lib -llibzmq_d
>>>
>>> }
>>>
>>>
>>> CONFIG(release, debug|release) {
>>>
>>>
>>>     LIBS += -LC:/zmq/lib -llibzmq
>>>
>>> }
>>>
>>>
>>> SOURCES += main.cpp \
>>>
>>>     guid.cpp
>>>
>>>
>>> HEADERS += \
>>>
>>>     guid.h \
>>>
>>>
>>>
>>> The folder with zmq install:
>>>
>>> C:\zmq
>>> with bin, doc, include, lib, src... subfolders.
>>>
>>> I copied all the dll in c:\zmq\lib and I have:
>>> I also copied all the dll in the debug folder where the app execute...
>>>
>>> libzmq-v90-mt-4_0_4.lib (and .dll and .pdb)
>>> libzmq-v90-mt-gd-4_0_4.lib
>>> libzmq-v100-mt-gd_4_0_4.lib
>>> etc... for v110 and v120
>>>
>>
>> So, the names of the lib files that you do have don't match the name
>> you've used in the .pro file? That's a problem...
>>
>> But a bigger problem is that you have DLLs and LIBs built for Visual
>> Studio (that's what the v90/100/110, -mt- and -gd- imply). They aren't
>> going to work well with your application written using mingw's g++ for
>> various reasons (different name mangling, different C runtimes, to name
>> two), so you're going to need a 0mq built with mingw (see
>> http://zeromq.org/docs:windows-installations#toc2).
>>
>> Stuart
>>
>>
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> https://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20161218/5088708e/attachment.htm>


More information about the zeromq-dev mailing list