When i try to compile avifile. Reproducible: Always Steps to Reproduce: 1. 2. 3.
oops...forgot.... (cd .libs && rm -f libvideo.la && ln -s ../libvideo.la libvideo.la) make[2]: Leaving directory `/var/tmp/portage/avifile-0.7.38.20030710/work/avifile-0.7-0.7.38/lib/video' make[2]: Entering directory `/var/tmp/portage/avifile-0.7.38.20030710/work/avifile-0.7-0.7.38/lib' /bin/sh ../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I../include -DPLUGIN_PATH=\"/usr/lib/avifile-0.7\" -I./../ffmpeg/libavcodec -I./../ffmpeg/libavformat -Wall -Wno-unused -I../include -finline-limit-200 -O2 -mcpu=i686 -march=i686 -ffast-math -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -pipe -c codeckeeper.cpp /bin/sh ../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I../include -DPLUGIN_PATH=\"/usr/lib/avifile-0.7\" -I./../ffmpeg/libavcodec -I./../ffmpeg/libavformat -Wall -Wno-unused -I../include -finline-limit-200 -O2 -mcpu=i686 -march=i686 -ffast-math -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -pipe -c Uncompressed.cpp c++ -DHAVE_CONFIG_H -I. -I. -I../include -DPLUGIN_PATH=\"/usr/lib/avifile-0.7\" -I./../ffmpeg/libavcodec -I./../ffmpeg/libavformat -Wall -Wno-unused -I../include -finline-limit-200 -O2 -mcpu=i686 -march=i686 -ffast-math -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -pipe -c Uncompressed.cpp -fPIC -DPIC -o Uncompressed.lo c++ -DHAVE_CONFIG_H -I. -I. -I../include -DPLUGIN_PATH=\"/usr/lib/avifile-0.7\" -I./../ffmpeg/libavcodec -I./../ffmpeg/libavformat -Wall -Wno-unused -I../include -finline-limit-200 -O2 -mcpu=i686 -march=i686 -ffast-math -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -pipe -c codeckeeper.cpp -fPIC -DPIC -o codeckeeper.lo /bin/sh ../libtool --mode=link c++ -finline-limit-200 -O2 -mcpu=i686 -march=i686 -ffast-math -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -pipe -o libaviplay.la -rpath /usr/lib -release 0.7 -version-info 0:38:0 codeckeeper.lo Uncompressed.lo aviplay/libaviplay.la aviread/libaviread.la aviwrite/libaviwrite.la common/libcommon.la subtitle/libsubtitle.la video/libvideo.la -lpthread -lnsl -ldl mkdir .libs libtool: link: cannot find the library `' make[2]: *** [libaviplay.la] Error 1 make[2]: Leaving directory `/var/tmp/portage/avifile-0.7.38.20030710/work/avifile-0.7-0.7.38/lib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/avifile-0.7.38.20030710/work/avifile-0.7-0.7.38/lib' make: *** [all-recursive] Error 1 !!! ERROR: media-video/avifile-0.7.38.20030710 failed. !!! Function src_compile, Line 141, Exitcode 2 !!! (no error message)
please paste #emerge info
The problem seems to be related to pthreads. Libtool is failing because some of the *.la files are using -pthread in the dependancy_lib="..." section. -pthread is a valid compiler flag, but it doesnt belong in the lib section. The *.la files are being generated on the fly by make and I dont know how the -pthread flag is getting there. There is a short 3 line patch available to fix the problem in libtool and it seems to work, however libtool is also generated on the fly by configure and it doesnt seem to be copying the patched version from /usr/bin. So the patch needs to be applied after the source has been extracted as follows ebuild /usr/portave/media-video/avifile/avifile-0.7.38.20030710.ebuild unpack cd /tmp/portage/avifile-0.7.38.20030710/work/avifile-0.7-0.7.38/admin patch ltmain.sh < ltmain.patch ebuild /usr/portave/media-video/avifile/avifile-0.7.38.20030710.ebuild install This patch should be applied to the source package, but I am not the maintainer of this package and I am somewhat reluctant to do so until I understand why the error is happening.
oops , the last ebuild ... install should be ebuild ... merge install. Patch to follow
Created attachment 21349 [details, diff] patch for libtool via ltmain.sh
Just add the patch to ${FILESDIR} and the following line to the ebuild (at the beginning of src_compile): patch ${S}/admin/ltmain.sh < ${FILESDIR}/ltmain.patch Marc.
JBLpro: do you use kde-cvs ?
update to libsdl-1.2.6-r3