GNOME Bugzilla – Bug 616452
[OpenBSD] Do not set '-Wl,--no-undefined' on freebsd/openbsd
Last modified: 2010-12-13 12:08:24 UTC
Hi. Trying to build evolution-data-server 2.30.0 on OpenBSD fails with the following: (removing -Wl,--no-undefined from LDFLAGS obviously "fixes" it but...) mv -f .deps/libedataserver_1_2_la-e-xml-hash-utils.Tpo .deps/libedataserver_1_2_la-e-xml-hash-utils.Plo /usr/local/bin/libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I.. -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -fno-strict-aliasing -I.. -DG_LOG_DOMAIN=\"e-data-server\" -DE_DATA_SERVER_PREFIX=\"/usr/local\" -DEVOLUTION_LOCALEDIR=\""/usr/local/share/locale"\" -DE_DATA_SERVER_EXTENSIONDIR=\"/usr/local/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/usr/local/share/pixmaps/evolution-data-server\" -DE_DATA_SERVER_UI_UIDIR=\""/usr/local/share/evolution-data-server-2.30/ui"\" -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include/gconf/2 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include/nspr -I/usr/local/include/libsoup-2.4 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db4 -O2 -pipe -Wall -MT libedataserver_1_2_la-eds-version.lo -MD -MP -MF .deps/libedataserver_1_2_la-eds-version.Tpo -c -o libedataserver_1_2_la-eds-version.lo `test -f 'eds-version.c' || echo './'`eds-version.c cc -DHAVE_CONFIG_H -I. -I.. -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -fno-strict-aliasing -I.. -DG_LOG_DOMAIN=\"e-data-server\" -DE_DATA_SERVER_PREFIX=\"/usr/local\" -DEVOLUTION_LOCALEDIR=\"/usr/local/share/locale\" -DE_DATA_SERVER_EXTENSIONDIR=\"/usr/local/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/usr/local/share/pixmaps/evolution-data-server\" -DE_DATA_SERVER_UI_UIDIR=\"/usr/local/share/evolution-data-server-2.30/ui\" -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include/gconf/2 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include/nspr -I/usr/local/include/libsoup-2.4 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db4 -O2 -pipe -Wall -MT libedataserver_1_2_la-eds-version.lo -MD -MP -MF .deps/libedataserver_1_2_la-eds-version.Tpo -c eds-version.c -fPIC -DPIC -o .libs/libedataserver_1_2_la-eds-version.o cc -DHAVE_CONFIG_H -I. -I.. -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -fno-strict-aliasing -I.. -DG_LOG_DOMAIN=\"e-data-server\" -DE_DATA_SERVER_PREFIX=\"/usr/local\" -DEVOLUTION_LOCALEDIR=\"/usr/local/share/locale\" -DE_DATA_SERVER_EXTENSIONDIR=\"/usr/local/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/usr/local/share/pixmaps/evolution-data-server\" -DE_DATA_SERVER_UI_UIDIR=\"/usr/local/share/evolution-data-server-2.30/ui\" -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include/gconf/2 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include/nspr -I/usr/local/include/libsoup-2.4 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db4 -O2 -pipe -Wall -MT libedataserver_1_2_la-eds-version.lo -MD -MP -MF .deps/libedataserver_1_2_la-eds-version.Tpo -c eds-version.c -o libedataserver_1_2_la-eds-version.o >/dev/null 2>&1 mv -f .deps/libedataserver_1_2_la-eds-version.Tpo .deps/libedataserver_1_2_la-eds-version.Plo /usr/local/bin/libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I.. -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -fno-strict-aliasing -I.. -DG_LOG_DOMAIN=\"e-data-server\" -DE_DATA_SERVER_PREFIX=\"/usr/local\" -DEVOLUTION_LOCALEDIR=\""/usr/local/share/locale"\" -DE_DATA_SERVER_EXTENSIONDIR=\"/usr/local/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/usr/local/share/pixmaps/evolution-data-server\" -DE_DATA_SERVER_UI_UIDIR=\""/usr/local/share/evolution-data-server-2.30/ui"\" -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include/gconf/2 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include/nspr -I/usr/local/include/libsoup-2.4 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db4 -O2 -pipe -Wall -MT libedataserver_1_2_la-md5-utils.lo -MD -MP -MF .deps/libedataserver_1_2_la-md5-utils.Tpo -c -o libedataserver_1_2_la-md5-utils.lo `test -f 'md5-utils.c' || echo './'`md5-utils.c cc -DHAVE_CONFIG_H -I. -I.. -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -fno-strict-aliasing -I.. -DG_LOG_DOMAIN=\"e-data-server\" -DE_DATA_SERVER_PREFIX=\"/usr/local\" -DEVOLUTION_LOCALEDIR=\"/usr/local/share/locale\" -DE_DATA_SERVER_EXTENSIONDIR=\"/usr/local/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/usr/local/share/pixmaps/evolution-data-server\" -DE_DATA_SERVER_UI_UIDIR=\"/usr/local/share/evolution-data-server-2.30/ui\" -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include/gconf/2 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include/nspr -I/usr/local/include/libsoup-2.4 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db4 -O2 -pipe -Wall -MT libedataserver_1_2_la-md5-utils.lo -MD -MP -MF .deps/libedataserver_1_2_la-md5-utils.Tpo -c md5-utils.c -fPIC -DPIC -o .libs/libedataserver_1_2_la-md5-utils.o cc -DHAVE_CONFIG_H -I. -I.. -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES -Wall -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -fno-strict-aliasing -I.. -DG_LOG_DOMAIN=\"e-data-server\" -DE_DATA_SERVER_PREFIX=\"/usr/local\" -DEVOLUTION_LOCALEDIR=\"/usr/local/share/locale\" -DE_DATA_SERVER_EXTENSIONDIR=\"/usr/local/lib/evolution-data-server-1.2/extensions\" -DE_DATA_SERVER_IMAGESDIR=\"/usr/local/share/pixmaps/evolution-data-server\" -DE_DATA_SERVER_UI_UIDIR=\"/usr/local/share/evolution-data-server-2.30/ui\" -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include/gconf/2 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include/nspr -I/usr/local/include/libsoup-2.4 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db4 -O2 -pipe -Wall -MT libedataserver_1_2_la-md5-utils.lo -MD -MP -MF .deps/libedataserver_1_2_la-md5-utils.Tpo -c md5-utils.c -o libedataserver_1_2_la-md5-utils.o >/dev/null 2>&1 mv -f .deps/libedataserver_1_2_la-md5-utils.Tpo .deps/libedataserver_1_2_la-md5-utils.Plo /usr/local/bin/libtool --tag=CC --mode=link cc -O2 -pipe -Wall -version-info 11:1:0 -L/usr/local/lib -Wl,--no-undefined -o libedataserver-1.2.la -rpath /usr/local/lib libedataserver_1_2_la-e-account-list.lo libedataserver_1_2_la-e-account.lo libedataserver_1_2_la-e-categories.lo libedataserver_1_2_la-e-flag.lo libedataserver_1_2_la-e-iconv.lo libedataserver_1_2_la-e-iterator.lo libedataserver_1_2_la-e-list.lo libedataserver_1_2_la-e-list-iterator.lo libedataserver_1_2_la-e-memory.lo libedataserver_1_2_la-e-msgport.lo libedataserver_1_2_la-e-proxy.lo libedataserver_1_2_la-e-sexp.lo libedataserver_1_2_la-e-source-group.lo libedataserver_1_2_la-e-source-list.lo libedataserver_1_2_la-e-source.lo libedataserver_1_2_la-e-time-utils.lo libedataserver_1_2_la-e-uid.lo libedataserver_1_2_la-e-url.lo libedataserver_1_2_la-e-data-server-util.lo libedataserver_1_2_la-e-trie.lo libedataserver_1_2_la-e-xml-utils.lo libedataserver_1_2_la-e-xml-hash-utils.lo libedataserver_1_2_la-eds-version.lo libedataserver_1_2_la-md5-utils.lo -L/usr/local/lib -pthread -lsoup-2.4 -lgio-2.0 -lxml2 -lgnutls -lgconf-2 -lORBit-2 -lgthread-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -ldbus-1 -pthread -L/usr/local/lib -lplc4 -lplds4 -lnspr4 -pthread -liconv -L/usr/local/lib -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lxml2 -lgnutls cc -shared -fPIC -DPIC -o .libs/libedataserver-1.2.so.10.1 .libs/libedataserver_1_2_la-e-account-list.o .libs/libedataserver_1_2_la-e-account.o .libs/libedataserver_1_2_la-e-categories.o .libs/libedataserver_1_2_la-e-flag.o .libs/libedataserver_1_2_la-e-iconv.o .libs/libedataserver_1_2_la-e-iterator.o .libs/libedataserver_1_2_la-e-list.o .libs/libedataserver_1_2_la-e-list-iterator.o .libs/libedataserver_1_2_la-e-memory.o .libs/libedataserver_1_2_la-e-msgport.o .libs/libedataserver_1_2_la-e-proxy.o .libs/libedataserver_1_2_la-e-sexp.o .libs/libedataserver_1_2_la-e-source-group.o .libs/libedataserver_1_2_la-e-source-list.o .libs/libedataserver_1_2_la-e-source.o .libs/libedataserver_1_2_la-e-time-utils.o .libs/libedataserver_1_2_la-e-uid.o .libs/libedataserver_1_2_la-e-url.o .libs/libedataserver_1_2_la-e-data-server-util.o .libs/libedataserver_1_2_la-e-trie.o .libs/libedataserver_1_2_la-e-xml-utils.o .libs/libedataserver_1_2_la-e-xml-hash-utils.o .libs/libedataserver_1_2_la-eds-version.o .libs/libedataserver_1_2_la-md5-utils.o -L/usr/local/lib -lgconf-2 -L/usr/ports/pobj/ORBit2-2.14.18/ORBit2-2.14.18/src/services/name/.libs -L/usr/ports/pobj/ORBit2-2.14.18/ORBit2-2.14.18/src/services/imodule/.libs -L/usr/ports/pobj/ORBit2-2.14.18/ORBit2-2.14.18/src/orb/.libs -ldbus-glib-1 -lORBit-2 -ldbus-1 -lplc4 -lplds4 -lnspr4 -lsoup-2.4 -lgthread-2.0 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lpcre -lxml2 -lm -lgnutls -ltasn1 -lz -lgcrypt -lgpg-error -lintl -liconv -Wl,--no-undefined -pthread -pthread -pthread -pthread -pthread -pthread -pthread .libs/libedataserver_1_2_la-e-account-list.o(.text+0x7d): In function `.L12': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account-list.o(.text+0xf6): In function `.L10': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account-list.o(.text+0x111): In function `.L8': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account-list.o(.text+0x12f): In function `.L9': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account-list.o(.text+0x23c): In function `e_account_list_get_default': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account-list.o(.text+0x650): more undefined references to `strcmp' follow .libs/libedataserver_1_2_la-e-account.o(.text+0x183): In function `ea_setting_notify': : undefined reference to `strrchr' .libs/libedataserver_1_2_la-e-account.o(.text+0x2e7): In function `ea_setting_setup': : undefined reference to `sprintf' .libs/libedataserver_1_2_la-e-account.o(.text+0x40d): In function `e_account_writable_option': : undefined reference to `sprintf' .libs/libedataserver_1_2_la-e-account.o(.text+0x45b): In function `e_account_writable_option': : undefined reference to `sprintf' .libs/libedataserver_1_2_la-e-account.o(.text+0x695): In function `e_account_set_string': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account.o(.text+0x9a3): In function `xml_set_prop': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-account.o(.text+0xd1a): In function `e_account_to_xml': : undefined reference to `sprintf' .libs/libedataserver_1_2_la-e-account.o(.text+0x1097): In function `e_account_to_xml': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-e-account.o(.text+0x11af): In function `xml_set_int': : undefined reference to `strtol' .libs/libedataserver_1_2_la-e-account.o(.text+0x121e): In function `xml_set_content': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x1df): In function `e_iconv_init': : undefined reference to `setlocale' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x230): In function `e_iconv_init': : undefined reference to `nl_langinfo' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x24f): In function `e_iconv_init': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x531): In function `e_iconv_charset_name': : undefined reference to `strcpy' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x609): In function `e_iconv_charset_name': : undefined reference to `strtoul' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x63b): In function `e_iconv_charset_name': : undefined reference to `strtoul' .libs/libedataserver_1_2_la-e-iconv.o(.text+0x859): In function `e_iconv_open': : undefined reference to `sprintf' .libs/libedataserver_1_2_la-e-iconv.o(.text+0xa8b): In function `e_iconv_open': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-iconv.o(.text+0xb53): In function `e_iconv_open': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-iconv.o(.text+0xb85): In function `e_iconv_open': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-memory.o(.text+0x59c): In function `e_mempool_strdup': : undefined reference to `strcpy' .libs/libedataserver_1_2_la-e-memory.o(.text+0xc1a): In function `e_memchunk_alloc0': : undefined reference to `memset' .libs/libedataserver_1_2_la-e-memory.o(.text+0x102b): In function `e_strv_set': : undefined reference to `strcpy' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x146): In function `thread_find': : undefined reference to `pthread_equal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x222): In function `e_mutex_lock': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x245): In function `e_mutex_lock': : undefined reference to `pthread_self' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x254): In function `e_mutex_lock': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x27c): In function `e_mutex_lock': : undefined reference to `pthread_cond_wait' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x29c): In function `e_mutex_lock': : undefined reference to `pthread_equal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x2b0): In function `e_mutex_lock': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x2f3): In function `thread_destroy_msg': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x307): In function `thread_destroy_msg': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x349): In function `e_thread_set_msg_received': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x35d): In function `e_thread_set_msg_received': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x38f): In function `e_thread_set_msg_lost': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x39e): In function `e_thread_set_msg_lost': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x3cd): In function `e_thread_set_msg_destroy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x3e1): In function `e_thread_set_msg_destroy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x419): In function `e_mutex_cond_wait': : undefined reference to `pthread_cond_wait' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x477): In function `e_mutex_cond_wait': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x4b5): In function `e_mutex_cond_wait': : undefined reference to `pthread_self' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x4c1): In function `e_mutex_cond_wait': : undefined reference to `pthread_equal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x4d6): In function `e_mutex_cond_wait': : undefined reference to `pthread_cond_wait' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x4ff): In function `e_mutex_cond_wait': : undefined reference to `pthread_self' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x50b): In function `e_mutex_cond_wait': : undefined reference to `pthread_equal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x51d): In function `e_mutex_cond_wait': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x551): In function `e_mutex_assert_locked': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x589): In function `e_mutex_assert_locked': : undefined reference to `pthread_self' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x595): In function `e_mutex_assert_locked': : undefined reference to `pthread_equal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x5a5): In function `e_mutex_assert_locked': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x5fa): In function `e_mutex_unlock': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x610): In function `e_mutex_unlock': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x630): In function `e_mutex_unlock': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x66c): In function `e_mutex_unlock': : undefined reference to `pthread_self' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x678): In function `e_mutex_unlock': : undefined reference to `pthread_equal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x6a7): In function `e_mutex_unlock': : undefined reference to `pthread_cond_signal' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x6b3): In function `e_mutex_unlock': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x80a): In function `e_mutex_destroy': : undefined reference to `pthread_mutex_destroy' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x848): In function `e_mutex_destroy': : undefined reference to `pthread_mutex_destroy' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x85a): In function `e_mutex_destroy': : undefined reference to `pthread_cond_destroy' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x869): In function `e_mutex_destroy': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x896): In function `e_mutex_destroy': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x90b): In function `e_mutex_new': : undefined reference to `pthread_mutex_init' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x929): In function `e_mutex_new': : undefined reference to `pthread_mutex_init' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x936): In function `e_mutex_new': : undefined reference to `pthread_cond_init' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x96f): In function `e_thread_busy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x9a2): In function `e_thread_busy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x9dc): In function `e_thread_busy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xa15): In function `e_thread_busy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xa4e): In function `msgport_sync_with_pipe': : undefined reference to `read' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xa5a): In function `msgport_sync_with_pipe': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xa64): In function `msgport_sync_with_pipe': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xcda): In function `e_msgport_put': : undefined reference to `write' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xcea): In function `e_msgport_put': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xcf4): In function `e_msgport_put': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xe17): In function `e_thread_put': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xe5f): In function `e_thread_put': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xe74): In function `e_thread_put': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xe86): In function `e_thread_put': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xef9): In function `e_thread_put': : undefined reference to `pthread_create' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xf31): In function `e_thread_put': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xf64): In function `e_thread_put': : undefined reference to `puts' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xf93): In function `e_thread_put': : undefined reference to `puts' .libs/libedataserver_1_2_la-e-msgport.o(.text+0xfc8): In function `e_thread_put': : undefined reference to `pthread_create' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1035): In function `e_thread_put': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x10ce): In function `thread_dispatch': : undefined reference to `pthread_self' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x10ef): In function `thread_dispatch': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1133): In function `thread_dispatch': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x113c): In function `thread_dispatch': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1151): In function `thread_dispatch': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x11cc): In function `thread_dispatch': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1205): In function `thread_dispatch': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x121c): In function `thread_dispatch': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1314): In function `e_msgport_fd': : undefined reference to `pipe' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x137c): In function `e_msgport_destroy': : undefined reference to `close' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1385): In function `e_msgport_destroy': : undefined reference to `close' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x142a): In function `e_thread_destroy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x144d): In function `e_thread_destroy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1485): In function `e_thread_destroy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1497): In function `e_thread_destroy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x14a7): In function `e_thread_destroy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x14b0): In function `e_thread_destroy': : undefined reference to `pthread_mutex_destroy' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x151c): In function `e_thread_destroy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1527): In function `e_thread_destroy': : undefined reference to `pthread_join' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1530): In function `e_thread_destroy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x158b): In function `e_thread_destroy': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1595): In function `e_thread_destroy': : undefined reference to `pthread_join' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x159e): In function `e_thread_destroy': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1623): In function `e_thread_new': : undefined reference to `pthread_mutex_init' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x164d): In function `e_thread_new': : undefined reference to `pthread_mutex_lock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x1664): In function `e_thread_new': : undefined reference to `pthread_mutex_unlock' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x16cc): In function `em_cache_lookup': : undefined reference to `time' .libs/libedataserver_1_2_la-e-msgport.o(.text+0x179d): In function `em_cache_add': : undefined reference to `time' .libs/libedataserver_1_2_la-e-proxy.o(.text+0x18a): In function `ep_is_in_ignored': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-proxy.o(.text+0xad8): In function `ep_parse_ignore_host': : undefined reference to `strrchr' .libs/libedataserver_1_2_la-e-proxy.o(.text+0xbdf): In function `ep_parse_ignore_host': : undefined reference to `strtol' .libs/libedataserver_1_2_la-e-proxy.o(.text+0xd07): In function `ep_parse_ignore_host': : undefined reference to `strtol' .libs/libedataserver_1_2_la-e-sexp.o(.text+0xcd): In function `parse_term_free': : undefined reference to `printf' .libs/libedataserver_1_2_la-e-sexp.o(.text+0x778): In function `e_sexp_fatal_error': : undefined reference to `longjmp' .libs/libedataserver_1_2_la-e-sexp.o(.text+0xa0f): In function `e_sexp_parse': : undefined reference to `setjmp' .libs/libedataserver_1_2_la-e-sexp.o(.text+0xe88): In function `e_sexp_eval': : undefined reference to `setjmp' .libs/libedataserver_1_2_la-e-sexp.o(.text+0x10b8): In function `term_eval_eq': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-sexp.o(.text+0x1235): In function `term_eval_castint': : undefined reference to `strtoul' .libs/libedataserver_1_2_la-e-sexp.o(.text+0x15ef): In function `term_eval_gt': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-sexp.o(.text+0x1703): In function `term_eval_lt': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-group.o(.text+0x1bc): In function `e_source_group_peek_source_by_uid': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-group.o(.text+0x238): In function `e_source_group_peek_source_by_name': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-group.o(.text+0x8bc): In function `e_source_group_remove_source_by_uid': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-group.o(.text+0xf3a): In function `e_source_group_to_xml': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-e-source-group.o(.text+0x1180): In function `e_source_group_set_name': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-group.o(.text+0x12e2): In function `e_source_group_update_from_xmldoc': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-group.o(.text+0x1314): In function `e_source_group_update_from_xmldoc': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-list.o(.text+0x781): In function `e_source_list_peek_group_by_name': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source-list.o(.text+0x83d): In function `e_source_list_peek_group_by_uid': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source.o(.text+0x427): more undefined references to `strcmp' follow .libs/libedataserver_1_2_la-e-source.o(.text+0xf6b): In function `e_source_get_color': : undefined reference to `sscanf' .libs/libedataserver_1_2_la-e-source.o(.text+0x138b): In function `e_source_to_standalone_xml': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-e-source.o(.text+0x16fa): In function `e_source_set_absolute_uri': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-source.o(.text+0x1930): In function `e_source_set_name': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x24): In function `string_is_empty': : undefined reference to `_ctype_' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x73): In function `e_time_get_d_fmt_with_4digit_year': : undefined reference to `nl_langinfo' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x92): In function `e_time_get_d_fmt_with_4digit_year': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0xc5): In function `e_localtime_with_offset': : undefined reference to `localtime_r' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0xfc): In function `e_mktime_utc': : undefined reference to `mktime' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x2fd): In function `parse_with_strptime': : undefined reference to `_ctype_' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x367): In function `parse_with_strptime': : undefined reference to `strptime' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x385): In function `parse_with_strptime': : undefined reference to `_ctype_' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x63a): In function `correct_two_digit_year': : undefined reference to `time' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0x648): In function `correct_two_digit_year': : undefined reference to `localtime' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0xa6e): In function `e_time_parse_date_and_time_ex': : undefined reference to `time' .libs/libedataserver_1_2_la-e-time-utils.o(.text+0xa7c): In function `e_time_parse_date_and_time_ex': : undefined reference to `localtime' .libs/libedataserver_1_2_la-e-uid.o(.text+0x38): In function `e_uid_new': : undefined reference to `getpid' .libs/libedataserver_1_2_la-e-uid.o(.text+0x44): In function `e_uid_new': : undefined reference to `time' .libs/libedataserver_1_2_la-e-url.o(.text+0x1c): In function `uri_decode': : undefined reference to `_tolower_tab_' .libs/libedataserver_1_2_la-e-url.o(.text+0x50): In function `uri_decode': : undefined reference to `_ctype_' .libs/libedataserver_1_2_la-e-url.o(.text+0xc9): In function `uri_decode': : undefined reference to `_tolower_tab_' .libs/libedataserver_1_2_la-e-url.o(.text+0x541): In function `e_uri_new': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x57e): In function `e_uri_new': : undefined reference to `_ctype_' .libs/libedataserver_1_2_la-e-url.o(.text+0x613): In function `e_uri_new': : undefined reference to `memchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x640): In function `e_uri_new': : undefined reference to `memchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x692): In function `e_uri_new': : undefined reference to `memchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x70f): In function `e_uri_new': : undefined reference to `memchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x802): In function `e_uri_new': : undefined reference to `strcspn' .libs/libedataserver_1_2_la-e-url.o(.text+0x811): In function `e_uri_new': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x842): In function `e_uri_new': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x89e): In function `e_uri_new': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x8c6): In function `e_uri_new': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x8f3): In function `e_uri_new': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-url.o(.text+0x978): In function `e_uri_new': : undefined reference to `strtoul' .libs/libedataserver_1_2_la-e-url.o(.text+0xaba): In function `e_url_shroud': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-e-url.o(.text+0xac8): In function `e_url_shroud': : undefined reference to `strcpy' .libs/libedataserver_1_2_la-e-url.o(.text+0xb5b): In function `e_url_equal': : undefined reference to `strncmp' .libs/libedataserver_1_2_la-e-data-server-util.o(.text+0x107): In function `e_filename_make_safe': : undefined reference to `strchr' .libs/libedataserver_1_2_la-e-data-server-util.o(.text+0x158): In function `e_strftime': : undefined reference to `strftime' .libs/libedataserver_1_2_la-e-data-server-util.o(.text+0x1e9): In function `e_utf8_strftime': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-e-data-server-util.o(.text+0x325): In function `e_util_utf8_strcasecmp': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0xf6): In function `e_xml_save_file': : undefined reference to `open' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x146): In function `e_xml_save_file': : undefined reference to `write' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x153): In function `e_xml_save_file': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x172): In function `e_xml_save_file': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x17f): In function `e_xml_save_file': : undefined reference to `close' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x196): In function `e_xml_save_file': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x1c4): In function `e_xml_save_file': : undefined reference to `fsync' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x1d7): In function `e_xml_save_file': : undefined reference to `close' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x1e2): In function `e_xml_save_file': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x210): In function `e_xml_save_file': : undefined reference to `rename' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x239): In function `e_xml_save_file': : undefined reference to `close' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x250): In function `e_xml_save_file': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-xml-utils.o(.text+0x268): In function `e_xml_save_file': : undefined reference to `__errno' .libs/libedataserver_1_2_la-e-xml-hash-utils.o(.text+0x157): In function `e_xmlhash_compare': : undefined reference to `strcmp' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xb31): In function `md5_get_digest': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xc98): In function `md5_update': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xcbc): In function `md5_update': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xce0): In function `md5_update': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xcf6): In function `md5_update': : undefined reference to `memcpy' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xd4f): In function `md5_final': : undefined reference to `memset' .libs/libedataserver_1_2_la-md5-utils.o(.text+0xda1): In function `md5_final': : undefined reference to `memset' collect2: ld returned 1 exit status gmake[2]: *** [libedataserver-1.2.la] Error 1 gmake[2]: Leaving directory `/usr/obj/ports/evolution-data-server-2.30.0/evolution-data-server-2.30.0/libedataserver' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/usr/obj/ports/evolution-data-server-2.30.0/evolution-data-server-2.30.0' gmake: *** [all] Error 2 *** Error code 2
Thanks for a bug report, but this seems to be an OpenBSD bug, from my point of view. I know it was hard to build evolution packages there, but since we added "--no-undefined" then it should be easier, because it also claims on other Linux distributions, when something similar happens. What I do not understand most, from the above, is that about pthread functions, and standard functions from string.h. I see clearly that the files are linked together with -pthread (it's there seven times), but your linker is still unhappy, which doesn't make sense to me. I would start investigating there.
(In reply to comment #1) > Thanks for a bug report, but this seems to be an OpenBSD bug, from my point of > view. I know it was hard to build evolution packages there, but since we added Well, we have had evolution packages for more than 8 years on OpenBSD now and the only issues we ever ran into in building was always related to undefined references. However the difference is that it used to be references to internal evolution (or eds) functions and changing the objects link order would work around it. This time it is different. > "--no-undefined" then it should be easier, because it also claims on other > Linux distributions, when something similar happens. Sure I understand that, but we are not Linux. As far as I can see, FreeBSD also removed the --no-undefined from its port, probably for a similar reason. > What I do not understand most, from the above, is that about pthread functions, > and standard functions from string.h. I see clearly that the files are linked > together with -pthread (it's there seven times), but your linker is still > unhappy, which doesn't make sense to me. I would start investigating there. I'm also more worried about the undefined references are against standard libc functions rather than the -pthread ones. I'm perfectly opened to hear it's an OpenBSD bug (and FreeBSD, and probably NetBSD, haven't checked), but eds and evolution are the only softwares which I run into such an issue. Hopefully I can find what's going on and will post the result here... Thanks.
Created attachment 171740 [details] test.c Are you able to compile this source file without any issue? The first two lines contain commands for compilation. In case it'll not claim any issue, try to add other parameters to the 'cc' command, as shown in your error message (like --shared -fPIC -DPIC).
Yup, no issue compiling this. As for the cc case: $ cc --shared -fPIC -DPIC test.o -o test -Wl,--no-undefined -pthread is happy.
OK, what about involving libtool: /usr/local/bin/libtool --tag=CC --mode=compile cc test.c -o test.o -Wall -c /usr/local/bin/libtool --tag=CC --mode=link cc -O2 -pipe -Wall test.o -o test
Same, works fine.
Hrm. I thought that (and I suppose you also removed test.o and test files to ensure they will be recreated). I do not see much difference between invocation suggested above and the one used in eds.
(In reply to comment #7) > Hrm. I thought that (and I suppose you also removed test.o and test files to > ensure they will be recreated). I do not see much difference between invocation Of course :) > suggested above and the one used in eds. I know, and that is why I posted this bug report in the first place. This should not happen and it actually doesn't, except when compiling eds and evolution... Anyway, as stated in a previous answer, I'll keep looking into this and if I can find anything worthy, I'll post the results here. Thanks.
OK, thanks too. I got out of idea a bit. :(
Ok, so after several chats with other OpenBSD developers and our ld maintainer, it seems it is a "normal" behavior under OpenBSD. ld man page states that: The reason that --allow-shlib-undefined is the default is that the shared library being specified at link time may not be the same as the one that is available at load time, so the symbols might actually be resolvable at load time. Plus there are some systems, (eg BeOS) where undefined symbols in shared libraries is normal. (The kernel patches them at load time to select which function is most appropriate for the current architecture. This is used for example to dynamically select an appropriate memset function). Apparently it is also normal for HPPA shared libraries to have undefined symbols. Our ld maintainer also told that there are times where undefined symbols are used to optionally pick up a function only if a library providing it is included. Seeing both FreeBSD and OpenBSD remove -Wl,--no-undefined from evolution and e-d-s, I suppose this only work on Linux and maybe a few others. I cannot answer from FreeBSD side, but I think a check could be made in configure.ac to add -Wl,--no-undefined if !OpenBSD. Thanks for your time on this, things make more sense now.
How do you check in configure.ac for is/is-no Free/OpenBSD properly, please? I can add these checks to evo-related packages, I only want to know how to do that in the right way. There is checked for win32 builds based on $host, so something similar may work for you too? If so, what is the value, please?
(In reply to comment #11) > How do you check in configure.ac for is/is-no Free/OpenBSD properly, please? I > can add these checks to evo-related packages, I only want to know how to do > that in the right way. There is checked for win32 builds based on $host, so > something similar may work for you too? If so, what is the value, please? Sure host is fine. Something like the following will do. case "$host" in *openbsd*|*freebsd*)
Thanks, I'll add it there.
Created commit f4a317d in eds master (2.91.4+) Created commit da223fc in evo master (2.91.4+)