"../openbsd-compat/port-aix.h", line 92.44: 1506-046 (S) Syntax error. openssh-5.3p1 on aix 5.3

phoebus phoebus frphoebus at yahoo.fr
Mon Mar 1 23:51:07 EST 2010


Hi Darren,
 
I built MIT kerberos on AIX with success. I tried to link after Openshh with kerberos.
The source path for kbr5 is: /home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src (case 2)
The installation path for kbr5 is: /usr/local/kerberos (case 1)
I don't understand why in one case with the same parametes identical execept the with-kerberos5.
The binary (ssh_keygen, sshd) doesn't find library libcrypto.a in /opt/freeware/lib when 
with-kerberos5=/usr/local/kerberos (case 1: KO) and find it when 
with-kerberos5=/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src (case 2)
        ca06:/home/frphoebus/openssh/openssh-5.3p1# which libcrypto.a
        /opt/freeware/
 
Thanks for your advices. I passed the weekend to update blibpath in severals way. But i not working with the kerberos installation directory (/usr/local/kerberos). I'm only sucess with the find src path where i built kerberos.
Regards,
Frphoebus
 
Case 1: KO
I launch the configure with this option:
        ca06:/home/frphoebus/openssh/openssh-5.3p1# cat launchosshkbr.ksh
        #!/bin/ksh
        set -x
        export PATH=/usr/vac/bin:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/java14/jre/bin:/usr/java14/bin:/usr/local/bin:/opt/freeware/lib
        export CC=cc
        export CFLAGS="-I/usr/local/include"
        #export LDFLAGS="-L/opt/freeware/lib -L/usr/local/lib"
        export CPP="cc -E"
        blibpath=/opt/freeware/lib:/lib:/usr/lib ./configure --prefix=/usr/local --sysconfdir=/usr/local/etc/ssh \
                        --with-cflags="-O -D__STR31__ -qmaxmem=-1" --with-cflags="-DBROKEN_GETADDRINFO" \
                        --with-tcp-wrappers=/usr/local/lib \
                        --with-zlib=/opt/freeware \
                        --with-ssl-dir=/opt/freeware \
                        --with-xauth=/usr/bin/X11/xauth \
                        --with-kerberos5=/usr/local/kerberos  \
                        --with-md5-passwords \
                        --with-pam \
                        --with-pid-dir=/var/run
        ca06:/home/frphoebus/openssh/openssh-5.3p1#
The ouput of confuigure is:
        OpenSSH has been configured with the following options:
                             User binaries: /usr/local/bin
                           System binaries: /usr/local/sbin
                       Configuration files: /usr/local/etc/ssh
                           Askpass program: /usr/local/libexec/ssh-askpass
                              Manual pages: /usr/local/share/man/manX
                                  PID file: /var/run
          Privilege separation chroot path: /var/empty
                    sshd default user PATH: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
                            Manpage format: man
                               PAM support: yes
                           OSF SIA support: no
                         KerberosV support: yes
                           SELinux support: no
                         Smartcard support: no
                             S/KEY support: no
                      TCP Wrappers support: yes
                      MD5 password support: yes
                           libedit support: no
          Solaris process contract support: no
               IP address in $DISPLAY hack: no
                   Translate v4 in v6 hack: no
                          BSD Auth support: no
                      Random number source: OpenSSL internal ONLY
                      Host: powerpc-ibm-aix5.3.0.0
                  Compiler: cc -qlanglvl=extc89
            Compiler flags: -I/usr/local/include -DBROKEN_GETADDRINFO
        Preprocessor flags: -I/opt/freeware/include -I/usr/local/lib -I/opt/freeware/include  -I/usr/local/kerberos/include
              Linker flags: -L/opt/freeware/lib -L/usr/local/lib -L/opt/freeware/lib  -blibpath:/opt/freeware/lib:/lib:/usr/lib:/usr/local/kerberos/lib
                 Libraries: -lcrypto -lz  -L/usr/local/kerberos/lib -blibpath:/usr/local/kerberos/lib::/usr/lib:/lib -I/usr/local/include -DBROKEN_GETADDRINFO -L/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lpthreads
                 +for sshd:  -lwrap -lpam -ldl
        PAM is enabled. You may need to install a PAM control file
        for sshd, otherwise password authentication may fail.
        Example PAM control files can be found in the contrib/
        subdirectory
I run make (succesfull) and make install (failed) with the following output:
                ./install-sh -c -m 644 sftp.1.out /usr/local/share/man/man1/sftp.1
                ./install-sh -c -m 644 sftp-server.8.out /usr/local/share/man/man8/sftp-server.8
                ./install-sh -c -m 644 ssh-keysign.8.out /usr/local/share/man/man8/ssh-keysign.8
                rm -f /usr/local/bin/slogin
                ln -s ./ssh /usr/local/bin/slogin
                rm -f /usr/local/share/man/man1/slogin.1
                ln -s ./ssh.1 /usr/local/share/man/man1/slogin.1
                if [ ! -d /usr/local/etc/ssh ]; then  ./mkinstalldirs /usr/local/etc/ssh;  fi
        mkdir /usr/local/etc/ssh
        exec(): 0509-036 Cannot load program ./ssh-keygen because of the following errors:
                0509-150   Dependent module libcrypto.a(libcrypto.so.0.9.7) could not be loaded.
                0509-022 Cannot load module libcrypto.a(libcrypto.so.0.9.7).
                0509-026 System error: A file or directory in the path name does not exist.
        make: 1254-004 The error code from the last command is 255.
        Stop.
