I'm having an issue compiling an alt qt. From what I can tell, this is an issue with building a static/shared dependency miniupnpc. For the life of me I can't get past this error though no matter what I try.
Things I've tried;
- Compile shared and static miniupnpc with mingw32-make makefile.mingw upnpc-shared/static
- Tried disabling miniupnpc by qmake use_upnp=-
- Tried grabbing an old version of miniupnpc and using that
- Successfully built Bitcoind and Bitcoin-QT to make sure all deps were good
Here is the error.
./build\net.o:net.cpp:(.text+0x8673): undefined reference to `_imp__upnpDiscover
'
./build\net.o:net.cpp:(.text+0x86aa): undefined reference to `_imp__UPNP_GetVali
dIGD'
./build\net.o:net.cpp:(.text+0x86eb): undefined reference to `_imp__UPNP_GetExte
rnalIPAddress'
./build\net.o:net.cpp:(.text+0x8767): undefined reference to `_imp__freeUPNPDevl
ist'
./build\net.o:net.cpp:(.text+0x877a): undefined reference to `_imp__FreeUPNPUrls
'
./build\net.o:net.cpp:(.text+0x8867): undefined reference to `_imp__strupnperror
'
./build\net.o:net.cpp:(.text+0x88f3): undefined reference to `_imp__UPNP_AddPort
Mapping'
./build\net.o:net.cpp:(.text+0x897b): undefined reference to `_imp__UPNP_DeleteP
ortMapping'
./build\net.o:net.cpp:(.text+0x899a): undefined reference to `_imp__freeUPNPDevl
ist'
./build\net.o:net.cpp:(.text+0x89a9): undefined reference to `_imp__FreeUPNPUrls
'
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bi
n/ld.exe: ./build\net.o: bad reloc address 0x20 in section `.data'
C:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bi
n/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
Makefile.Release:311: recipe for target 'release\coin-qt.exe' failed
mingw32-make: *** [release\coin-qt.exe] Error 1
Any suggestions or guidance would be much appreciated.
Well my apologies. 5 minutes after posting this I figured it out. Based on
this, I figured out that I needed to add this line to my Makefile.Release generated by qmake.
DEFINES = -DMINIUPNP_STATICLIB