Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Mon, 11 Oct 2004 09:16:16 +0200 From: "Gerrit P. Haase" Reply-To: "Gerrit @ cygwin" Organization: Esse keine toten Tiere Message-ID: <1769480984.20041011091616@familiehaase.de> To: Reini Urban CC: Charles Wilson , cygwin AT cygwin DOT com Subject: Re: libtool bug In-Reply-To: <41695465.7020608@x-ray.at> References: <16741 DOT 49587 DOT 333388 DOT 685699 AT byrd DOT xs4all DOT nl> <1968842951 DOT 20041008015659 AT familiehaase DOT de> <41662639 DOT 3030306 AT cwilson DOT fastmail DOT fm> <87d5zt4r3g DOT fsf AT peder DOT flower> <657467259 DOT 20041008123554 AT familiehaase DOT de> <41671F91 DOT 8020508 AT cwilson DOT fastmail DOT fm> <41687EAA DOT 3080100 AT cwilson DOT fastmail DOT fm> <4168A48E DOT 8070303 AT cwilson DOT fastmail DOT fm> <41695465 DOT 7020608 AT x-ray DOT at> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Hello Reini, [...] > But it didn't help on another (related?) new cygwin libtool problem: > Sometimes it switches to .exe instead of .dll. Will investigate this > further. My current theory is that -o just missed the .dll > extension and .exe is then taken as default. I saw similar errors before, IIRC there were some old MACROS in .m4 files used from inside the package source tree, but never tracked it really down. After cleaning up with old buggy .m4 files and reconfiguring it works in most of the cases. > /bin/sh.exe ./libtool --mode=link g++ $LIBS > -Wl,--enable-runtime-pseudo-reloc -o libgdal.la ./gcore/*.lo ./port/*.lo > ./alg/*.lo ... \ > -rpath /usr/lib \ > -no-undefined \ > -version-info 5:1:4 > rm -fr .libs/libgdal.a .libs/libgdal.dll.a .libs/libgdal.la > .libs/libgdal.lai > creating reloadable object files... > creating a temporary reloadable object file: .libs/libgdal.la-2.o > /usr/i686-pc-cygwin/bin/ld.exe -r -o .libs/libgdal.la-1.o $OBJS... > /usr/i686-pc-cygwin/bin/ld.exe -r -o .libs/libgdal.la-2.o $OBJS... > g++ -shared -nostdlib .libs/libgdal.la-2.o -L/usr/lib > /usr/lib/libgeos.dll.a /usr/lib/libjasper.dll.a /usr/lib/libpng.dll.a > /usr/lib/libz.dll.a /usr/lib/libsqlite3.dll.a -L/lib > /usr/lib/libpq.dll.a -L/usr/lib/gcc/i686-pc-cygwin/3.4.1 > -L/usr/lib/gcc/i686-pc-cygwin/3.4.1/../../.. -lstdc++ -lgcc -lcygwin > -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc > -Wl,--enable-runtime-pseudo-reloc -Wl,--enable-runtime-pseudo-reloc > -o .libs/cyggdal-1 -Wl,--image-base=0x10000000 > ^^^ .dll missing! > -Wl,--out-implib,.libs/libgdal.dll.a > does this ring a bell somewhere? $output missing the extension. No, never saw this before. > I see in one code section that for case $linkmode prog) the .exe > extension and then any extension is stripped. > case $linkmode in > ... > prog) > case $host in > *cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; > esac > but we are in linkmode=lib. > and this is the failing place, exactly after your patch: > if test "$wrappers_required" = no; then > # Replace the output file specification. > compile_command=`$echo "X$compile_command" | $Xsed -e > 's%@OUTPUT@%'"$output"'%g'` > $output misses the ".dll" > I would rather use something like this: > compile_command=`$echo "X$compile_command" | $Xsed -e > 's%@OUTPUT@%'"$output_objdir/${outputname}${shrext}"'%g'` > correct? Is this the original libtool-devel-1.5.10 code before any patches? If so, then it can't be wrong since I have nearly the whole GNOME desktop compiled with this libtool (relink on install disabled). Does it help with the errors you're getting if you use your version? Gerrit -- =^..^= -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/