[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lmi] Compiling takes longer with gcc-4.9.2
From: |
Greg Chicares |
Subject: |
Re: [lmi] Compiling takes longer with gcc-4.9.2 |
Date: |
Mon, 18 Jan 2016 22:36:06 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.3.0 |
On 2016-01-18 14:32, Vadim Zeitlin wrote:
> On Mon, 18 Jan 2016 05:04:23 +0000 Greg Chicares <address@hidden> wrote:
>
> GC> > For the reference, the command used for building with Cygwin 4.9.2 was
> GC> >
> GC> > make PATH=/opt/lmi/bin:/usr/i686-w64-mingw32/sys-root/mingw/bin:$PATH \
> GC> > PATH_GCC=i686-w64-mingw32- LDFLAGS='' \
> GC> > gcc_common_warnings='-Wall -Wno-unused-local-typedefs -Wno-parentheses
> -Wno-unused-variable' \
> GC> > install check_physical_closure
> GC>
> GC> I dislike changing $PATH, but I believe I accomplished the same thing by
> GC> specifying the full path to each binary in the toolchain, and copying
> GC> the sys-root files to /opt/lmi/local/bin, which is on my $PATH.
>
> This is cleaner when you are using the given version of the compiler, I
> was doing it like this because it was simpler to switch between different
> compilers like this.
Understood. BTW, once we go into production with gcc-4.9.2, I intend to remove
gcc-3.4.5 support forever; then we'll never switch back. I had considered
making the behavior switchable, but it seemed like too much work for too
little gain.
> GC> I added these warning flags:
> GC> -Wno-conversion \
> GC> -Wno-deprecated-declarations \
> GC> -Wno-parentheses \
> GC> -Wno-unused-local-typedefs \
> GC> -Wno-unused-variable \
> GC> I found '-Wno-deprecated-declarations' necessary for auto_ptr in xmlwrapp.
>
> Notice that I've fixed this in the latest version of xmlwrapp at
> https://github.com/vadz/xmlwrapp/, so all you need to do is to get rid of
> this one is to update to the latest version (which doesn't have any
> significant changes compared to the one being currently used as I wrote in
> my cross-compiling post).
I noticed your cross-compiling post, but haven't yet read it.
We can do that minor xmlwrapp upgrade once we get lmi stabilized with the
new compiler, and remove '-Wno-deprecated-declarations' at that time.
> GC> I'm not sure why you didn't need '-Wno-conversion' as explained here:
> GC> http://lists.nongnu.org/archive/html/lmi/2015-12/msg00028.html
>
> Sorry, I forgot about this. And I still don't know why I didn't see it,
> but I definitely didn't. Anyhow, as you write yourself at the URL above,
> it's not a problem with C++11.
I'm confused: I don't see where I said that. Anyway, I tried rebuilding
without '-Wno-conversion' just now, and got...
/lmi/src/lmi[0]$sed -f diagnostics.sed ../log 2>&1 |grep AUX_WRAPPER_INST |wc
-l
300
...three hundred boost failures.
> GC> > config_options = \
> GC> > --prefix=$(prefix) \
> GC> > --build=i686-pc-cygwin \
> GC> > - --host=i686-pc-mingw32 \
> GC> > + --host=i686-w64-mingw32 \
> GC>
> GC> I had missed that. Got it now.
>
> To answer your question about why it worked: you must have a MinGW Cygwin
> cross-compiler installed too, don't you?
No. I have only what lmi's 'install_cygwin.bat' provides:
mingw64-i686-gcc-g++
mingw64-x86_64-gcc-g++
i.e., MinGW-w64 cross-compilers targeting 32- and 64-bit msw. (I also have
a native mingw.org gcc-3.4.5 in its own /MinGW_ directory, which wasn't
used here. But that 3.4.5 compiler always gave lots of spurious diagnostics
for its own libstdc++ when building wx; with '--host=i686-pc-mingw32' from
December through yesterday, I saw none of those diagnostics. And lmi
compiled, linked, and ran successfully, so wx can't have been built with
any tool other than cygwin's 'mingw64-i686-gcc-g++' package. Doesn't this
demonstrate an autotools issue? Or is it supposed to disregard an incorrect
'--host' specification and just DWIM?)
To confirm (note that "Not Found: gcc" is an actual line found by 'grep'):
$cygcheck -s -v -r 2>&1 |grep gcc
Not Found: gcc
108k 2015/07/02 C:\cygwin-lmi\bin\cyggcc_s-1.dll - os=4.0 img=1.0 sys=4.0
"cyggcc_s-1.dll" v0.0 ts=2015-07-02 17:59
108k 2015/07/02 C:\cygwin-lmi\bin\cyggcc_s-1.dll - os=4.0 img=1.0 sys=4.0
"cyggcc_s-1.dll" v0.0 ts=2015-07-02 17:59
108k 2015/07/02 C:\cygwin-lmi\bin\cyggcc_s-1.dll - os=4.0 img=1.0 sys=4.0
"cyggcc_s-1.dll" v0.0 ts=2015-07-02 17:59
libgcc1 4.9.3-1 OK
mingw64-i686-gcc-core 4.9.2-2 OK
mingw64-i686-gcc-g++ 4.9.2-2 OK
mingw64-x86_64-gcc-core 4.9.2-2 OK
mingw64-x86_64-gcc-g++ 4.9.2-1 OK
- Re: [lmi] Compiling takes longer with gcc-4.9.2, (continued)
Re: [lmi] Compiling takes longer with gcc-4.9.2, Greg Chicares, 2016/01/17
Re: [lmi] Compiling takes longer with gcc-4.9.2, Greg Chicares, 2016/01/18
[lmi] KVM performance [Was: Compiling takes longer with gcc-4.9.2], Greg Chicares, 2016/01/24
Re: [lmi] [Bulk] KVM performance [Was: Compiling takes longer with gcc-4.9.2], Greg Chicares, 2016/01/25
[lmi] cgicc changes [Was: Compiling takes longer with gcc-4.9.2], Greg Chicares, 2016/01/18