From owner-freebsd-ports-bugs@FreeBSD.ORG Thu Apr 1 17:50:24 2004 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 04EAA16A4D0 for ; Thu, 1 Apr 2004 17:50:24 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id EC3B843D64 for ; Thu, 1 Apr 2004 17:50:23 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) i321oEbv016210 for ; Thu, 1 Apr 2004 17:50:14 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.10/8.12.10/Submit) id i321oEwJ016209; Thu, 1 Apr 2004 17:50:14 -0800 (PST) (envelope-from gnats) Resent-Date: Thu, 1 Apr 2004 17:50:14 -0800 (PST) Resent-Message-Id: <200404020150.i321oEwJ016209@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Jie Gao Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9350416A4CE for ; Thu, 1 Apr 2004 17:44:59 -0800 (PST) Received: from ensa.cpsc.ucalgary.ca (ensa.cpsc.ucalgary.ca [136.159.2.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A4BC43D2D for ; Thu, 1 Apr 2004 17:44:59 -0800 (PST) (envelope-from gaoj@cpsc.ucalgary.ca) Received: from imgw1.cpsc.ucalgary.ca (imgw1 [136.159.5.9]) i321cRxJ004601 for ; Thu, 1 Apr 2004 18:39:57 -0700 (MST) Received: from aibsd (sana-sa [136.159.7.231])i321cMqW011623 for ; Thu, 1 Apr 2004 18:38:22 -0700 Received: by aibsd (sSMTP sendmail emulation); Thu, 1 Apr 2004 18:38:22 -0700 Message-Id: <200404020138.i321cMqW011623@imgw1.cpsc.ucalgary.ca> Date: Thu, 1 Apr 2004 18:38:22 -0700 From: "Jie Gao" To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: ports/65055: kdemultimedia configure cannot detect libxine api correctly X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Jie Gao List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Apr 2004 01:50:24 -0000 >Number: 65055 >Category: ports >Synopsis: kdemultimedia configure cannot detect libxine api correctly >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Apr 01 17:50:14 PST 2004 >Closed-Date: >Last-Modified: >Originator: Jie Gao >Release: FreeBSD 5.2.1-RELEASE-p3 i386 >Organization: >Environment: System: FreeBSD aibsd 5.2.1-RELEASE-p3 FreeBSD 5.2.1-RELEASE-p3 #2: Mon Mar 29 09:30:20 MST 2004 gaoj@aibsd:/usr/src/sys/i386/compile/AIBSD i386 >Description: While building the port kdemultimedia with the option WITH_XINE, the configure script cannot detect _x_ao_new_port api correctly in libxine. The current version of libxine has _x_ao_new_port present. But configure scrpit failed to detect it because it tries to compile the test program without -lc_r. So the test got a ``no'' result because of unresolved ``pthread ...'' stuff. With this result, libarts_xine.so is built with ao_new_port instead of the new api _x_ao_new_port, and artsd will end up with ``Undefined symbol "ao_new_port"'' error and crash. Below is what I got in config.log: configure:37027: checking for _x_ao_new_port in -lxine configure:37058: cc -o conftest -DNDEBUG -O2 -O -pipe -march=pentium4 -DQT_THREAD_SUPPORT -I/usr/local/include -I/usr/local/include -I/usr/X11R6/include -D_GETOPT_H -D_THREAD_SAFE conftest.c -lxine -Wl,-export-dynamic -L/usr/local/lib -L/usr/X11R6/lib -ljpeg -L/usr/X11R6/lib >&5 /usr/X11R6/lib/libxine.so: undefined reference to `pthread_attr_destroy' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_create' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_attr_init' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_cancel' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_attr_setscope' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_attr_setschedparam' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_join' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_cond_timedwait' /usr/X11R6/lib/libxine.so: undefined reference to `pthread_attr_getschedparam' configure:37061: $? = 1 configure: failed program was: | /* #line 37035 "configure" */ | /* confdefs.h. */ | | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define PACKAGE "kdemultimedia" | #define VERSION "3.2.1" | #ifdef __cplusplus | #include | #endif | #define KDELIBSUFF "" | #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 | #define HAVE_SGI_STL 1 | #define HAVE_STRLCAT 1 | #define HAVE_STRLCAT_PROTO 1 | #define HAVE_STRLCPY 1 | #define HAVE_STRLCPY_PROTO 1 | #define HAVE_CRYPT 1 | #define ksize_t socklen_t | #define HAVE_SYS_TYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_RES_INIT 1 | #define SIZEOF_INT 4 | #define SIZEOF_SHORT 2 | #define SIZEOF_LONG 4 | #define SIZEOF_CHAR_P 4 | #define SIZEOF_SIZE_T 4 | #define SIZEOF_UNSIGNED_LONG 4 | #define HAVE_VSNPRINTF 1 | #define HAVE_SNPRINTF 1 | #define HAVE_LIBZ 1 | #define HAVE_LIBPNG 1 | #define HAVE_LIBJPEG 1 | #define HAVE_LIBPTHREAD 1 | #define HAVE_DIRENT_H 1 | #define STDC_HEADERS 1 | #define HAVE_FCNTL_H 1 | #define HAVE_SYS_TIME_H 1 | #define HAVE_UNISTD_H 1 | #define HAVE_SYS_FILIO_H 1 | #define HAVE_SYS_SEM_H 1 | #define HAVE_STRING_H 1 | #define HAVE_GETOPT_H 1 | #define HAVE_MACHINE_ENDIAN_H 1 | #define HAVE_USLEEP 1 | #define HAVE_SNPRINTF 1 | #define TIME_WITH_SYS_TIME 1 | #define HAVE_X86_SSE 1 | #define RETSIGTYPE void | #define HAVE_TAGLIB 1 | #define HAVE_CDPARANOIA 1 | #define PATH_CDPARANOIA "/usr/local/bin/cdparanoia" | #define HAVE_LIBPTHREAD 1 | #define HAVE_LIBAUDIOFILE 1 | #define HAVE_GSTREAMER 0 | #define HAVE_MUSICBRAINZ 1 | #define HAVE_TRM 1 | #define HAVE_LIBFLAC 1 | #define HAVE_CDPARANOIA 1 | #define HAVE_VORBIS 2 | #define USE_ARTS 1 | #define HAVE_PTHREAD_H 1 | #define HAVE_SYS_SOUNDCARD_H 1 | #define ATTRIBUTE_ALIGNED_MAX 64 | #define X11_SHARED_MEM 1 | #define X11_DGA2 1 | #define X11_XV 1 | #define X11_XVIDMODE 1 | #define CDDA_PARANOIA 1 | #define OGG_VORBIS 1 | #define INTEL 1 | #define OS_BSD 1 | #define HAVE_LIBTIFF 1 | #define HAVE_JASPER 1 | #define HAVE_DIRENT_H 1 | #define STDC_HEADERS 1 | #define TIME_WITH_SYS_TIME 1 | #define HAVE_FCNTL_H 1 | #define HAVE_SYS_TIME_H 1 | #define HAVE_UNISTD_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_PATHS_H 1 | #define HAVE_USLEEP 1 | #define HAVE_XSHMGETEVENTBASE 1 | /* end confdefs.h. */ | | /* Override any gcc2 internal prototype to avoid an error. */ | #ifdef __cplusplus | extern "C" | #endif | /* We use char because int might match the return type of a gcc2 | builtin and then its argument prototype would still apply. */ | char _x_ao_new_port (); | int | main () | { | _x_ao_new_port (); | ; | return 0; | } configure:37079: result: no >How-To-Repeat: To see the config.log: cd /usr/ports/multimedia/kdemultimedia && make configure -DWITH_XINE To have a wrong libarts_xine.so, just make a kdemultimedia port with XINE >Fix: I'm not familiar with autotools but I know we need to add ${PTHREAD_LIBS} somewhere in configure or related files. >Release-Note: >Audit-Trail: >Unformatted: