Opened 5 years ago
Closed 4 years ago
#60091 closed defect (fixed)
i686-w64-mingw32-gcc-nothreads build failure - Segmentation fault
Reported by: | mmaenz (Michael Maenz) | Owned by: | mojca (Mojca Miklavec) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.2 |
Keywords: | catalina, haspatch | Cc: | cooljeanius (Eric Gallager), Gcenx, ryandesign (Ryan Carsten Schmidt), larryv (Lawrence Velázquez), MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
Port: | i686-w64-mingw32-gcc, mpfr |
Description (last modified by mmaenz (Michael Maenz))
Trying to install port mingw-w64 in order to compile Valve's latest Proton. First time to try to compile on Catalina. Did everything what the CatalinaProblems Page suggested.
My specs
- macOS Catalina 10.15.3
- XCode 11.3.1
- Command Line Tools 11.3
% uname -a Darwin iMac 19.3.0 Darwin Kernel Version 19.3.0: Thu Jan 9 20:58:23 PST 2020; root:xnu-6153.81.5~1/RELEASE_X86_64 x86_64 % xcode-select -p /Applications/Xcode.app/Contents/Developer % /usr/bin/xcodebuild -version Xcode 11.3.1 Build version 11C504
Attached the last lines of the log with the error as the whole is very huge (~160MB). Saved the log, can send or upload it if valuable for further investigation. The error is explained in line 4, 18 and 21.
:info:build libtool: compile: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/ -L/opt/local/i686-w64-mingw32/lib -L/opt/local/mingw/lib -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/mingw/include -B/opt/local/i686-w64-mingw32/bin/ -B/opt/local/i686-w64-mingw32/lib/ -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/i686-w64-mingw32/sys-include -DHAVE_CONFIG_H -I. -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran -iquote/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/io -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc/config -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libquadmath -I../.././gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libgcc -I../libgcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libbacktrace -I../libbacktrace -I../libbacktrace -std=gnu11 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -Werror=implicit-function-declaration -Werror=vla -fcx-fortran-rules -ffunction-sections -fdata-sections -g -O2 -MT norm2_r10.lo -MD -MP -MF .deps/norm2_r10.Tpo -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r10.c -DDLL_EXPORT -DPIC -o .libs/norm2_r10.o :info:build during GIMPLE pass: ccp :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r4.c: In function ‘norm2_r4’: :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r4.c:213:1: internal compiler error: Segmentation fault: 11 :info:build 213 | } :info:build | ^ :info:build libbacktrace could not find executable to open :info:build Please submit a full bug report, :info:build with preprocessed source if appropriate. :info:build See <https://gcc.gnu.org/bugs/> for instructions. :info:build mv -f .deps/iparity_i8.Tpo .deps/iparity_i8.Plo :info:build make[3]: *** [norm2_r4.lo] Error 1 :info:build make[3]: *** Waiting for unfinished jobs.... :info:build during GIMPLE pass: ccp :info:build during GIMPLE pass: ccp :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r8.c: In function ‘norm2_r8’: :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r10.c: In function ‘norm2_r10’: :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r8.c:213:1: internal compiler error: Segmentation fault: 11 :info:build 213 | } :info:build | ^ :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r10.c:213:1: internal compiler error: Segmentation fault: 11 :info:build 213 | } :info:build | ^ :info:build libbacktrace could not find executable to open :info:build Please submit a full bug report, :info:build with preprocessed source if appropriate. :info:build See <https://gcc.gnu.org/bugs/> for instructions. :info:build libbacktrace could not find executable to open :info:build Please submit a full bug report, :info:build with preprocessed source if appropriate. :info:build See <https://gcc.gnu.org/bugs/> for instructions. :info:build make[3]: *** [norm2_r8.lo] Error 1 :info:build make[3]: *** [norm2_r10.lo] Error 1 :info:build make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/i686-w64-mingw32/libgfortran' :info:build make[2]: *** [all] Error 2 :info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/i686-w64-mingw32/libgfortran' :info:build make[1]: *** [all-target-libgfortran] Error 2 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build' :info:build make: *** [all] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build' :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build" && /usr/bin/make -j4 -w all :info:build Exit code: 2 :error:build Failed to build i686-w64-mingw32-gcc-nothreads: command execution failed :debug:build Error code: CHILDSTATUS 89701 2 :debug:build Backtrace: command execution failed :debug:build while executing :debug:build "system {*}$notty {*}$nice $fullcmdstring" :debug:build invoked from within :debug:build "command_exec build" :debug:build (procedure "portbuild::build_main" line 8) :debug:build invoked from within :debug:build "$procedure $targetname" :error:build See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/main.log for details.
Change History (22)
comment:1 Changed 5 years ago by mmaenz (Michael Maenz)
Description: | modified (diff) |
---|
comment:2 Changed 5 years ago by mmaenz (Michael Maenz)
Description: | modified (diff) |
---|
comment:3 Changed 5 years ago by jmroot (Joshua Root)
Keywords: | mingw-w64 10.15.3 Segmentation Fault removed |
---|---|
Owner: | set to mojca |
Port: | i686-w64-mingw32-gcc added; mingw-w64 removed |
Status: | new → assigned |
Summary: | Port can't compile - Segmentation fault → i686-w64-mingw32-gcc-nothreads build failure - Segmentation fault |
comment:4 Changed 5 years ago by mojca (Mojca Miklavec)
comment:5 Changed 5 years ago by mojca (Mojca Miklavec)
Can someone with Catalina please check whether adding -fno-stack-check
to configure.cflags-append
helps? I'm not saying it does, just that it might be worth trying given how many troubles we had with other ports, see for example #59246 which is not the only one.
You need to make sure to recompile i686-w64-mingw32-gcc-bootstrap
as well from source (make sure that it's not a binary from our buildbot) before trying to build this one.
Even if the compiler problem was fixed in the meantime, we might still be hit as we are still using an old bootstapped binary build with the buggy compiler.
I opened a ticket on https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93758
comment:7 Changed 5 years ago by mojca (Mojca Miklavec)
I didn't yet dare to update to 10.15 (I almost got my mac bricked by a regular security update and needed one hour on the phone with support to get it recovered via secret key combinations at boot time & some subsequent steps).
The bug seems to be fully reproducible, so if anyone is willing to look into it ... But before we do some serious analysis, it would really make sense to check if that known clang bug had anything to do with this. We've seen way too many segmentation faults as a consequence of buggy clang behaviour.
comment:8 Changed 5 years ago by mmaenz (Michael Maenz)
What I did:
% sudo port install -s i686-w64-mingw32-gcc-bootstrap ---> Computing dependencies for i686-w64-mingw32-gcc-bootstrap ---> Fetching distfiles for i686-w64-mingw32-gcc-bootstrap ---> Verifying checksums for i686-w64-mingw32-gcc-bootstrap ---> Extracting i686-w64-mingw32-gcc-bootstrap ---> Applying patches to i686-w64-mingw32-gcc-bootstrap ---> Configuring i686-w64-mingw32-gcc-bootstrap ---> Building i686-w64-mingw32-gcc-bootstrap ---> Staging i686-w64-mingw32-gcc-bootstrap into destroot Warning: i686-w64-mingw32-gcc-bootstrap installs files outside the common directory structure. ---> Installing i686-w64-mingw32-gcc-bootstrap @9.2.0_2 ---> Activating i686-w64-mingw32-gcc-bootstrap @9.2.0_2 ---> Cleaning i686-w64-mingw32-gcc-bootstrap ---> Scanning binaries for linking errors ---> No broken files found. ---> No broken ports found.
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/cross/i686-w64-mingw32-gcc/Portfile
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup crossgcc 1.0 # keep in sync with x86_64-w64-mingw32-gcc set mingw_name w64-mingw32 set mingw_arch i686 set mingw_target ${mingw_arch}-${mingw_name} crossgcc.setup ${mingw_target} 9.2.0 crossgcc.languages {c c++ fortran objc obj-c++} dist_subdir gcc[lindex [split ${version} .] 0] revision 2 maintainers {mojca @mojca} openmaintainer # these are build + runtime dependencies # (binutils are already added by the portgroup) depends_lib-append port:${mingw_target}-headers # not sure if useful: # port:cloog # port:ppl patchfiles-append notparallel-install-headers.patch configure.args-replace \ --enable-multilib \ --disable-multilib configure.args-append \ --enable-shared \ --with-dwarf \ --enable-fully-dynamic-string \ --enable-libssp \ --enable-lto configure.cflags-append \ -fno-stack-check # not sure if useful: # --with-cloog=${prefix} # --with-ppl=${prefix} # TODO: # --enable-version-specific-runtime-libs # Installs libgcc/libstdc++ and other target support libraries in such a # way that multiple GCC installs can coexist simultaneously. # (add once you have the default working as it needs some extra tweaking) # First bootstrapping phase subport ${mingw_target}-gcc-bootstrap { build.target all-gcc destroot.target install-gcc } # Second bootstrapping phase subport ${mingw_target}-gcc-nothreads { # these two are not needed since we are not yet requesting posix threads # build.target all-target-libgcc # destroot.target install-target-libgcc depends_lib-append port:${mingw_target}-crt depends_build-append bin:${mingw_target}-gcc:${mingw_target}-gcc-bootstrap } # Final phase if {${subport} eq ${name}} { depends_lib-append port:${mingw_target}-crt \ port:${mingw_target}-winpthreads depends_build-append path:${mingw_target}/lib/libgcc_s.a:${mingw_target}-gcc-nothreads configure.args-append --enable-threads=posix \ --enable-libgomp notes " If you want your MinGW-generated windows binaries to work under wine out-of-the-box (and they are not statically linked), you can instruct wine to automatically search for dll-s by running: wine regedit Nagivate to: \[HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Control\\Session Manager\\Environment\] or \[HKEY_CURRENT_USER\\Environment\] and add Z:[string map {/ \\} ${prefix}]\\${mingw_target}\\bin to the 'PATH' variable. " } else { livecheck.type none } if {${subport} ne "${name}-bootstrap"} { post-destroot { move {*}[glob ${destroot}${prefix}/${mingw_target}/lib/*.dll] \ ${destroot}${prefix}/${mingw_target}/bin } pre-activate { foreach flavour {gcc-bootstrap gcc-nothreads gcc} { set gcc ${mingw_target}-${flavour} if {![catch {set installed [lindex [registry_active ${gcc}] 0]}]} { registry_deactivate_composite ${gcc} "" [list ports_nodepcheck 1] } } } }
Result:
% sudo port install i686-w64-mingw32-gcc Password: ---> Computing dependencies for i686-w64-mingw32-gcc The following dependencies will be installed: i686-w64-mingw32-gcc-nothreads i686-w64-mingw32-winpthreads x86_64-w64-mingw32-crt Continue? [Y/n]: Y Portfile changed since last build; discarding previous state. ---> Fetching archive for i686-w64-mingw32-gcc-nothreads ---> Attempting to fetch i686-w64-mingw32-gcc-nothreads-9.2.0_2.darwin_19.x86_64.tbz2 from https://packages.macports.org/i686-w64-mingw32-gcc-nothreads ---> Attempting to fetch i686-w64-mingw32-gcc-nothreads-9.2.0_2.darwin_19.x86_64.tbz2 from http://nue.de.packages.macports.org/i686-w64-mingw32-gcc-nothreads ---> Attempting to fetch i686-w64-mingw32-gcc-nothreads-9.2.0_2.darwin_19.x86_64.tbz2 from http://lil.fr.packages.macports.org/i686-w64-mingw32-gcc-nothreads ---> Fetching distfiles for i686-w64-mingw32-gcc-nothreads ---> Verifying checksums for i686-w64-mingw32-gcc-nothreads ---> Extracting i686-w64-mingw32-gcc-nothreads ---> Applying patches to i686-w64-mingw32-gcc-nothreads ---> Configuring i686-w64-mingw32-gcc-nothreads ---> Building i686-w64-mingw32-gcc-nothreads Error: Failed to build i686-w64-mingw32-gcc-nothreads: command execution failed Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/main.log for details. Error: Follow https://guide.macports.org/#project.tickets to report a bug. Error: Processing of port i686-w64-mingw32-gcc failed
Logfile:
:info:build libtool: compile: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/ -L/opt/local/i686-w64-mingw32/lib -L/opt/local/mingw/lib -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/mingw/include -B/opt/local/i686-w64-mingw32/bin/ -B/opt/local/i686-w64-mingw32/lib/ -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/i686-w64-mingw32/sys-include -DHAVE_CONFIG_H -I. -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran -iquote/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/io -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc/config -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libquadmath -I../.././gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libgcc -I../libgcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libbacktrace -I../libbacktrace -I../libbacktrace -std=gnu11 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -Werror=implicit-function-declaration -Werror=vla -fcx-fortran-rules -ffunction-sections -fdata-sections -g -O2 -MT norm2_r4.lo -MD -MP -MF .deps/norm2_r4.Tpo -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r4.c -DDLL_EXPORT -DPIC -o .libs/norm2_r4.o :info:build libtool: compile: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/ -L/opt/local/i686-w64-mingw32/lib -L/opt/local/mingw/lib -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/mingw/include -B/opt/local/i686-w64-mingw32/bin/ -B/opt/local/i686-w64-mingw32/lib/ -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/i686-w64-mingw32/sys-include -DHAVE_CONFIG_H -I. -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran -iquote/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/io -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc/config -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libquadmath -I../.././gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libgcc -I../libgcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libbacktrace -I../libbacktrace -I../libbacktrace -std=gnu11 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -Werror=implicit-function-declaration -Werror=vla -fcx-fortran-rules -ffunction-sections -fdata-sections -g -O2 -MT norm2_r8.lo -MD -MP -MF .deps/norm2_r8.Tpo -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r8.c -DDLL_EXPORT -DPIC -o .libs/norm2_r8.o :info:build during GIMPLE pass: ccp :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r8.c: In function ‘norm2_r8’: :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r8.c:213:1: internal compiler error: Segmentation fault: 11 :info:build 213 | } :info:build | ^ :info:build libbacktrace could not find executable to open :info:build Please submit a full bug report, :info:build with preprocessed source if appropriate. :info:build See <https://gcc.gnu.org/bugs/> for instructions. :info:build during GIMPLE pass: ccp :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r4.c: In function ‘norm2_r4’: :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/norm2_r4.c:213:1: internal compiler error: Segmentation fault: 11 :info:build 213 | } :info:build | ^ :info:build libbacktrace could not find executable to open :info:build Please submit a full bug report, :info:build with preprocessed source if appropriate. :info:build See <https://gcc.gnu.org/bugs/> for instructions. :info:build make[3]: *** [norm2_r4.lo] Error 1 :info:build make[3]: *** Waiting for unfinished jobs.... :info:build make[3]: *** [norm2_r8.lo] Error 1 :info:build libtool: compile: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/./gcc/ -L/opt/local/i686-w64-mingw32/lib -L/opt/local/mingw/lib -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/mingw/include -B/opt/local/i686-w64-mingw32/bin/ -B/opt/local/i686-w64-mingw32/lib/ -isystem /opt/local/i686-w64-mingw32/include -isystem /opt/local/i686-w64-mingw32/sys-include -DHAVE_CONFIG_H -I. -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran -iquote/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/io -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../gcc/config -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libquadmath -I../.././gcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libgcc -I../libgcc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/../libbacktrace -I../libbacktrace -I../libbacktrace -std=gnu11 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -Werror=implicit-function-declaration -Werror=vla -fcx-fortran-rules -ffunction-sections -fdata-sections -g -O2 -MT iparity_i16.lo -MD -MP -MF .deps/iparity_i16.Tpo -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/gcc-9.2.0/libgfortran/generated/iparity_i16.c -o iparity_i16.o >/dev/null 2>&1 :info:build mv -f .deps/iparity_i16.Tpo .deps/iparity_i16.Plo :info:build mv -f .deps/iparity_i8.Tpo .deps/iparity_i8.Plo :info:build make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/i686-w64-mingw32/libgfortran' :info:build make[2]: *** [all] Error 2 :info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build/i686-w64-mingw32/libgfortran' :info:build make[1]: *** [all-target-libgfortran] Error 2 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build' :info:build make: *** [all] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build' :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/work/build" && /usr/bin/make -j4 -w all :info:build Exit code: 2 :error:build Failed to build i686-w64-mingw32-gcc-nothreads: command execution failed :debug:build Error code: CHILDSTATUS 9339 2 :debug:build Backtrace: command execution failed :debug:build while executing :debug:build "system {*}$notty {*}$nice $fullcmdstring" :debug:build invoked from within :debug:build "command_exec build" :debug:build (procedure "portbuild::build_main" line 8) :debug:build invoked from within :debug:build "$procedure $targetname" :error:build See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_cross_i686-w64-mingw32-gcc/i686-w64-mingw32-gcc-nothreads/main.log for details.
comment:9 Changed 5 years ago by cooljeanius (Eric Gallager)
Cc: | cooljeanius added |
---|
comment:10 follow-up: 12 Changed 5 years ago by Gcenx
I can confirm xcode11 failed to built this on macOS Catalina regardless of deployment target or even overriding the SDK to 10.13 will still result in a failed compile.
I did a few changes to the Portfile that might not have been needed (I’ll edit the comment or comment again after work), I did blacklist XCode11 now building from source using macports clang-9 I got a completed build. The same blacklisting of XCode11 was applied to the X86_64 package and for good measure also onto the mingw-w64 meta package (not sure if it’s required or not)
I pre-installed clang-9.0 since it failed to installed due to a missing package when called via mingw-w64
Edit; I believe I’ve figured that out and will do a pull-request later that resolves the issue.
Just an FYI the mingw binutil conflict isn’t related and was caused by the xz version bump
comment:11 Changed 5 years ago by Gcenx
@mojca the issue here isn't with the Portfile here exactly but the prebuilt packages.
Removed all ports, edited macports.conf
and set buildfromsource always
now i686-w64-mingw32-gcc-nothreads
built without issue.
comment:12 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | Gcenx ryandesign added |
---|
Replying to Gcenx:
I did a few changes to the Portfile that might not have been needed (I’ll edit the comment or comment again after work), I did blacklist XCode11 now building from source using macports clang-9 I got a completed build.
The same blacklisting of XCode11 was applied to the X86_64 package and for good measure also onto the mingw-w64 meta package (not sure if it’s required or not)
I pre-installed clang-9.0 since it failed to installed due to a missing package when called via mingw-w64
Can you be more specific? What error message did you get exactly?
Edit; I believe I’ve figured that out and will do a pull-request later that resolves the issue.
I think you mean https://github.com/macports/macports-ports/pull/6449? But you closed it saying blacklisting wasn't what fixed it, it was just building everything from source that fixed it.
Just an FYI the mingw binutil conflict isn’t related and was caused by the xz version bump
Replying to Gcenx:
@mojca the issue here isn't with the Portfile here exactly but the prebuilt packages.
Removed all ports, edited
macports.conf
and setbuildfromsource always
nowi686-w64-mingw32-gcc-nothreads
built without issue.
Can you be more specific? Which packages need to be rebuilt? When Catalina was first released, we of course built all of our packages for it with Xcode 11. If there was some bug in Xcode 11 that caused a package to be mis-built in some way, and rebuilding that package with Xcode 11.4.1 would fix it, we can do that by revbumping the affected port, we just need to know which port(s) to do that to. If you have any information about what specifically is wrong with the affected packages that might be helpful as well for possibly identifying other affected packages.
comment:13 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | larryv added |
---|---|
Keywords: | haspatch added |
Port: | mpfr added |
After trying to rebuild various rdependencies of i686-w64-mingw32-gcc-nothreads with no change, in the end I think only mpfr needs to be rebuilt to fix this problem.
Our package of mpfr @4.0.2_0 for Catalina was built October 29, 2019, at which point the latest version of Xcode was 11.1, so that's probably what we were using on our build server, though we may have still been using 11.0.
If it really is a case of an old Xcode 11 building mpfr incorrectly, then we should not only increase the revision of mpfr but also ensure that a recent enough Xcode is being used. I don't know what the earliest version of Xcode 11 is that builds it correctly, but Gcenx reported success above on February 28, 2020, at which point the latest version was Xcode 11.3.1, so we could use that as the minimum:
-
Portfile
old new 11 11 name mpfr 12 12 # The actual version is generated below, after patchfiles is defined. 13 13 set base_version 4.0.2 14 revision 1 14 15 categories devel math 15 16 platforms darwin 16 17 license LGPL-3+ … … 57 58 # blacklisted here 58 59 compiler.blacklist {clang == 211.10.1} 59 60 61 # Early versions of Xcode 11 seem to miscompile mpfr such that compiling 62 # i686-w64-mingw32-gcc-nothreads crashes. Xcode 11.3.1 and later seem to 63 # be ok. See https://trac.macports.org/ticket/60091 64 compiler.blacklist-append \ 65 {clang >= 1100 < 1100.0.33.17} 66 60 67 test.run yes 61 68 test.target check 62 69
comment:14 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
comment:15 Changed 5 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Cc: | MarcusCalhoun-Lopez added |
---|
comment:16 Changed 5 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
There is an alternate pull request that attempts to solve this problem.
comment:17 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Thanks. I see you lowered the minimum Xcode 11 version to 11.2. Did you do some test builds and verify that when mpfr was built with Xcode 11.2 i686-w64-mingw32-gcc-nothreads would build without crashing?
comment:18 Changed 5 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Yes.
i686-w64-mingw32-gcc-nothreads seems to build with no changes if mpfr is built with Xcode 11.2.
If mpfr is built with older versions of Xcode, -fno-stack-check
also seems to fix the problem.
comment:19 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Great, thanks. Does the stack check issue only affect Catalina? What happens if a Mojave user has Xcode 11.0 or 11.1?
comment:20 Changed 5 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
If I recall correctly, -fno-stack-check
is the default for OS versions prior to macOS 10.15, regardless of Xcode version.
comment:21 Changed 5 years ago by Gcenx
Sorry @ryandesign for not responding to this, somehow gmail was marking the emails as spam....
As @MarcusCalhoun-Lopez says -fno-stack-check
is default below Catalina.
The package issues were all built using Xcode11 initial release anything built after Xcode11.2 don't have these issues.
comment:22 Changed 4 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Hmmm, I'm sorry, this one has apparently always been broken on 10.15 (https://ports.macports.org/port/i686-w64-mingw32-gcc-nothreads/), but I never noticed it, we need some more "show me all my broken ports" functionality.
So we do have the full build logs on our build infrastructure.
Now, with
I'm somewhat clueless about what to do without upstream jumping in for help.