Original Message:
Sent: Wed June 19, 2024 03:42 AM
From: Andrey Klyachkin
Subject: Compiling perl DBI-1.643 on AIX 7.3 TL2 SP2 with new IBM openxlC 17.1.2
Hi Stefano,
why do you want to build it with Open XL C compiler? I understand, it is modern. But your Perl is built using Classic XL C compiler and if you build modules using new OpenXL C compiler, which is based on completely different technology, you may get other compatibility problems. You would need first rebuild Perl with OpenXL and then all other modules.
As far as I see you have the classic XL C/C++ compiler V16.1 installed on your system, but it doesn't work. The reason for that is missing fix pack. The support for AIX 7.3 was added in FP10, the latest is FP18. You can find more info here. It would be an easier solution for your problem.
If you still want to use OpenXL C/C++ compiler 17.1.2, IBM has migration guide where they describe which options were abandoned or changed and what you should use instead.
------------------------------
Andrey Klyachkin
https://www.power-devops.com
Original Message:
Sent: Tue June 18, 2024 09:28 AM
From: Stefano Calisto
Subject: Compiling perl DBI-1.643 on AIX 7.3 TL2 SP2 with new IBM openxlC 17.1.2
Hi everybody
I'm trying to compile DBI-1.643 on AIX 7.3 TL2 SP2 with the newest IBM openxlC Compiler Version 17.1.2. Perl is on the following version:
perl -v
This is perl 5, version 34, subversion 1 (v5.34.1) built for aix-thread-multi
perl Makefile.PL runs through without special errors but when I try to compile I'm getting the following error:
Running Mkbootstrap for DBI ()
chmod 644 "DBI.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- DBI.bs blib/arch/auto/DBI/DBI.bs 644
xlc_r -q32 -c -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias -qlanglvl=extc99 -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -O -DVERSION=\"1.643\" -DXS_VERSION=\"1.643\" "-I/usr/opt/perl5/lib/5.34.1/aix-thread-multi/CORE" Perl.c
/opt/IBM/xlc/16.1.0/bin/.orig/xlc_r: 1501-287 (S) This compiler does not support AIX 7.3. Please check with IBM (http://www-01.ibm.com/support/docview.wss?rs=43&uid=swg21326972) to see if there is a PTF for this compiler that supports this AIX level.
make: The error code from the last command is 41.
Stop.
I updated the Makefile and replaced the following entry:
CC = xlc_r -q32
with
CC = ibm_clang_r -q32
and get the following error while doing the make again:
Running Mkbootstrap for DBI ()
chmod 644 "DBI.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- DBI.bs blib/arch/auto/DBI/DBI.bs 644
ibm-clang_r -q32 -c -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias -qlanglvl=extc99 -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -O -DVERSION=\"1.643\" -DXS_VERSION=\"1.643\" "-I/usr/opt/perl5/lib/5.34.1/aix-thread-multi/CORE" Perl.c
.ibm-clang: error: unknown argument: '-q32'
.ibm-clang: error: unknown argument: '-qmaxmem=-1'
.ibm-clang: error: unknown argument: '-qnoansialias'
.ibm-clang: error: unknown argument: '-qlanglvl=extc99'
.ibm-clang: error: unknown argument: '-q32'
make: The error code from the last command is 1.
So it seems I need to update the options to be clang compatible, but unfortunately I'm not really a programmer nor an expert with this kind of stuff.
Can somebody help me out or give me some clues on howto approach this ?
Thanks in advance and kind regards,
Stefano Calisto
------------------------------
Stefano Calisto
------------------------------