From cygwin-return-60582-listarch-cygwin=sourceware dot cygnus dot com at cygwin dot com Tue Oct 29 22:12:17 2002 Return-Path: Delivered-To: listarch-cygwin at sourceware dot cygnus dot com Received: (qmail 8419 invoked by alias); 29 Oct 2002 22:12:15 -0000 Mailing-List: contact cygwin-help at cygwin dot com; run by ezmlm Precedence: bulk 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 Received: (qmail 8247 invoked from network); 29 Oct 2002 22:12:13 -0000 Received: from unknown (HELO relay2.softcomca.com) (168.144.1.68) by sources dot redhat dot com with SMTP; 29 Oct 2002 22:12:13 -0000 Received: from M2W096.mail2web.com ([168.144.108.96]) by relay2.softcomca.com with Microsoft SMTPSVC(5.0.2195.5329); Tue, 29 Oct 2002 17:12:12 -0500 Message-ID: <269620-2200210229221212312@M2W096.mail2web.com> X-Priority: 3 Reply-To: lhall at rfk dot com X-Originating-IP: 209.113.174.244 From: "lhall at pop dot ma dot ultranet dot com" To: ben at 666 dot com, james at xemacs dot org, robinows at aol dot com, lhall at rfk dot com, xemacs-beta at xemacs dot org, cygwin at cygwin dot com Subject: Re: module problems on cygwin Date: Tue, 29 Oct 2002 17:12:12 -0500 MIME-Version: 1.0 Content-type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable X-OriginalArrivalTime: 29 Oct 2002 22:12:12.0277 (UTC) FILETIME=[3B14CA50:01C27F98] Check out http://cygwin=2Ecom/cygwin-ug-net/dll=2Ehtml=2E This will build= a DLL with an import library for the DLL=2E Use the import library in the link=20= stream of any other DLL or EXE that references things in this DLL=2E Larry Original Message: ----------------- From: Ben Wing ben@666=2Ecom Date: Tue, 29 Oct 2002 13:55:33 -0700 To: james@xemacs=2Eorg, Robinows@aol=2Ecom, lhall@rfk=2Ecom, xemacs-beta@xemacs=2Eorg, cygwin@cygwin=2Ecom Subject: Re: module problems on cygwin well then, how do you build import libraries under cygwin? ----- Original Message ----- From: "Larry Hall (RFK Partners, Inc)" To: "Ben Wing" ; "Jerry James" ; Cc: ; Sent: Tuesday, October 29, 2002 7:04 AM Subject: Re: module problems on cygwin > Sounds to me like you're expecting too much, at least for Windows=2E On= > Windows, the closest thing to shared libraries are DLLs and these requir= e > all references to be resolved at build-time=2E That's generally done by= > providing "import libraries" with stubs to all the calls that will be > resolved to other DLLs (at run-time)=2E So you can't have unresolved external > references using gcc during builds on Windows, even under Cygwin=2E Cyg= win > can't replace the Windows linker/loader so we're all stuck with it's behavior > as is=2E > > Larry Hall lhall@rfk=2Ecom > RFK Partners, Inc=2E http://www=2Erfk=2Ecom > 838 Washington Street (508) 893-9779 - RFK Office > Holliston, MA 01746 (508) 893-9889 - FAX > > > > At 03:12 AM 10/29/2002, Ben Wing wrote: > >cygwin is not terribly windows-specific=2E it's basically unix, and ru= ns all the > >standard gcc suite of tools, so if you understand shared libraries unde= r Unix, > >you understand them under gcc=2E > > > >the failures are unresolvable references to the various functions in th= e XEmacs > >executable=2E clearly the XEmacs executable is not around, and so thes= e are > >indeed unresolvable=2E the man pages claim that this is ok, and they w= ill be > >resolved by the run-time linker, but for some reason it's still complaining=2E > >any help here? > > > >to the cygwin guys: we're trying to create separate modules that can b= e loaded > >once the program has started=2E they are build as shared libraries, an= d of course > >contain references to the main executable=2E Under Cygwin, both gcc-2 = and gcc-3, > >when the =2Eo files are linked into the library (called something like > >postgres=2Eell), done using essentiall just `gcc -shared', we get tons = of > >unresolved externals warnings for all the references to the main executable=2E > >this obviously shouldn't happen -- the unresolved references should be allowed, > >and the run-time linker should fix them up=2E what's going wrong here?= > > > > > >----- Original Message ----- > >From: "Jerry James" > >To: > >Cc: ; > >Sent: Monday, October 28, 2002 5:46 AM > >Subject: Re: module problems on cygwin > > > > > > > Robinows@aol=2Ecom wrote: > > > > =2E/configure --with-x=3Dno --pdump --with-postgresql=3Dno > > > > works fine for me with gcc or gcc-2=2E > > > > Removing the "with-postgresql=3Dno" fails with either gcc or gcc-2= =2E > > > > > > I am away at a conference this week=2E I can get access to my email= from > > > here, but I am working in console mode over a bandwidth-limited pipe= > > > (and using an AZERTY keyboard, which is driving me bananas)=2E I wo= n't be > > > able to do much coding until I return, but I should be able to answe= r > > > questions=2E > > > > > > I freely confess that I do not understand either native Windows or > > > cygwin, so I will need some help figuring out what to do=2E I alrea= dy > > > pointed out that the new module setup is broken on native Windows, s= o > > > this means that it is broken on both Windows platforms=2E Ben poste= d his > > > ellcc=2Eh, which has newlines in strange places=2E Do other cygwin = users > > > have similar ellcc=2Eh files? For comparison purposes, here is mine= from > > > a RedHat Linux 7=2E3 machine=2E > > > > > > /* DO NOT EDIT THIS FILE!!!! */ > > > > > > /* Most of this is required due to a bug in the GCC compiler driver > > > which prevents us from passing this on the command line=2E It als= o > > > reduces the compiler command line length, which can be a problem > > > on some systems=2E */ > > > > > > #ifndef ELLCC_HDR > > > #define ELLCC_HDR > > > > > > #define ELLCC_CC "gcc" > > > #define ELLCC_CFLAGS "-march=3Di686 -O2 -g" > > > #define ELLCC_CPPFLAGS "" > > > #define ELLCC_LDFLAGS " " > > > #define ELLCC_CF_GENERAL "-DHAVE_CONFIG_H" > > > #define ELLCC_CF_ALL "-DHAVE_CONFIG_H -I/usr/X11R6/include" > > > #define ELLCC_LF_GENERAL "" > > > #define ELLCC_LF_ALL "-L/usr/X11R6/lib" > > > #define ELLCC_LIBS_GENERAL > > "-ldb -lgpm -lncurses -L/usr/lib -lesd -laudiofile -lm -lm -lutil" > > > #define ELLCC_DLL_CFLAGS "-fPIC" > > > #define ELLCC_DLL_LDFLAGS "-shared" > > > #define ELLCC_DLL_POST "" > > > #define ELLCC_DLL_LD "gcc" > > > #define ELLCC_DLL_LDO "-o" > > > #define ELLCC_CONFIG "i686-pc-linux" > > > #define ELLCC_EMACS_VER "21=2E5-b9" > > > #define ELLCC_PROGNAME "xemacs" > > > #define ELLCC_ARCHDIR "/usr/local/test/lib/xemacs-21=2E5-b9/i686-pc-linux" > > > #define ELLCC_MODDIR > >"/usr/local/test/lib/xemacs-21=2E5-b9/i686-pc-linux/modules" > > > #define ELLCC_SITEMODS "/usr/local/test/lib/xemacs/site-modules= " > > > > > > #endif /* ELLCC_HDR */ > > > > > > -- > > > Jerry James > > > http://www=2Eittc=2Eku=2Eedu/~james/ > > > > > > > > > > >-- > >Unsubscribe info: http://cygwin=2Ecom/ml/#unsubscribe-simple > >Bug reporting: http://cygwin=2Ecom/bugs=2Ehtml > >Documentation: http://cygwin=2Ecom/docs=2Ehtml > >FAQ: http://cygwin=2Ecom/faq/ > > -------------------------------------------------------------------- mail2web - Check your email from the web at http://mail2web=2Ecom/ =2E -- 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/