X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Message-ID: <4B1FD0F5.2080901@gmail.com> Date: Wed, 09 Dec 2009 16:31:49 +0000 From: Dave Korn User-Agent: Thunderbird 2.0.0.17 (Windows/20080914) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Need help building emacs with system malloc References: <4B1FC7A2 DOT 10401 AT cornell DOT edu> In-Reply-To: <4B1FC7A2.10401@cornell.edu> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: 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 Ken Brown wrote: > gcc -o temacs ecrt0.o dispnew.o frame.o scroll.o xdisp.o menu.o > window.o charset.o coding.o category.o ccl.o character.o chartab.o cm.o > term.o terminal.o xfaces.o emacs.o keyboard.o macros.o keymap.o > sysdep.o buffer.o filelock.o insdel.o marker.o minibuf.o fileio.o > dired.o filemode.o cmds.o casetab.o casefiddle.o indent.o search.o > regex.o undo.o alloc.o data.o doc.o editfns.o callint.o eval.o > floatfns.o fns.o font.o print.o lread.o syntax.o unexcw.o bytecode.o > process.o callproc.o region-cache.o sound.o atimer.o doprnt.o strftime.o > intervals.o textprop.o composite.o md5.o sheap.o terminfo.o > lastfile.o vm-limit.o getloadavg.o -lcurses -lg `gcc > -print-libgcc-file-name` -lm -lc `gcc -print-libgcc-file-name` > vm-limit.o:vm-limit.c:(.text+0x17): undefined reference to > `___after_morecore_hook' > vm-limit.o:vm-limit.c:(.text+0x6c): undefined reference to `___morecore' > > Is this one of those situations where the libraries are listed in the > wrong order in the gcc command? Or is there something else going on? The morecore stuff is private internal stuff in the cygwin dll, it certainly shouldn't be ending up in an emacs .o file. How did it get there? It's not declared in any of the public headers that I can find. And, why are you bothering to specify the system libs at all? You're using the gcc driver to link, it'll do all that for you automatically (and correctly) if you just leave them out; you shouldn't need anything but -lcurses out of that lot. You'll definitely break linking against the shared libgcc by putting the static archive in the list of user libraries like that. cheers, DaveK -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple