Subject: libiconv-1.7 on cygwin-1.3.2 problems
From: "Gerrit P. Haase" <[email-masked]>
To: [email-masked]
Cc: [email-masked]
Date: Sat, 28 Jul 2001 01:58:33 +0200

Hi Mr. Haible,

Libiconv doesn't build OOTB on cygwin. 
There was a problem with libcharset. See makelog below.
I inserted 'main() {}' to localcharset.c so that it compiles,
but that is not the correct way (i think).

And now it doesn't run...Windows popup tells me that iconv.exe couldn't 
be initialized.
I don't know what to do else.
I tried to debug, but there is only assembly to be seen, look
the error message of gdb in the attached snapshot please. (It is
really a .jpg, no virus)

$ ls -l /usr/local/bin/cyg*
-rw-r--r--    1 Siebensc Administ    33998 Jul 28 01:28 /usr/local/bin/cygcharset-1.dll
-rw-r--r--    1 Siebensc Administ   900440 Jul 28 01:29 /usr/local/bin/cygiconv-2.dll

I did $ chmod 770 on the libraries, then i get the same as during make check,
a stackdump.

$ iconv
      0 [main] iconv 342 open_stackdumpfile: Dumping stack trace to iconv.exe.stackdump
Segmentation fault (core dumped)

+ make check fails:
===================
[...]
make[1]: Entering directory `/src/libiconv/libiconv-1.7/tests'
./check-stateless . ASCII
      0 [main] lt-table-from 510 open_stackdumpfile: Dumping stack trace to lt-table-from.exe.stackdump
Signal 11
make[1]: *** [check] Error 139
make[1]: Leaving directory `/src/libiconv/libiconv-1.7/tests'
make: *** [check] Error 2

builddir="`pwd`"; cd libcharset && make all && make install-lib libdir="$builddir/lib" includedir="$builddir/lib"
make[1]: Entering directory `/src/libiconv/libiconv/libcharset'
if [ ! -d include ] ; then mkdir include ; fi
cp ./include/libcharset.h.in include/libcharset.h
cd lib && make all
make[2]: Entering directory `/src/libiconv/libiconv/libcharset/lib'
/bin/sh ../libtool --mode=compile gcc -O -I. -I. -I.. -I./.. -g -O2  -DHAVE_CONFIG_H -DLIBDIR=\"/usr/local/lib\" -c ./localcharset.c
mkdir .libs
gcc -O -I. -I. -I.. -I./.. -g -O2 -DHAVE_CONFIG_H -DLIBDIR=\"/usr/local/lib\" -c ./localcharset.c   -DDLL_EXPORT -DPIC -o .libs/localcharset.lo
gcc -O -I. -I. -I.. -I./.. -g -O2 -DHAVE_CONFIG_H -DLIBDIR=\"/usr/local/lib\" -c ./localcharset.c -o localcharset.o >/dev/null 2>&1
mv -f .libs/localcharset.lo localcharset.lo
/bin/sh ../libtool --mode=link gcc -O -s -o libcharset.la -rpath /usr/local/lib -version-info 1:0:0 -no-undefined localcharset.lo
rm -fr .libs/libcharset.la .libs/libcharset.* .libs/libcharset.*
generating symbol list for `libcharset.la'
 dlltool --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 --output-
def .libs/cygcharset-1.dll-def  localcharset.lo 
 sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < .libs/cygcharset-1.dll-def > .libs/libcharset.exp
if test "x`head -1 .libs/libcharset.exp`" = xEXPORTS; then cp .libs/libcharset.exp .libs/cygcharset-1.dll-def; else echo EXPORTS > .libs/cygcharset-
1.dll-def; _lt_hint=1; cat .libs/libcharset.exp | while read symbol; do set dummy $symbol; case $# in 2) echo " $2 @ $_lt_hint ; " >> .libs/cygcharset-
1.dll-def;; *) echo " $2 @ $_lt_hint $3 ; " >> .libs/cygcharset-1.dll-def;; esac; _lt_hint=`expr 1 + $_lt_hint`; done; fi
 gcc -O -Wl,--base-file,.libs/cygcharset-1.dll-base -Wl,-e,__cygwin_dll_entry@12 -o .libs/cygcharset-1.dll  localcharset.lo  
/usr/lib/libcygwin.a(libcmain.o)(.text+0x6a):libcmain.c: undefined reference to `WinMain@16'
collect2: ld returned 1 exit status
make[2]: *** [libcharset.la] Error 1
make[2]: Leaving directory `/src/libiconv/libiconv/libcharset/lib'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/src/libiconv/libiconv/libcharset'
make: *** [all] Error 2

gph

-- 
=^..^=
--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/