The dump indicathe the binary PATH is: /usr/local/kerberos/lib::/usr/lib:/lib. 
It doesn't take care of the blibpath
        ca06:/usr/local# dump -H bin/ssh-keygen
        bin/ssh-keygen:
                                ***Loader Section***
                              Loader Header Information
        VERSION#         #SYMtableENT     #RELOCent        LENidSTR
        0x00000001       0x000000cf       0x000001fb       0x00000071
        #IMPfilID        OFFidSTR         LENstrTBL        OFFstrTBL
        0x00000004       0x00002b4c       0x00000617       0x00002bbd
                                ***Import File Strings***
        INDEX  PATH                          BASE                MEMBER
        0      /usr/local/kerberos/lib::/usr/lib:/lib                                   
        1                                    libc.a              shr.o
        2                                    libpthreads.a       shr_xpg5.o
        3                                    libcrypto.a         libcrypto.so.0.9.7
        ca06:/usr/local# ldd bin/ssh-keygen
        bin/ssh-keygen needs:
                 /usr/lib/libc.a(shr.o)
                 /usr/lib/libpthreads.a(shr_xpg5.o)
        Cannot find      /unix
                 /usr/lib/libcrypt.a(shr.o)
                 /usr/lib/libpthreads.a(shr_comm.o)
        ca06:/usr/local#
        
case 2: OK
        ca06:/home/frphoebus/openssh/openssh-5.3p1# cat launchosshkbr.ksh
        #!/bin/ksh
        set -x
        export PATH=/usr/vac/bin:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/java14/jre/bin:/usr/java14/bin:/usr/local/bin:/opt/freeware/lib
        export CC=cc
        export CFLAGS="-I/usr/local/include"
        #export LDFLAGS="-L/opt/freeware/lib -L/usr/local/lib"
        export CPP="cc -E"
        blibpath=/opt/freeware/lib:/lib:/usr/lib ./configure --prefix=/usr/local --sysconfdir=/usr/local/etc/ssh \
                        --with-cflags="-O -D__STR31__ -qmaxmem=-1" --with-cflags="-DBROKEN_GETADDRINFO" \
                        --with-tcp-wrappers=/usr/local/lib \
                        --with-zlib=/opt/freeware \
                        --with-ssl-dir=/opt/freeware \
                        --with-xauth=/usr/bin/X11/xauth \
                        --with-kerberos5=/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src  \
                        --with-md5-passwords \
                        --with-pam \
                        --with-pid-dir=/var/run
        ca06:/home/frphoebus/openssh/openssh-5.3p1#
The ouput of confuigure is:
        OpenSSH has been configured with the following options:
                             User binaries: /usr/local/bin
                           System binaries: /usr/local/sbin
                       Configuration files: /usr/local/etc/ssh
                           Askpass program: /usr/local/libexec/ssh-askpass
                              Manual pages: /usr/local/share/man/manX
                                  PID file: /var/run
          Privilege separation chroot path: /var/empty
                    sshd default user PATH: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
                            Manpage format: man
                               PAM support: yes
                           OSF SIA support: no
                         KerberosV support: yes
                           SELinux support: no
                         Smartcard support: no
                             S/KEY support: no
                      TCP Wrappers support: yes
                      MD5 password support: yes
                           libedit support: no
          Solaris process contract support: no
               IP address in $DISPLAY hack: no
                   Translate v4 in v6 hack: no
                          BSD Auth support: no
                      Random number source: OpenSSL internal ONLY
                      Host: powerpc-ibm-aix5.3.0.0
                  Compiler: cc -qlanglvl=extc89
            Compiler flags: -I/usr/local/include -DBROKEN_GETADDRINFO
        Preprocessor flags: -I/opt/freeware/include -I/usr/local/lib -I/opt/freeware/include  -I/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src/include -I/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src/include/gssapi
              Linker flags: -L/opt/freeware/lib -L/usr/local/lib -L/opt/freeware/lib  -L/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src/lib -blibpath:/opt/freeware/lib:/lib:/usr/lib:/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src/lib
                 Libraries: -lcrypto -lz  -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err
                 +for sshd:  -lwrap -lpam -ldl
        PAM is enabled. You may need to install a PAM control file
        for sshd, otherwise password authentication may fail.
        Example PAM control files can be found in the contrib/
        subdirectory
I run make (succesfull) and make install (sucessfull).
The dump indicathe the binary PATH is: /usr/local/kerberos/lib::/usr/lib:/lib. 
It doesn't take care of the blibpath
        ca06:/usr/local# dump -H bin/ssh-keygen
        bin/ssh-keygen:
                                ***Loader Section***
                              Loader Header Information
        VERSION#         #SYMtableENT     #RELOCent        LENidSTR
        0x00000001       0x000000cd       0x000001f5       0x00000081
        #IMPfilID        OFFidSTR         LENstrTBL        OFFstrTBL
        0x00000003       0x00002ad4       0x000005fe       0x00002b55
                                ***Import File Strings***
        INDEX  PATH                          BASE                MEMBER
        0      /opt/freeware/lib:/lib:/usr/lib:/home/frphoebus/openssh/kbr5/krb5-1.7.1-cc/src/lib
        1                                    libc.a              shr.o
        2                                    libcrypto.a         libcrypto.so.0.9.7
        ca06:/usr/local# ldd bin/ssh-keygen
        bin/ssh-keygen needs:
                 /lib/libc.a(shr.o)
                 /opt/freeware/lib/libcrypto.a(libcrypto.so.0.9.7)
                 /unix
                 /lib/libcrypt.a(shr.o)
        ca06:/usr/local#


      


More information about the openssh-unix-dev mailing list