Subject: | Bug or problem in compiling MQSeries module for Perl |
Date: | Mon, 7 Apr 2014 13:11:00 +0300 |
To: | <bug-mqseries [...] rt.cpan.org> |
From: | <Sami.Hanninen [...] tieto.com> |
Hi, I am currently trying to compile MQSeries module for Perl. I have managed to overcome the wrong location of MQSeries files and __int64 conversion, but still I cannot complete the compilation. The referenced functions seem to be defined in cmqc.h, but still they are complained about.
Environment:
MQSeries 1.34
Win 7 x64
MQSeries client + sdk 7.5
Strawberry Perl - perl 5, version 18, subversion 2 (v5.18.2) built for MSWin32-x64-multi-thread
The error messages after previous fixes:
\MQSeries-1.34>dmake
dlltool --def MQSeries.def --output-exp dll.exp
g++ -o ..\blib\arch\auto\MQClient\MQSeries\MQSeries.dll -Wl,--base-file -Wl,dll.
base -mdll -s -L"C:\DIALOGOS\strawberry\perl\lib\CORE" -L"C:\DIALOGOS\strawberry
\c\lib" MQSeries.o constants.o C:\DIALOGOS\strawberry\perl\lib\CORE\libperl518
.a C:\Mqm\Tools\lib\mqic.lib C:\Mqm\Tools\lib\mqic32.lib C:\DIALOGOS\strawberry\
c\x86_64-w64-mingw32\lib\libmoldname.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw
32\lib\libkernel32.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libuser32.a
C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libgdi32.a C:\DIALOGOS\strawber
ry\c\x86_64-w64-mingw32\lib\libwinspool.a C:\DIALOGOS\strawberry\c\x86_64-w64-mi
ngw32\lib\libcomdlg32.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libadvap
i32.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libshell32.a C:\DIALOGOS\s
trawberry\c\x86_64-w64-mingw32\lib\libole32.a C:\DIALOGOS\strawberry\c\x86_64-w6
4-mingw32\lib\liboleaut32.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libn
etapi32.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libuuid.a C:\DIALOGOS\
strawberry\c\x86_64-w64-mingw32\lib\libws2_32.a C:\DIALOGOS\strawberry\c\x86_64-
w64-mingw32\lib\libmpr.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libwinm
m.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libversion.a C:\DIALOGOS\str
awberry\c\x86_64-w64-mingw32\lib\libodbc32.a C:\DIALOGOS\strawberry\c\x86_64-w64
-mingw32\lib\libodbccp32.a C:\DIALOGOS\strawberry\c\x86_64-w64-mingw32\lib\libco
mctl32.a dll.exp
MQSeries.o:MQSeries.c:(.text+0x11b): undefined reference to `MQSTAT'
MQSeries.o:MQSeries.c:(.text+0x1675): undefined reference to `MQSETMP'
MQSeries.o:MQSeries.c:(.text+0x2cc0): undefined reference to `MQINQMP'
MQSeries.o:MQSeries.c:(.text+0x3bc6): undefined reference to `MQDLTMP'
MQSeries.o:MQSeries.c:(.text+0x40cf): undefined reference to `MQDLTMH'
MQSeries.o:MQSeries.c:(.text+0x45e5): undefined reference to `MQCRTMH'
MQSeries.o:MQSeries.c:(.text+0x5031): undefined reference to `MQSET'
MQSeries.o:MQSeries.c:(.text+0x5591): undefined reference to `MQBEGIN'
MQSeries.o:MQSeries.c:(.text+0x58a9): undefined reference to `MQBACK'
MQSeries.o:MQSeries.c:(.text+0x5a89): undefined reference to `MQCMIT'
MQSeries.o:MQSeries.c:(.text+0x5c6e): undefined reference to `MQDISC'
MQSeries.o:MQSeries.c:(.text+0x5ede): undefined reference to `MQCLOSE'
MQSeries.o:MQSeries.c:(.text+0x8af2): undefined reference to `MQGET'
MQSeries.o:MQSeries.c:(.text+0x103a3): undefined reference to `MQPUT1'
MQSeries.o:MQSeries.c:(.text+0x1626d): undefined reference to `MQPUT'
MQSeries.o:MQSeries.c:(.text+0x17a2e): undefined reference to `MQINQ'
MQSeries.o:MQSeries.c:(.text+0x197bc): undefined reference to `MQOPEN'
MQSeries.o:MQSeries.c:(.text+0x1c6c7): undefined reference to `MQCONNX'
MQSeries.o:MQSeries.c:(.text+0x1cbcf): undefined reference to `MQCONN'
c:/dialogos/strawberry/c/bin/../lib/gcc/x86_64-w64-mingw32/4.7.3/../../../../x86
_64-w64-mingw32/bin/ld.exe: MQSeries.o: bad reloc address 0x0 in section `.pdata
'
c:/dialogos/strawberry/c/bin/../lib/gcc/x86_64-w64-mingw32/4.7.3/../../../../x86
_64-w64-mingw32/bin/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
dmake: Error code 129, while making '..\blib\arch\auto\MQClient\MQSeries\MQSeri
es.dll'
dmake: Error code 255, while making 'subdirs'
--
Best regards,
Sami