[erlang-questions] Problem compiling under CentOS 5

Peter Lemenkov <>
Sun Aug 10 22:46:16 CEST 2008


Hello All!

2008/8/8, Brian Candler <>:
> I've been trying to compile R12B3 under CentOS 5, and compilation aborts at
>  the following point:
>
>  gcc  -g -O2 -I/v/build/otp_src_R12B-3/erts/i686-pc-linux-gnu  -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -D_GNU_SOURCE -o ../priv/bin/i686-pc-linux-gnu/ssl_esock ../priv/obj/i686-pc-linux-gnu/esock.o ../priv/obj/i686-pc-linux-gnu/debuglog.o ../priv/obj/i686-pc-linux-gnu/esock_poll.o ../priv/obj/i686-pc-linux-gnu/esock_osio.o ../priv/obj/i686-pc-linux-gnu/esock_utils.o ../priv/obj/i686-pc-linux-gnu/esock_posix_str.o ../priv/obj/i686-pc-linux-gnu/esock_openssl.o -lutil -ldl -lm   /usr/lib/libssl.a /usr/lib/libcrypto.a  /usr/lib/libkrb5.a /usr/lib/libkrb5support.a /usr/lib/libk5crypto.a /usr/lib/libresolv.a /usr/lib/libcom_err.a /usr/lib/libz.a
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_next_cred':
>  (.text+0x738): undefined reference to `keyctl_read_alloc'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_get_principal':
>  (.text+0xf2b): undefined reference to `keyctl_read_alloc'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_getkeycount':
>  (.text+0x1196): undefined reference to `keyctl_read'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_clearcache':
>  (.text+0x1237): undefined reference to `keyctl_clear'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_clearcache':
>  (.text+0x1269): undefined reference to `keyctl_clear'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_resolve':
>  (.text+0x184f): undefined reference to `request_key'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_resolve':
>  (.text+0x1887): undefined reference to `keyctl_read'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_resolve':
>  (.text+0x190f): undefined reference to `keyctl_search'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_resolve':
>  (.text+0x1945): undefined reference to `add_key'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_resolve':
>  (.text+0x1af2): undefined reference to `keyctl_search'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_initialize':
>  (.text+0x20f8): undefined reference to `add_key'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_store':
>  (.text+0x2b8f): undefined reference to `add_key'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_generate_new':
>  (.text+0x2d1b): undefined reference to `keyctl_search'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_generate_new':
>  (.text+0x2d5d): undefined reference to `add_key'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_start_seq_get':
>  (.text+0x32e5): undefined reference to `keyctl_read'
>  /usr/lib/libkrb5.a(cc_keyring.o): In function `krb5_krcc_destroy':
>  (.text+0x39a5): undefined reference to `keyctl_unlink'
>  /usr/lib/libkrb5support.a(selinux.o): In function `pop_fscreatecon':
>  (.text+0x1a): undefined reference to `is_selinux_enabled'
>  /usr/lib/libkrb5support.a(selinux.o): In function `pop_fscreatecon':
>  (.text+0x34): undefined reference to `setfscreatecon'
>  /usr/lib/libkrb5support.a(selinux.o): In function `pop_fscreatecon':
>  (.text+0x40): undefined reference to `freecon'
>  /usr/lib/libkrb5support.a(selinux.o): In function `push_fscreatecon':
>  (.text+0x77): undefined reference to `is_selinux_enabled'
>  /usr/lib/libkrb5support.a(selinux.o): In function `push_fscreatecon':
>  (.text+0x97): undefined reference to `getfscreatecon'
>  /usr/lib/libkrb5support.a(selinux.o): In function `push_fscreatecon':
>  (.text+0x149): undefined reference to `matchpathcon'
>  /usr/lib/libkrb5support.a(selinux.o): In function `push_fscreatecon':
>  (.text+0x160): undefined reference to `setfscreatecon'
>  /usr/lib/libkrb5support.a(selinux.o): In function `push_fscreatecon':
>  (.text+0x173): undefined reference to `freecon'
>  /usr/lib/libkrb5support.a(selinux.o): In function `push_fscreatecon':
>  (.text+0x198): undefined reference to `freecon'
>  collect2: ld returned 1 exit status
>  make[4]: *** [../priv/bin/i686-pc-linux-gnu/ssl_esock] Error 1
>  make[4]: Leaving directory `/v/build/otp_src_R12B-3/lib/ssl/c_src'
>  make[3]: *** [opt] Error 2
>  make[3]: Leaving directory `/v/build/otp_src_R12B-3/lib/ssl/c_src'
>  make[2]: *** [opt] Error 2
>  make[2]: Leaving directory `/v/build/otp_src_R12B-3/lib/ssl'
>  make[1]: *** [opt] Error 2
>  make[1]: Leaving directory `/v/build/otp_src_R12B-3/lib'
>  make: *** [libs] Error 2

You're right - that's an issue with missing libs in Makefile. See
patch in EPEL repository:

http://cvs.fedoraproject.org/viewcvs/rpms/erlang/EL-5/otp-ssl_missing_libs.patch?rev=1.1&view=auto

BTW I plan to rebuild R12B-3 for EPEL tomorrow (if everything will be
OK, it will be pushed to epel-testing repo in a cooule of days). Feel
free to contact me directly (or file a bug in redhat's bugzilla if you
find something weird).
-- 
With best regards!



More information about the erlang-questions mailing list