> -----Original Message----- > From: cygwin-owner On Behalf Of Steve Kelem > Sent: 19 April 2004 16:42
> What's the trick to getting libiconv to install? If I try to > do "make > install" from tcsh, I get the message: > /bin/install -c -m 644 .libs/cygiconv-2.dll $dldir/cygiconv-2.dll > /bin/install: cannot remove `/usr/lib/../bin/cygiconv-2.dll': > Permission > denied That would suggest that the dll cannot be deleted because it is still currently in use by some application. But it could just be that the perms on it are wrong. "make install" often requires admin (root) rights to run completely, depending on the particular package you're building and the . > I assume that this is because I'm using cygwin/tcsh. Well, does tcsh use cygiconv-2.dll? That would really explain the problem if it did. But it turns out not to, at least not directly: [EMAIL PROTECTED] /usr/bin> cygcheck tcsh.exe Found: .\tcsh.exe Found: C:\cygwin\bin\tcsh.exe tcsh.exe .\cygncurses7.dll .\cygwin1.dll C:\WINDOWS\System32\ADVAPI32.DLL C:\WINDOWS\System32\ntdll.dll C:\WINDOWS\System32\KERNEL32.dll C:\WINDOWS\System32\RPCRT4.dll [EMAIL PROTECTED] /usr/bin> So 1) either the permissions on it are wrong for the username you're running as at "make install" time, or 2) some *other* cygwin application (got any cygrunsrv services installed by any chance?) is still keeping it open. If you get really desparate, use something like Process explorer or Handle from sysinternals.com to find out what process is keeping a handle to the dll open. > The main reason I'm trying to recompile iconv is because > after building > gd-2.0.22, I cannot get the perl module GD-2.12 to link, so > I'm trying > to build a more recent copy (1.9.2) of libiconv: > > gcc -shared -o GD.dll -Wl,--out-implib=libGD.dll.a > -Wl,--export-all-symbols -Wl,--enable-auto-import > -Wl,--stack,8388608 \ > -s -L/usr/local/lib GD.o > /usr/lib/perl5/5.8.2/cygwin-thread-multi-64int/CORE/libperl.dll.a > -L/usr/X11R6/lib -L/usr/X11/lib -L/usr/local/lib -lgd -lpng -lz > -lfreetype -ljpeg -lm -lX11 -lXpm I don't think a more recent version of libiconv is going to help your basic problem here, which is that you haven't actually told gcc to link libiconv into the application! I'd expect to see a "-lcygiconv-2" option somewhere in that command if you expect it to actually work......! > Creating library file: libGD.dll.a > /bin/../lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../libgd.a(gdka > nji.o)(.text+0x707): > In function `do_convert': > /usr/local/src/gd-2.0.22/gdkanji.c:380: undefined reference to > `_libiconv_open' > /bin/../lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../libgd.a(gdka > nji.o)(.text+0x74c):/usr/local/src/gd-2.0.22/gdkanji.c:394: > undefined reference to `_libiconv' > /bin/../lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../libgd.a(gdka > nji.o)(.text+0x757):/usr/local/src/gd-2.0.22/gdkanji.c:415: > undefined reference to `_libiconv_close' > collect2: ld returned 1 exit status > perlld: *** system() failed to execute When you're missing fairly fundamental entry points, such as libiconv_open or libiconv_close in this case, you should probably be able to deduce that 'open' and 'close' aren't advanced features that only recently got added to libiconv, which in turn should have given you the clue that maybe you weren't actually linking against it at all...... cheers, DaveK -- Can't think of a witty .sigline today.... -- 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/