Mail Archives: cygwin/2002/06/19/21:49:37
Hi all, I'm new to cygwin and mingw, and UNIX style development in
general hence I would really appreciate some help here. I'm trying to
build the aspell (http://aspell.sourceforge.net) win32 binary using the
mingw compiler in the cygwin environment but am getting some linker
problems.
Here's how I've setup my cygwin and mingw:
1)downloaded setup.exe and selected everything in the develpment
package. 2)following the instructions given at
http://www.colomsat.net.co/freehost/ngiraldo/cppcygwin.html, I've
downloaded the mingw-extra-2.95.3.tar.gz packaged and installed it into
the appropriate directories.
Here's what I used to configure aspell:
1) set env variables CFLAGS and CXXFLAGS to '-mno-cygwin'
2) run the following configuration options:
for pspell (required to compile aspell):
./configure --bindir=/cygdrive/d/aspell --prefix=/cygdrive/d/aspell
--disable-shared --disable-ltdl for aspell: ./configure
--bindir=/cygdrive/d/aspell --prefix=/cygdrive/d/aspell --disable-shared
--enable-win32-relocatable --disable-curses
And finally, here's what I get (note that pspell compiled and installed
without a hitch):
----------------- partial compiler output after this line
-------------------- Making all in src
make[2]: Entering directory
`/cygdrive/d/Projects/thirdparty/aspell-.33.7.1/src'
g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../ -I../util -I../lib/inc
g++ -I../filter -I/cy
gdrive/d/aspell/include -mno-cygwin -c aspell.cc
g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../ -I../util -I../lib/inc
g++ -I../filter -I/cy
gdrive/d/aspell/include -mno-cygwin -c termios.cc
g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../ -I../util -I../lib/inc
g++ -I../filter -I/cy
gdrive/d/aspell/include -mno-cygwin -c text_chain.cc
/bin/sh ../libtool --mode=link g++ -mno-cygwin -o aspell.exe aspell.o
termios .o text_chain.o ../lib/libaspell.la mkdir .libs
g++ -mno-cygwin -o aspell.exe aspell.o termios.o text_chain.o
g++ ../lib/.libs/liba
spell.a -L/usr/lib/mingw -L/usr/lib/w32api
-L/usr/lib/gcc-lib/i686-pc-cygwin/2.9
5.3-5 -lstdc++ -lmingw32 -lgcc -lmoldname -lmsvcrt -lmingw32 -luser32
-lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmsvcrt
-lstdc++ -lmingw32 -lg cc -lmoldname -lmsvcrt -lmingw32 -luser32
-lkernel32 -ladvapi32 -lshell32 -lming w32 -lgcc -lmoldname -lmsvcrt
-L/cygdrive/d/aspell/lib -L/cygdrive/d/Projects/th
irdparty/pspell-.12.2/modules/.libs -lstdc++ -lmingw32 -lgcc -lmoldname
-lmsvcrt -lmingw32 -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32
-lgcc -lmoldname - lmsvcrt /cygdrive/d/aspell/lib/libpspell-impl.a
-L/cygdrive/d/Projects/thirdpart y/pspell-.12.2/interface/.libs
/cygdrive/d/aspell/lib/libpspell.a /cygdrive/d/as
pell/lib/libpspell-modules.a -lstdc++ -lmingw32 -lgcc -lmoldname
-lmsvcrt -lming w32 -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32
-lgcc -lmoldname -lmsvcrt -lstdc++ -lmingw32 -lgcc -lmoldname -lmsvcrt
-lmingw32 -luser32 -lkernel32 -lad vapi32 -lshell32 -lmingw32 -lgcc
-lmoldname -lmsvcrt -lstdc++ -lmingw32 -lgcc -l moldname -lmsvcrt
-lmingw32 -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 - lgcc
-lmoldname -lmsvcrt
/cygdrive/d/aspell/lib/libpspell.a(manager_impl.o)(.text+0x141b):manager
_impl.cc
: undefined reference to `opendir'
/cygdrive/d/aspell/lib/libpspell.a(manager_impl.o)(.text+0x1443):manager
_impl.cc
: undefined reference to `readdir'
/cygdrive/d/aspell/lib/libpspell.a(manager_impl.o)(.text+0x19a7):manager
_impl.cc
: undefined reference to `closedir'
collect2: ld returned 1 exit status
make[2]: *** [aspell.exe] Error 1
make[2]: Leaving directory
`/cygdrive/d/Projects/thirdparty/aspell-.33.7.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/cygdrive/d/Projects/thirdparty/aspell-.33.7.1'
make: *** [all-recursive-am] Error 2
It appears to me that somehow, the linker is not finding the
implementation of opendir, readdir and closedir which are found in the
header dirent.h. Also, I noted that the linker is linking in the
directories /usr/lib/mingw, /usr/lib/w32api and
/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-5 (deduced from the line
"-L/usr/lib/mingw -L/usr/lib/w32api
-L/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-5") which are empty! What
gives?
Any help is greatly appreciated.
Cheers
--
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/
- Raw text -