delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
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: | <20041222103145.95154.qmail@web52506.mail.yahoo.com> |
Date: | Wed, 22 Dec 2004 05:31:45 -0500 (EST) |
From: | Adam McKee <adam_m_mckee AT yahoo DOT ca> |
Subject: | Re: c++ code executes very slowly - sjlj EH to blame? |
To: | Bill Priest <priestwilliaml AT yahoo DOT com>, cygwin AT cygwin DOT com |
In-Reply-To: | <20041221120619.49379.qmail@web20825.mail.yahoo.com> |
MIME-Version: | 1.0 |
X-IsSubscribed: | yes |
Hi Bill, Here's what I did to build gcc-3.4.3 with dwarf2 EH: First, get the gcc sources (duh) and Danny Smith's patch to support dwarf2 EH on cygwin: http://gcc.gnu.org/ml/gcc-patches/2004-11/msg01989.html The patch is meant for gcc-4.0 but it worked for me on 3.4.3. % cd / % mkdir install % rm -rf install/gcc-3.4.3 % mkdir install/gcc-3.4.3 % cd /usr/src % bzip2 -cd ... # unpack gcc sources % cd gcc-3.4.3 % patch -p1 < ../cygming-dwarf2-eh.patch % cd .. % rm -rf obj % mkdir obj % cd obj % ../gcc-3.4.3/configure \ --verbose --prefix=/usr --exec-prefix=/usr \ --sysconfdir=/etc --libdir=/usr/lib \ --libexecdir=/usr/lib --mandir=/usr/share/man \ --infodir=/usr/share/info \ --enable-languages=c,c++ --enable-nls \ --without-included-gettext --enable-libgcj \ --with-system-zlib --enable-interpreter \ --enable-threads=posix --disable-sjlj-exceptions \ --disable-version-specific-runtime-libs \ --disable-win32-registry % make bootstrap % make install About the gcc configuration -- all I did was take the configuration from the gcc-3.4.1/cygwin (gcc -v), and replace --enable-sjlj-exceptions with --disable-sjlj-exceptions. A good idea is to make a tarball from your build - that's easy, just do this after you do make install: % make DESTDIR=/install/gcc-3.4.3 install Then make a tarball, and put it in a safe place for re-use/distribution. I hope this helps. -Adam --- Bill Priest <priestwilliaml AT yahoo DOT com> wrote: > >Thanks Danny for helping me build gcc/g++ with > dwarf2 > >EH. Performance of my app is now on par with linux > - > >where before it was about 3x slower (not 6x as I > >previously reported... sorry for the confusion). > > Any chance you could provide patches to the standard > cygwin build scripts or gcc source if required or at > a minimum the write-up required to make it work. > I've > recently hit C++ problems w/ cygwin where the > exception handling didn't work like it does w/ Linux > (STL_port). I'd like to be able to try the dwarf2 > EH > to see if it fixes the problem. > > TIA, > > Bill ______________________________________________________________________ Post your free ad now! http://personals.yahoo.ca -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |