Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <3D0C8B23.8030307@scytek.de> Date: Sun, 16 Jun 2002 14:57:07 +0200 From: Volker Quetschke User-Agent: Mozilla/5.0 (Windows; U; Win98; de-DE; rv:0.9.4) Gecko/20011019 Netscape6/6.2 X-Accept-Language: de-DE MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Building dlls with cygwin References: <20020614202845 DOT 08733f55 DOT steven DOT obrien2 AT ntlworld DOT com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi Steven, > you should grep for the actual symbol that you are hoping to find in the > dll, not "SYMBOL" *OUCH* :-) Thanks for your assistance, and for Chucks dllhelpers. Now gpg can use cygwin build loadable modules. This will show up in the next release of gnupg. I think my problems came mainly from the misleading information in the "Cygwin User's Guide" and the Cygwin FAQ. No offense indended David. Hello David! Proposal: Put a link to dllhelpers and in the Guide and the FAQ (http://www.neuro.gatech.edu/users/cwilson/cygutils/dll-stuff/) and replace the build commands with something like this: Building DLLs ------------- OK, let's go through a simple example of how to build a dll. For this example, we'll use a single file myprog.c for the program (myprog.exe) and a single file mydll.c for the contents of the dll (mydll.dll). # Making the DLL gcc -c -I. -g -Wall -o mydll.o mydll.c gcc -shared -Wl,--out-implib=libmydll.dll.a -o cygmydll.dll mydll.o \ -Wl,--export-all-symbols Linking Against DLLS -------------------- # Making exec gcc -c -I. -g -Wall -o myprog.o myprog.c gcc -o myprog.exe -g -Wall myprog.o -L./ -lmydll Bye Volker -- 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/