Date: Wed, 15 Nov 2006 15:15:48 +0100 From: Rene Ladan <r.c.ladan@gmail.com> To: freebsd-x11@freebsd.org Subject: Re: libxcb not loading Message-ID: <455B2114.5030203@gmail.com> In-Reply-To: <e890cae60611070538n7e506033pc9935f1913f5602c@mail.gmail.com> References: <e890cae60611070538n7e506033pc9935f1913f5602c@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------070303050706000109030701 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Rene Ladan schreef: > libxcb does not load with today's xorg: > >> /libexec/ld-elf.so.1: /usr/X11R6/lib/libxcb.so.1: Undefined symbol >> "pthread_equal" > > I have _KPOSIX_PRIORITY_SCHEDULING in my kernel > I also get this error when trying to install x11-toolkits/gtkglext as dependency of graphics/gnash. The configure script fails with: > configure:20442: checking for GTK+ - version >= 2.0.0 > configure:20557: cc -o conftest -O2 -pipe -fno-strict-aliasing -march=pentium4 > m -Wall -D_THREAD_SAFE -I/usr/local/include/gtk-2.0 -I/usr/local/lib/gtk-2.0/i > nclude -I/usr/local/include/atk-1.0 -I/usr/local/include/cairo -I/usr/local/in > clude/pango-1.0 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/includ > e -I/usr/X11R6/include -I/usr/local/include/freetype2 -I/usr/local/include > conftest.c -Wl,--rpath -Wl,/usr/local/lib -L/usr/local/lib -L/usr/X11R6/lib - > lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXext > -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lcairo -lpangoft2-1.0 - > lfontconfig -lfreetype -lz -lpango-1.0 -lm -lX11 -lgobject-2.0 -lgmodule-2.0 - > lglib-2.0 -liconv >&5 > /usr/X11R6/lib/libxcb-xlib.so.0: undefined reference to `pthread_equal' > configure:20560: $? = 1 I don't see any direct relationship between libxcb and the compile command ? This is with libxcb-0.9.92_1 and libX11-1.0.3,1 So I guess the real culprit is libxcb and not libX11 I've attached the two scripts which trigger this error. Regards, Rene -- GPG fingerprint = E738 5471 D185 7013 0EE0 4FC8 3C1D 6F83 12E1 84F6 (subkeys.pgp.net) "It won't fit on the line." -- me, 2001 --------------070303050706000109030701 Content-Type: text/plain; name="config-1.c" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="config-1.c" /* confdefs.h. */ #define PACKAGE_NAME "gtkglext" #define PACKAGE_TARNAME "gtkglext" #define PACKAGE_VERSION "1.2.0" #define PACKAGE_STRING "gtkglext 1.2.0" #define PACKAGE_BUGREPORT "gtkglext-list@gnome.org" #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STRINGS_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 #define HAVE_UNISTD_H 1 #define HAVE_DLFCN_H 1 #ifdef __cplusplus extern "C" void std::exit (int) throw (); using std::exit; #endif /* end confdefs.h. */ #include <gtk/gtk.h> #include <stdio.h> #include <stdlib.h> int main () { int major, minor, micro; char *tmp_version; system ("touch conf.gtktest"); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("2.0.0"); if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { printf("%s, bad version string\n", "2.0.0"); exit(1); } if ((gtk_major_version != 2) || (gtk_minor_version != 10) || (gtk_micro_version != 6)) { printf("\n*** 'pkg-config --modversion gtk+-2.0' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", 2, 10, 6, gtk_major_version, gtk_minor_version, gtk_micro_version); printf ("*** was found! If pkg-config was correct, then it is best\n"); printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n"); printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); printf("*** required on your system.\n"); printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n"); printf("*** to point to the correct configuration files\n"); } else if ((gtk_major_version != GTK_MAJOR_VERSION) || (gtk_minor_version != GTK_MINOR_VERSION) || (gtk_micro_version != GTK_MICRO_VERSION)) { printf("*** GTK+ header files (version %d.%d.%d) do not match\n", GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); printf("*** library (version %d.%d.%d)\n", gtk_major_version, gtk_minor_version, gtk_micro_version); } else { if ((gtk_major_version > major) || ((gtk_major_version == major) && (gtk_minor_version > minor)) || ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) { return 0; } else { printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", gtk_major_version, gtk_minor_version, gtk_micro_version); printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", major, minor, micro); printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n"); printf("***\n"); printf("*** If you have already installed a sufficiently new version, this error\n"); printf("*** probably means that the wrong copy of the pkg-config shell script is\n"); printf("*** being found. The easiest way to fix this is to remove the old version\n"); printf("*** of GTK+, but you can also set the PKG_CONFIG environment to point to the\n"); printf("*** correct copy of pkg-config. (In this case, you will have to\n"); printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); printf("*** so that the correct libraries are found at run-time))\n"); } } return 1; } --------------070303050706000109030701 Content-Type: text/plain; name="config-2.c" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="config-2.c" /* confdefs.h. */ #define PACKAGE_NAME "gtkglext" #define PACKAGE_TARNAME "gtkglext" #define PACKAGE_VERSION "1.2.0" #define PACKAGE_STRING "gtkglext 1.2.0" #define PACKAGE_BUGREPORT "gtkglext-list@gnome.org" #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STRINGS_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 #define HAVE_UNISTD_H 1 #define HAVE_DLFCN_H 1 #ifdef __cplusplus extern "C" void std::exit (int) throw (); using std::exit; #endif /* end confdefs.h. */ #include <gtk/gtk.h> #include <stdio.h> int main () { return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ; return 0; } --------------070303050706000109030701--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?455B2114.5030203>