This is the mail archive of the
cygwin@sources.redhat.com
mailing list for the Cygwin project.
Re: Problem building DLLhelpers using Cygwin
- To: Vassili Sukharev <vassili dot sukharev at ecora dot com>
- Subject: Re: Problem building DLLhelpers using Cygwin
- From: Charles Wilson <cwilson at ece dot gatech dot edu>
- Date: Tue, 18 Jul 2000 15:00:22 -0400
- CC: cygwin at sources dot redhat dot com
- References: <NEBBKCJHFILJPFHFFHAEEEJNCBAA.vassili.sukharev@ecora.com>
It's possible some of the problems you are seeing were related to the
recent string of patches to binutils posted by DJ, me, and others.
Although there is not yet a cygwin package that contains these fixes,
you could try one of the following:
replace /usr/bin/ld.exe with the one here:
http://cygutils.netpedia.net/V1.1/linker/ld.exe.tar.gz (don't forget to
save a backup)
download the current binutils source from CVS
(http://sources.redhat.com/binutils/) and build the whole mess it
yourself -- this includes dlltool, ld.exe, et al.
./configure --prefix=/usr --host=i686-pc-cygwin
--target=i686-pc-cygwin
make
make -n install
; note which files will be replaced and make backup copies
make install
--Chuck
Vassili Sukharev wrote:
>
> Hi All,
>
> I need to build a dll with the cygwin gcc. As a starting point, I tried
> building a few dll examples, called dllhelpers, available from the following
> page:
>
> http://www.nanotech.wisc.edu/~khan/software/gnu-win32/dllhelpers.html
>
> There is a version for cygwin, which is supposed to be buildable without any
> adjustments to makefile. Upon typing make, the following happens:
>
> c++ -c -DBUILDING_DLL=1 -I. -I/mingw/include -g -mno-cygwin -o dllclass.o
> dllclass.cc
> c++ -c -DBUILDING_DLL=1 -I. -I/mingw/include -g -mno-cygwin -o dllexterns.o
> dllexterns.cc
> gcc -c -DBUILDING_DLL=1 -I. -I/mingw/include -g -mno-cygwin -o dllinit.o
> dllinit.c
> dllwrap --export-all --output-def
> cxxdll.def -mwindows -k --target=i386-mingw32 \
> --implib libcxx.dll.a --driver-name c++ -o cxxdll.dll \
> dllclass.o dllexterns.o dllinit.o -L/mingw/lib -s -mno-cygwin
> Warning: no export definition file provided
> dllwrap will create one, but may not be what you want
> c++ -c -I. -I/mingw/include -g -mno-cygwin -o usedll.o usedll.cc
> c++ -o usedll.exe -g -mno-cygwin usedll.o -L./ -L/mingw/lib -lcxxdll
> usedll.o: In function `main':
> usedll.cc:30: undefined reference to `_imp___8DllClass$instances'
> usedll.cc:30: undefined reference to `_imp__global_dllclass2'
> usedll.cc:30: undefined reference to `_imp__global_dllclass2'
> usedll.cc:30: undefined reference to `_imp___8DllClass$instances'
> usedll.cc:30: undefined reference to `_imp__global_dllclass1'
> usedll.cc:30: undefined reference to `_imp__global_dllclass1'
> usedll.cc:30: undefined reference to `_imp__global_int_variable'
> usedll.cc:38: undefined reference to `_imp___8DllClass$instances'
> collect2: ld returned 1 exit status
> make: *** [usedll.exe] Error 1
>
> Several people have suggested various things on the mingw mailing list, but
> so far I could not fix these errors. Any help would be greatly appreciated.
>
> Thanks,
> Vassili
>
> --
> Want to unsubscribe from this list?
> Send a message to cygwin-unsubscribe@sourceware.cygnus.com
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com