Ad Widget

Collapse

Compile Error on Centos 5.6

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • jdehnert
    Junior Member
    • Jun 2011
    • 10

    #1

    Compile Error on Centos 5.6

    Configure like is as follows..

    ./configure --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl --with-ldap --with-ssh2

    Configure output...

    Configuration:

    Detected OS: linux-gnu
    Install path: /usr/local
    Compilation arch: linux

    Compiler: gcc
    Compiler flags: -g -O2 -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1 -I/usr/include/rpm -I/usr/local/include -I/usr/include/gdbm -I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE -I. -I/usr/include/net-snmp -I/usr/include -I/usr/include

    Enable server: yes
    Server details:
    With database: MySQL
    WEB Monitoring via: cURL
    Native Jabber: yes
    SNMP: net-snmp
    IPMI: no
    SSH: yes
    Linker flags: -rdynamic -L /usr/lib64/mysql -L/usr/lib -lldap -llber -L/usr/lib64 -liksemel -L/usr/kerberos/lib64 -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lidn -lssl -lcrypto -lz -L/usr/lib64 -L/usr/lib64 -lnetsnmp -lcrypto -lm -L/usr/lib64/lib -lwrap -lcrypto -L/usr/lib64 -L/usr/lib64 -lnetsnmp -lcrypto -lm -L/usr/lib64/lib -lwrap -lcrypto -L/usr/lib
    Libraries: -lm -lresolv -lmysqlclient -liksemel -lcurl -lnetsnmp -lssh2

    Enable proxy: no

    Enable agent: no

    LDAP support: yes
    IPv6 support: no

    ************************************************** *********
    * Now run 'make install' *
    * *
    * Thank you for using Zabbix! *
    * <http://www.zabbix.com> *
    ************************************************** *********



    and here is the compile failure...

    gcc -DZABBIX_DAEMON -g -O2 -I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1 -I/usr/include/rpm -I/usr/local/include -I/usr/include/gdbm -I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE -I. -I/usr/include/net-snmp -I/usr/include -I/usr/include -L/usr/lib64 -liksemel -L/usr/kerberos/lib64 -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lidn -lssl -lcrypto -lz -L/usr/lib64 -L/usr/lib64 -lnetsnmp -lcrypto -lm -L/usr/lib64/lib -lwrap -lcrypto -L/usr/lib64 -L/usr/lib64 -lnetsnmp -lcrypto -lm -L/usr/lib64/lib -lwrap -lcrypto -L/usr/lib -rdynamic -L /usr/lib64/mysql -L/usr/lib -lldap -llber -o zabbix_server zabbix_server-actions.o zabbix_server-operations.o zabbix_server-events.o zabbix_server-zlog.o zabbix_server-server.o alerter/libzbxalerter.a dbsyncer/libzbxdbsyncer.a dbconfig/libzbxdbconfig.a discoverer/libzbxdiscoverer.a pinger/libzbxpinger.a poller/libzbxpoller.a housekeeper/libzbxhousekeeper.a timer/libzbxtimer.a trapper/libzbxtrapper.a nodewatcher/libzbxnodewatcher.a utils/libzbxutils.a httppoller/libzbxhttppoller.a watchdog/libzbxwatchdog.a escalator/libzbxescalator.a proxypoller/libzbxproxypoller.a selfmon/libzbxselfmon.a ../../src/libs/zbxsysinfo/libzbxserversysinfo.a ../../src/libs/zbxsysinfo/linux/libspecsysinfo.a ../../src/libs/zbxsysinfo/common/libcommonsysinfo.a ../../src/libs/zbxsysinfo/simple/libsimplesysinfo.a ../../src/libs/zbxlog/libzbxlog.a ../../src/libs/zbxdbcache/libzbxdbcache.a ../../src/libs/zbxmemory/libzbxmemory.a ../../src/libs/zbxalgo/libzbxalgo.a ../../src/libs/zbxnix/libzbxnix.a ../../src/libs/zbxsys/libzbxsys.a ../../src/libs/zbxconf/libzbxconf.a ../../src/libs/zbxmedia/libzbxmedia.a ../../src/libs/zbxcommon/libzbxcommon.a ../../src/libs/zbxcrypto/libzbxcrypto.a ../../src/libs/zbxcomms/libzbxcomms.a ../../src/libs/zbxcommshigh/libzbxcommshigh.a ../../src/libs/zbxjson/libzbxjson.a ../../src/libs/zbxexec/libzbxexec.a ../../src/libs/zbxself/libzbxself.a ../../src/libs/zbxserver/libzbxserver.a ../../src/libs/zbxicmpping/libzbxicmpping.a ../../src/libs/zbxdbhigh/libzbxdbhigh.a ../../src/libs/zbxdb/libzbxdb.a -lmysqlclient -liksemel -lcurl -lnetsnmp -lssh2 -lm -lresolv
    /usr/lib64/mysql/libmysqlclient.a(my_thr_init.c.o): In function `my_thread_init':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:331: undefined reference to `pthread_getspecific'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:349: undefined reference to `pthread_setspecific'
    /usr/lib64/mysql/libmysqlclient.a(my_thr_init.c.o): In function `my_thread_global_init':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:157: undefined reference to `pthread_mutexattr_init'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:158: undefined reference to `pthread_mutexattr_settype'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:166: undefined reference to `pthread_mutexattr_init'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:167: undefined reference to `pthread_mutexattr_settype'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:171: undefined reference to `pthread_key_create'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:208: undefined reference to `pthread_create'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:210: undefined reference to `pthread_join'
    /usr/lib64/mysql/libmysqlclient.a(my_thr_init.c.o): In function `my_thread_end':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:387: undefined reference to `pthread_getspecific'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:434: undefined reference to `pthread_setspecific'
    /usr/lib64/mysql/libmysqlclient.a(my_thr_init.c.o): In function `my_thread_global_end':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:268: undefined reference to `pthread_key_delete'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:270: undefined reference to `pthread_mutexattr_destroy'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:273: undefined reference to `pthread_mutexattr_destroy'
    /usr/lib64/mysql/libmysqlclient.a(my_thr_init.c.o): In function `my_thread_global_reinit':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:118: undefined reference to `pthread_getspecific'
    /usr/lib64/mysql/libmysqlclient.a(my_thr_init.c.o): In function `_my_thread_var':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/my_thr_init.c:439: undefined reference to `pthread_getspecific'
    /usr/lib64/mysql/libmysqlclient.a(thr_mutex.c.o): In function `my_pthread_fastmutex_lock':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/thr_mutex.c:481: undefined reference to `pthread_mutex_trylock'
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/thr_mutex.c:481: undefined reference to `pthread_mutex_trylock'
    /usr/lib64/mysql/libmysqlclient.a(charset.c.o): In function `get_charset_name':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/charset.c:533: undefined reference to `pthread_once'
    /usr/lib64/mysql/libmysqlclient.a(charset.c.o): In function `get_charset':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/charset.c:597: undefined reference to `pthread_once'
    /usr/lib64/mysql/libmysqlclient.a(charset.c.o): In function `get_charset_number':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/charset.c:522: undefined reference to `pthread_once'
    /usr/lib64/mysql/libmysqlclient.a(charset.c.o): In function `get_charset_by_csname':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/charset.c:644: undefined reference to `pthread_once'
    /usr/lib64/mysql/libmysqlclient.a(charset.c.o): In function `get_collation_number':
    /export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/charset.c:484: undefined reference to `pthread_once'
    /usr/lib64/mysql/libmysqlclient.a(charset.c.o):/export/home/pb2/build/sb_0-3159149-1301581932.71/rpm/BUILD/mysql-5.5.11/mysql-5.5.11/mysys/charset.c:619: more undefined references to `pthread_once' follow
    collect2: ld returned 1 exit status
    make[3]: *** [zabbix_server] Error 1
    make[3]: Leaving directory `/home/jdehnert/src/zabbix-1.8.5/src/zabbix_server'
    make[2]: *** [install-recursive] Error 1
    make[2]: Leaving directory `/home/jdehnert/src/zabbix-1.8.5/src/zabbix_server'
    make[1]: *** [install-recursive] Error 1
    make[1]: Leaving directory `/home/jdehnert/src/zabbix-1.8.5/src'
    make: *** [install-recursive] Error 1



    So, clearly I have some kind of pthread problem. I'm hoping that someone else has run across this issue and can point me to the correct solution. I'm researching pthread in the mean while.
  • jdehnert
    Junior Member
    • Jun 2011
    • 10

    #2
    Solution, but not sure why I need to do this.

    After looking at a few other posts, I took a leap of faith and made the following change...

    vi src/zabbix_server/Makefile

    - LIBS = -lm -lresolv
    + LIBS = -lm -lresolv -lpthread


    re-ran make install, and the whole shooting match compiled. I'm not certain why the system didn't pickup lpthread in the first place, but that seemed to be all that was required.

    POWERS THAT BE! You may want to take a note of that.

    Comment

    • jdehnert
      Junior Member
      • Jun 2011
      • 10

      #3
      Better Solution, but not sure why I need to do this.

      Instead of tweaking the specific Makefile, I ran the following in my shell

      export LIBS=-lpthread

      This got the appropriate info passed to all the makefiles in the tree.

      Comment

      Working...