public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing)
@ 2016-08-06  2:02 JonY
  2016-08-06 13:19 ` Tony Kelman
  2016-08-08  4:47 ` Yaakov Selkowitz
  0 siblings, 2 replies; 6+ messages in thread
From: JonY @ 2016-08-06  2:02 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 1081 bytes --]

I have just updated the mingw-w64 cross compilers Cygwin 32bit and 64bit.

This version is considered testing and has --enable-vtable-verify set.
I'd consider moving it to stable if it can build non-trivial C++
applications.

==== PLEASE RECOMPILE ALL YOUR C++ CODE FOR ABI COMPATIBILITY ====

The cross compiler can produce Win32 and Win64 native binaries. As a
cross compiler, you may use --host=i686-w64-mingw32 or
--host=x86_64-w64-mingw32 for autotools based source packages to build
for Windows.

              *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO ***

If you want to unsubscribe from the cygwin-announce mailing list, look
at the "List-Unsubscribe: " tag in the email header of this message.
Send email to the address specified there. It will be in the format:

cygwin-announce-unsubscribe-you=yourdomain.com <at> cygwin.com

If you need more information on unsubscribing, start reading here:

http://sourceware.org/lists.html#unsubscribe-simple

Please read *all* of the information on unsubscribing that is available
starting at this URL.




[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing)
  2016-08-06  2:02 [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing) JonY
@ 2016-08-06 13:19 ` Tony Kelman
  2016-08-07  5:34   ` JonY
  2016-08-08  4:47 ` Yaakov Selkowitz
  1 sibling, 1 reply; 6+ messages in thread
From: Tony Kelman @ 2016-08-06 13:19 UTC (permalink / raw)
  To: cygwin

Have you backported the patch for GCC bug 66655 here? I was expecting
this to miscompile LLVM and cause test failures when building the Julia
language, as I've seen for all other GCC 5.x versions on mingw targets.
The fix was https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/i386/winnt.c?r1=232828&r2=232827&pathrev=232828
which is only on gcc 6, it has not been applied to the gcc-5 branch
https://gcc.gnu.org/viewcvs/gcc/branches/gcc-5-branch/gcc/config/i386/winnt.c?view=log

I was expecting the following to fail, but surprisingly it seems okay.
(It's large and would take an hour or more for you to reproduce this,
probably no need since it's working so far):

# check build prereqs
curl --version
patch --version
python --version
g++ --version
m4 --version
cmake --version
7z -h
x86_64-w64-mingw32-gcc --version
x86_64-w64-mingw32-g++ --version
x86_64-w64-mingw32-gfortran --version
# end of build prereq checks
git clone https://github.com/JuliaLang/julia -b release-0.5
cd julia
mkdir -p usr/bin # I'll need to fix Julia's build system for libvtv
cp /usr/x86_64-w64-mingw32/sys-root/mingw/bin/libvtv-0.dll usr/bin
make -j8 test # defaults to cross-compile when build env is cygwin


-Tony


--
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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing)
  2016-08-06 13:19 ` Tony Kelman
@ 2016-08-07  5:34   ` JonY
  2016-08-07 15:31     ` Tony Kelman
  0 siblings, 1 reply; 6+ messages in thread
From: JonY @ 2016-08-07  5:34 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 1455 bytes --]

On 8/6/2016 14:58, Tony Kelman wrote:
> Have you backported the patch for GCC bug 66655 here? I was expecting
> this to miscompile LLVM and cause test failures when building the Julia
> language, as I've seen for all other GCC 5.x versions on mingw targets.
> The fix was https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/i386/winnt.c?r1=232828&r2=232827&pathrev=232828
> which is only on gcc 6, it has not been applied to the gcc-5 branch
> https://gcc.gnu.org/viewcvs/gcc/branches/gcc-5-branch/gcc/config/i386/winnt.c?view=log
> 

Nope, just vanilla 5.4.0.

