openldap-technical-bounces@openldap.org wrote on 05.11.2010 01:42:35:
Peter Lambrechtsen plambrechtsen@gmail.com Gesendet von: openldap-technical-bounces@openldap.org
05.11.2010 01:53
An
Aaron Richton richton@nbcs.rutgers.edu
Kopie
openldap-technical@openldap.org
Thema
Re: Issue with OpenLDAP shared libraries complie on AIX 6.1 using IBM xL Compiler
On Fri, Nov 5, 2010 at 12:22 PM, Aaron Richton <richton@nbcs.rutgers.edu
wrote:
ITS # 6547.
Knowing absolutely nothing about the platform, and assuming you're not comfortable doing your own autoconf regeneration, I'd just s/ aix5/aix6/g in ./configure (i.e. edit the file) and see where you end up -- maybe it'll work, maybe it won't, but my guess is it would be an extremely crude starting point that might be usable after setting appropriate environment variables.
Ok... I'm not 100% comfortable doing autoconf regenration. but happy to run any tests where needed and reply with logs.
If you're willing to help the Project validate new autoconf files, that would be really helpful (I'm guessing we're limited in access to AIX nowadays), and it would save you from having to do such disgusting things in future releases. You can follow up to the ITS via e-mail if that's an area of interest.
Absoutely... I had hoped to use GNU GCC and the full GNU stack on AIX... but the gnu stack is poorly supported on AIX so I was forced to go down the IBM xL Path, which is a bit of a learning curve for me
too.
On Wed, 3 Nov 2010, Peter Lambrechtsen wrote:
configure:8914: checking whether the cc_r -qlanglvl=extc89 linker (/ usr/ccs/bin/ld) supports shared libraries configure:9790: result: no
--- Any way to get a more verbose output from what it's trying to do??
"bash -x ./configure"?
Tried that, and my aix compile machine has no bash :( ... but ./ configure seems to call itself and then becomes less verbose, the next time I had time to debug it I was planning to find out where configure was doing it and add a -x in there too. And log all those results to a file.
configure:10642: cc_r -qlanglvl=extc89 -o conftest -I/opt/openldap/ include -I/opt/openldap/include -L/opt/openldap/lib conftest.c >&5 ld: 0711-317 ERROR: Undefined symbol: .shl_load
-- I think this is the prolbem, shl_load, looks like I may need another include or figure out why it's complaining.
I understand that "ERROR" is an eye opener, but please realize that autoconf basically just tries everything and uses anything that doesn't error out. If shl_load isn't The Right Thing on AIX, this is a non-issue.
Cheers... I'll run through what the autoconf does for OpenSSL since that compiled fine on aix, and see what quirks it's doing that OpenLDAP
isn't.
Cheers
Peter
I've compiled 2.4.23 on AIX 6.1 with the following settings:
export PATH=/usr/vacpp/bin:/usr/vac/bin:$PATH export CC=cc export CXX=xlC export CONFIG_SHELL=/usr/bin/bash export CONFIG_ENV_ARGS=/usr/bin/bash export CFLAGS="-qmaxmem=16384 -DSYSV -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_AIX51 -D_AIX52 -D_AIX53 -D_AIX61 -D_ALL_SOURCE -DFUNCPROTO=15 -O -I/opt/freeware/include -g -I/opt/pware/Berkeley/latest/include -L/opt/pware/Berkeley/latest/lib" export CPPFLAGS=$CFLAGS export CXXFLAGS=$CFLAGS export LIBS="-lpthread" export F77=xlf export FFLAGS="-qmaxmem=16384 -O -I/opt/freeware/include -I/opt/pware/Berkeley/latest/include" export LD=ld export LDFLAGS="-L/opt/freeware/lib -Wl,-bmaxdata:0x80000000 -L/opt/pware/Berkeley/latest/lib" export LD_LIBRARY_PATH=/opt/pware/Berkeley/latest
./configure --prefix=/opt/pware/openldap/2.4.23 --with-openssl --with-shared=yes --enable-ppolicy --enable-unique --enable-ssl --enable-debug
I had to apply a patch which replaxced all occurrences of aix5 with aix 6 in aclocal.m4 , and in build/config.guess as well as contrib/ldapc+ +/config.guess the *:AIX:*:[45]) lines with *:AIX:*:[456]). Worked a charm. Your paths will probably differ ... and I'm pretty sure bash was a must, but you can get it from http://www.perzl.org/aix/index.php?n=Main.Bash
hth
-------------------------- VERTRAULICHKEIT: Diese Nachricht ist ausschließlich für denjenigen bestimmt, an den sie adressiert ist und kann vertrauliche Informationen enthalten. Falls Sie nicht der Empfänger dieser Nachricht sind, weisen wir Sie darauf hin, dass die unberechtigte Weitergabe oder Verwendung sowie das unberechtigte Verteilen oder Kopieren dieser Nachricht strikt untersagt sind. Falls Sie diese Nachricht irrtümlich erhalten haben, vernichten Sie sie bitte sofort.
CONFIDENTIALITY: This message is intended only for the use of the individuality or entity to which it is addressed and may contain information that is privileged, confidential and exempt from disclosure. If you are not the intended recipient you are notified that any dissemination, distribution, use or copying of this communication is strictly prohibited. If you received this message in error, please immediately destroy this message. --------------------------