Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Sun, 11 Mar 2001 23:39:25 -0500 From: Jason Tishler To: "Gerrit P. Haase" Cc: cygwin AT cygwin DOT com Subject: Re: python 2.0, cygwin & readline - undefined symbols Message-ID: <20010311233925.B1184@dothill.com> Mail-Followup-To: "Gerrit P. Haase" , cygwin AT cygwin DOT com References: <3AABBEB4 DOT 13978 DOT 246710 AT localhost>; <20010311175202 DOT A1184 AT dothill DOT com> <3AAC3BD5 DOT 11477 DOT 20D2F4F AT localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <3AAC3BD5.11477.20D2F4F@localhost>; from gerrit.haase@t-online.de on Mon, Mar 12, 2001 at 03:00:37AM +0100 Organization: Dot Hill Systems Corp. Gerrit, On Mon, Mar 12, 2001 at 03:00:37AM +0100, Gerrit P. Haase wrote: > > < Re: python 2.0, cygwin & readline - > > > > Please provide me with more details than the above. Specifically, > > I would like to see the output from the compilation and link (if > > appropriate) lines. Without this information, I cannot help you. > > O.K., My make log is about 142KB, so i snip out the first try of make > to build an extension and then some excerpts from below. I was only looking for output from the building of one extension, not the entire make. > [...] > Creating library file: libpython2.1.dll.a > gcc -s -o python.exe Modules/python.o \ > libpython2.1.dll.a -lm Just curious, but how did you get the "-s" option set above. Via configure or did you edit your Makefile? > PYTHONPATH= ./python.exe ./setup.py build > running build > running build_ext > building 'struct' extension > creating build > creating build/temp.cygwin_nt-4.0-1.1.8-i686-2.1 > gcc -I. -I/src/Python-2.1b1/./Include -IInclude/ -I/usr/local/include -c /src/Python-2.1b1/Modules/structmodule.c -o build/temp.cygwin_nt-4.0-1.1.8-i686-2.1/structmodule.o Here is your problem -- the "-DUSE_DL_IMPORT" option is missing above. This means that somehow the value of CCSHARED got whacked in your Makefile. How did you accomplish this? Please send me your Makefile. > creating build/lib.cygwin_nt-4.0-1.1.8-i686-2.1 > gcc -shared -Wl,--enable-auto-image-base build/temp.cygwin_nt-4.0-1.1.8-i686-2.1/structmodule.o -L. -L/usr/local/lib -lpython2.1 -o build/lib.cygwin_nt-4.0-1.1.8-i686-2.1/struct.dll > build/temp.cygwin_nt-4.0-1.1.8-i686-2.1/structmodule.o(.text+0x53):structmodule.c: undefined reference to `PyExc_TypeError' > [snip] > build/temp.cygwin_nt-4.0-1.1.8-i686-2.1/structmodule.o(.text+0x1f33):structmodule.c: undefined reference to `PyString_Type' > collect2: ld returned 1 exit status > WARNING: building of extension "struct" failed: command 'gcc' failed with exit status 1 If you do not specify the "-DUSE_DL_IMPORT" option during compilation, then you will get error such as the above during linking. Thanks, Jason -- Jason Tishler Director, Software Engineering Phone: +1 (732) 264-8770 x235 Dot Hill Systems Corp. Fax: +1 (732) 264-8798 82 Bethany Road, Suite 7 Email: Jason DOT Tishler AT dothill DOT com Hazlet, NJ 07730 USA WWW: http://www.dothill.com -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple