Cygwin-cross patch#2 for 2.96.4-1 [WAS: Cygwin ping!]

Jan Nieuwenhuizen <[email protected]>
Newsgroups gmane.comp.tex.tetex.beta
Organization Jan at Appel
Message-ID <[email protected]>
Olaf Weber writes:

> The info pages for ld (version 2.14.90.0.7-multiarch) say that Cygwin
> should be perfectly happy with dllexport.  (It does make clear that if
> dllexport is used anywhere, it must be used for all exported symbols.)

Yes, and there's another issue with variables, IIRC.

> So I'm curious what kind of failiure you're encountering.

It's a failure of the libtoolish linking kind, and easy to check.
Apply my patch, reverert the KPSEDLL bits, get cyg-apt

    http://lilypond.org/cygwin/cyg-apt

and install a cygwin-cross compilation suite using dpkg-cross.  Hmm
that may be hairy if you're not using Debian?  Hold on...

Without my patch (new version attached) the Cygwin compile fails like
this:

i686-cygwin-ranlib ../kpathsea/.libs/libkpathsea.a
creating ../kpathsea/libkpathsea.la
(cd ../kpathsea/.libs && rm -f libkpathsea.la && ln -s ../libkpathsea.la libkpathsea.la)
i686-cygwin-gcc -DHAVE_CONFIG_H  -I. -I/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea -I.. -I/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/..   -O2 -g -DKPSE_DLL -c /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c -o kpsewhich.o
In file included from /cygwin/usr/include/sys/unistd.h:152,
                 from /cygwin/usr/include/unistd.h:4,
                 from /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/../kpathsea/c-unistd.h:27,
                 from /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/../kpathsea/c-std.h:33,
                 from /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/../kpathsea/config.h:73,
                 from /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:20:
/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/getopt.h:59: warning: #warning For Olaf.
In file included from /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/../kpathsea/config.h:75,
                 from /netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:20:
/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/../kpathsea/c-proto.h:49: warning: #warning For Olaf.
/bin/sh ../libtool --mode=link i686-cygwin-gcc -o kpsewhich -lm  kpsewhich.o  -L../kpathsea -lkpathsea -L/cygwin/usr/X11R6/lib -lICE -lSM -lXpm -lX11
generating import library for `cygkpathsea-4.dll'
i686-cygwin-dlltool --as=i686-cygwin-as --dllname cygkpathsea-4.dll --def .libs/cygkpathsea-4.dll-def --output-lib .libs/libimp-cygkpathsea-4.a
i686-cygwin-gcc -o .libs/kpsewhich kpsewhich.o  -L/netrel/build/tetex-bin-2.96.4-1/texk/kpathsea .libs/libimp-cygkpathsea-4.a -L/cygwin/usr/X11R6/lib -lICE -lSM -lXpm -lX11
kpsewhich.o(.text+0x19c): In function `find_format':
/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:127: variable 'kpse_format_info' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.
kpsewhich.o(.text+0x237):/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:130: variable 'kpse_format_info' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.
kpsewhich.o(.text+0xe1b): In function `read_command_line':
/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:326: variable 'kpse_format_info' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.
kpsewhich.o(.text+0xe5c):/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:330: variable 'kpse_format_info' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.
kpsewhich.o(.text+0x1272): In function `main':
/netrel/src/tetex-bin-2.96.4-1/texk/kpathsea/kpsewhich.c:425: variable 'kpse_format_info' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.
fu000001.o(.idata$3+0xc): undefined reference to `_libs_libimp_cygkpathsea_4_a_iname'
fu000002.o(.idata$3+0xc): undefined reference to `_libs_libimp_cygkpathsea_4_a_iname'
fu000003.o(.idata$3+0xc): undefined reference to `_libs_libimp_cygkpathsea_4_a_iname'
fu000004.o(.idata$3+0xc): undefined reference to `_libs_libimp_cygkpathsea_4_a_iname'
fu000006.o(.idata$3+0xc): undefined reference to `_libs_libimp_cygkpathsea_4_a_iname'
fu000007.o(.idata$3+0xc): more undefined references to `_libs_libimp_cygkpathsea_4_a_iname' follow
nmth000000.o(.idata$4+0x0): undefined reference to `_nm__kpse_format_info'
nmth000005.o(.idata$4+0x0): undefined reference to `_nm__optarg'
nmth000019.o(.idata$4+0x0): undefined reference to `_nm__kpathsea_debug'
nmth000021.o(.idata$4+0x0): undefined reference to `_nm__kpse_bug_address'
nmth000023.o(.idata$4+0x0): undefined reference to `_nm__kpathsea_version_string'
nmth000025.o(.idata$4+0x0): undefined reference to `_nm__optind'
nmth000030.o(.idata$4+0x0): undefined reference to `_nm__kpse_program_name'
Info: resolving _kpse_format_info by linking to __imp__kpse_format_info (auto-import)
Info: resolving _optarg by linking to __imp__optarg (auto-import)
Info: resolving _kpathsea_debug by linking to __imp__kpathsea_debug (auto-import)
Info: resolving _kpse_bug_address by linking to __imp__kpse_bug_address (auto-import)
Info: resolving _kpathsea_version_string by linking to __imp__kpathsea_version_string (auto-import)
Info: resolving _optind by linking to __imp__optind (auto-import)
Info: resolving _kpse_program_name by linking to __imp__kpse_program_name (auto-import)
collect2: ld returned 1 exit status
make[2]: *** [kpsewhich] Fout 1
make[2]: Leaving directory `/var/mknetrel/netrel1.5/build/tetex-bin-2.96.4-1/texk/kpathsea'
make[1]: *** [do-kpathsea] Fout 2
make[1]: Leaving directory `/var/mknetrel/netrel1.5/build/tetex-bin-2.96.4-1/texk'
make: *** [all] Fout 1
+ exit 1
+ atexit
+ :

You like nice, yes?

Greetings,
Jan.



-- 
Jan Nieuwenhuizen <[email protected]> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org
pats2 (application/octet-stream, 73.5 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.