Forwarded to openssl-users for public discussion.

Best regards,
        Lutz

----- Forwarded message from pgngw+dev001+openss...@f-m.fm -----

From: pgngw+dev001+openss...@f-m.fm
To: r...@openssl.org
Subject: openssl 1.0.0a make FAIL @ multiple missing/redefined header errors,
        only on Ubuntu 10 LTS 
Reply-To: pgngw+dev001+openss...@f-m.fm
Date: Sun, 24 Oct 2010 09:09:34 -0700


building openssl 1.0.0a from the src tarball, on openSUSE 11.3,
absolutely no problems ... an error- & warning-free build.

trying same on Ubuntu

        lsb_release -a
                No LSB modules are available.
                Distributor ID: Ubuntu
                Description:    Ubuntu 10.04.1 LTS
                Release:        10.04
                Codename:       lucid
        uname -a
                Linux dev.loc 2.6.32-25-generic #45-Ubuntu SMP Sat Oct
                16 19:52:42 UTC 2010 x86_64 GNU/Linux

@,

        tar zxf openssl-1.0.0a.tar.gz
        cd /usr/local/src/openssl/openssl-1.0.0a

        ./Configure shared --prefix=/usr/local/ssl
        --openssldir=/usr/local/ssl linux-x86_64 threads zlib
        enable-idea enable-rc5 enable-mdc2
        make SHARED_LDFLAGS=-Wl,-rpath,/usr/local/ssl/lib depend

'make depend' reports countless missing header warnings, e.g.

        ...
        makedepend: warning:  o_names.c (reading
        ../../include/openssl/bio.h, line 67): cannot find include file
        "stdarg.h"
                        not in ../stdarg.h
                        not in ../../stdarg.h
                        not in ../asn1/stdarg.h
                        not in ../evp/stdarg.h
                        not in ../../include/stdarg.h
                        not in /usr/include/stdarg.h
        makedepend: warning:  obj_dat.c (reading /usr/include/limits.h,
        line 125): cannot find include file "limits.h"
        makedepend: warning:  obj_dat.c (reading /usr/include/unistd.h,
        line 227): cannot find include file "stddef.h"
                        not in ../stddef.h
                        not in ../../stddef.h
                        not in ../asn1/stddef.h
                        not in ../evp/stddef.h
                        not in ../../include/stddef.h
                        not in /usr/include/stddef.h
        ...

as well as a bunch of multiple-definition problems,

        ...
        makedepend: warning:  /usr/include/time.h includes
        /usr/include/bits/types.h more than once!
        Already have
                        /usr/include/bits/types.h
        makedepend: warning:  /usr/include/time.h includes
        /usr/include/bits/types.h more than once!
        Already have
                        /usr/include/bits/types.h
        ...

1st linking to provide the *missing* headers,

        cd /usr/local/src/openssl/openssl-1.0.0a/include
        ln -sf
        /usr/lib/gcc/x86_64-linux-gnu/4.4/include/{stddef.h,stdarg.h} .
        ln -sf
        /usr/lib/gcc/x86_64-linux-gnu/4.4/include-fixed/{limits.h,syslimits.h}
        .

then, as above,

        ./Configure ...
        make ... depend

now completes with no "cannot find" errors, but the "more than once"
warnings remain.

@ subsequent,

        make SHARED_LDFLAGS=-Wl,-rpath,/usr/local/ssl/lib

fails,

making all in crypto...
        make[1]: Entering directory
        `/usr/local/src/openssl/openssl-1.0.0a/crypto'
        ( echo "#ifndef MK1MF_BUILD"; \
                        echo '  /* auto-generated by crypto/Makefile for
                        crypto/cversion.c */'; \
                        echo '  #define CFLAGS "/usr/bin/gcc -fPIC
                        -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS
                        -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64
                        -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int
                        -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT
                        -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM
                        -DAES_ASM -DWHIRLPOOL_ASM"'; \
                        echo '  #define PLATFORM "linux-x86_64"'; \
                        echo "  #define DATE \"`LC_ALL=C LC_TIME=C
                        date`\""; \
                        echo '#endif' ) >buildinf.h
        /usr/bin/gcc -I. -I.. -I../include  -fPIC -DOPENSSL_PIC -DZLIB
        -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64
        -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int
        -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DSHA1_ASM
        -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DWHIRLPOOL_ASM  
        -c -o cryptlib.o cryptlib.c
        In file included from /usr/include/sys/select.h:46,
                                        from
                                        /usr/include/sys/types.h:220,
                                        from /usr/include/stdlib.h:320,
                                        from cryptlib.h:62,
                                        from cryptlib.c:117:
        /usr/include/bits/time.h:70: error: redefinition of ‘struct
        timeval’
        cryptlib.c: In function ‘CRYPTO_THREADID_set_numeric’:
        cryptlib.c:426: warning: implicit declaration of function
        ‘memset’
        cryptlib.c:426: warning: incompatible implicit declaration of
        built-in function ‘memset’
        cryptlib.c: In function ‘CRYPTO_THREADID_set_pointer’:
        cryptlib.c:437: warning: incompatible implicit declaration of
        built-in function ‘memset’
        cryptlib.c: In function ‘CRYPTO_THREADID_current’:
        cryptlib.c:503: error: ‘errno’ undeclared (first use in this
        function)
        cryptlib.c:503: error: (Each undeclared identifier is reported
        only once
        cryptlib.c:503: error: for each function it appears in.)
        cryptlib.c: In function ‘CRYPTO_THREADID_cmp’:
        cryptlib.c:509: warning: implicit declaration of function
        ‘memcmp’
        cryptlib.c: In function ‘CRYPTO_THREADID_cpy’:
        cryptlib.c:514: warning: implicit declaration of function
        ‘memcpy’
        cryptlib.c:514: warning: incompatible implicit declaration of
        built-in function ‘memcpy’
        cryptlib.c: In function ‘CRYPTO_thread_id’:
        cryptlib.c:548: warning: implicit declaration of function
        ‘getpid’
        make[1]: *** [cryptlib.o] Error 1
        make[1]: Leaving directory
        `/usr/local/src/openssl/openssl-1.0.0a/crypto'
        make: *** [build_crypto] Error 1

----- End forwarded message -----
--
Lutz Jaenicke           jaeni...@openssl.org
OpenSSL Project         http://www.openssl.org/~jaenicke/
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to