> I was expecting the following to fail, but surprisingly it seems okay.
> (It's large and would take an hour or more for you to reproduce this,
> probably no need since it's working so far):
> 
> # check build prereqs
> curl --version
> patch --version
> python --version
> g++ --version
> m4 --version
> cmake --version
> 7z -h
> x86_64-w64-mingw32-gcc --version
> x86_64-w64-mingw32-g++ --version
> x86_64-w64-mingw32-gfortran --version
> # end of build prereq checks
> git clone https://github.com/JuliaLang/julia -b release-0.5
> cd julia
> mkdir -p usr/bin # I'll need to fix Julia's build system for libvtv
> cp /usr/x86_64-w64-mingw32/sys-root/mingw/bin/libvtv-0.dll usr/bin
> make -j8 test # defaults to cross-compile when build env is cygwin
> 

Does Julia depend on C++11 features? I'm not familiar with it. How big
is it compared to say, QT?




[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing)
  2016-08-07  5:34   ` JonY
@ 2016-08-07 15:31     ` Tony Kelman
  0 siblings, 0 replies; 6+ messages in thread
From: Tony Kelman @ 2016-08-07 15:31 UTC (permalink / raw)
  To: JonY, cygwin

> Does Julia depend on C++11 features? I'm not familiar with it. How big
> is it compared to say, QT?

Yes, it does depend on C++11, but mostly by way of linking to LLVM.
Julia by itself is not huge, but it depends on a bunch of external
library dependencies that are. The most time-consuming of those are
LLVM and OpenBLAS, which I believe we have mingw-w64 cross-compiled
versions of available in Cygwin, so it might be possible to link
against those to save some time, I haven't tried. I suspect those
packaged libraries haven't been rebuilt against this test gcc build
yet though. And in the default `git clone ...; make` build of Julia
we apply some patches to fix various bugs depending on what versions
of the dependency libraries we're using, so a USE_SYSTEM_LLVM build
might have test failures that aren't due to the GCC version being used.

On my 4 x (2 HT) core i7-6700 HQ laptop with an SSD, the from-scratch
source build of Julia without linking to any pre-existing dependency
libraries took about an hour. Not sure how that compares to QT.

-Tony


--
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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing)
  2016-08-06  2:02 [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing) JonY
  2016-08-06 13:19 ` Tony Kelman
@ 2016-08-08  4:47 ` Yaakov Selkowitz
  2016-08-08 13:52   ` JonY
  1 sibling, 1 reply; 6+ messages in thread
From: Yaakov Selkowitz @ 2016-08-08  4:47 UTC (permalink / raw)
  To: cygwin

On 2016-08-05 18:15, JonY wrote:
> I have just updated the mingw-w64 cross compilers Cygwin 32bit and 64bit.
>
> This version is considered testing and has --enable-vtable-verify set.
> I'd consider moving it to stable if it can build non-trivial C++
> applications.

I had no issues compiling a few different projects with this release, 
however enabling this configure flag means that linking C++ with -static 
does not work because libstdc++.a then requires VTV symbols.  Also, note 
that neither Fedora's nor (AFAICS) Debian's native gcc enable this 
feature, so I don't know how much exposure it has received yet.

I would recommend rebuilding a 5.4.0-2 without this configure flag, and 
releasing it as stable.

> ==== PLEASE RECOMPILE ALL YOUR C++ CODE FOR ABI COMPATIBILITY ====

Until this is stable and mingw-based C++ packages have been recompiled, 
-D_GLIBCXX_USE_CXX11_ABI=0 can be used as a workaround.

-- 
Yaakov

--
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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing)
  2016-08-08  4:47 ` Yaakov Selkowitz
@ 2016-08-08 13:52   ` JonY
  0 siblings, 0 replies; 6+ messages in thread
From: JonY @ 2016-08-08 13:52 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 1081 bytes --]

On 8/8/2016 07:48, Yaakov Selkowitz wrote:
> On 2016-08-05 18:15, JonY wrote:
>> I have just updated the mingw-w64 cross compilers Cygwin 32bit and 64bit.
>>
>> This version is considered testing and has --enable-vtable-verify set.
>> I'd consider moving it to stable if it can build non-trivial C++
>> applications.
> 
> I had no issues compiling a few different projects with this release,
> however enabling this configure flag means that linking C++ with -static
> does not work because libstdc++.a then requires VTV symbols.  Also, note
> that neither Fedora's nor (AFAICS) Debian's native gcc enable this
> feature, so I don't know how much exposure it has received yet.
> 
> I would recommend rebuilding a 5.4.0-2 without this configure flag, and
> releasing it as stable.
> 
>> ==== PLEASE RECOMPILE ALL YOUR C++ CODE FOR ABI COMPATIBILITY ====
> 
> Until this is stable and mingw-based C++ packages have been recompiled,
> -D_GLIBCXX_USE_CXX11_ABI=0 can be used as a workaround.
> 

OK then, I'll redo the build without the vtable-verify flag.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-08-08 12:42 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-06  2:02 [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-1 (x86/x86_64) (Testing) JonY
2016-08-06 13:19 ` Tony Kelman
2016-08-07  5:34   ` JonY
2016-08-07 15:31     ` Tony Kelman
2016-08-08  4:47 ` Yaakov Selkowitz
2016-08-08 13:52   ` JonY

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).