Opened 6 years ago

Closed 6 years ago

Last modified 3 years ago

#56922 closed defect (worksforme)

Libgcc7 @7.3.0_1 fails to build on PPC Tiger, Mac OS X 10.4.11, because comparison of stages 2 and 3 fails

Reported by: ballapete (Peter "Pete" Dyballa) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.5.3
Keywords: tiger Cc: cjones051073 (Chris Jones), MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: libgcc7

Description

make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
/usr/bin/make "DESTDIR=" "RPATH_ENVVAR=DYLD_LIBRARY_PATH" "TARGET_SUBDIR=ppc-apple-darwin8" "bindir=/opt/local/bin" "datadir=/opt/local/share/gcc-7" "exec_prefix=/opt/local" "includedir=/opt/local/include/gcc" "datarootdir=/opt/local/share/gcc-7" "docdir=/opt/local/share/gcc-7/doc/" "infodir=/opt/local/share/info" "pdfdir=/opt/local/share/gcc-7/doc/" "htmldir=/opt/local/share/gcc-7/doc/" "libdir=/opt/local/lib/libgcc" "libexecdir=/opt/local/libexec" "lispdir=" "localstatedir=/opt/local/var" "mandir=/opt/local/share/man" "oldincludedir=/usr/include" "prefix=/opt/local" "sbindir=/opt/local/sbin" "sharedstatedir=/opt/local/com" "sysconfdir=/opt/local/etc" "tooldir=/opt/local/ppc-apple-darwin8" "build_tooldir=/opt/local/ppc-apple-darwin8" "target_alias=ppc-apple-darwin8" "AWK=gawk" "BISON=bison" "CC_FOR_BUILD=/opt/local/bin/gcc-apple-4.2 -arch ppc" "CFLAGS_FOR_BUILD=-pipe -Os" "CXX_FOR_BUILD=/opt/local/bin/g++-apple-4.2 -arch ppc -std=gnu++98" "EXPECT=expect" "FLEX=flex" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS_FOR_BUILD=-L/opt/local/lib -Wl,-headerpad_max_install_names" "LEX=flex" "M4=gm4" "MAKE=/usr/bin/make" "RUNTEST=runtest" "RUNTESTFLAGS=" "SED=/usr/bin/sed" "SHELL=/bin/sh" "YACC=bison -y" "`echo 'ADAFLAGS=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "ADA_CFLAGS=" "AR_FLAGS=rc" "`echo 'BOOT_ADAFLAGS=-gnatpg' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "BOOT_CFLAGS=-g -O2 -mdynamic-no-pic" "BOOT_LDFLAGS=" "CFLAGS=-pipe -Os" "CXXFLAGS=-pipe -Os" "LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names" "LIBCFLAGS=-pipe -Os" "LIBCXXFLAGS=-pipe -Os -fno-implicit-templates" "STAGE1_CHECKING=--enable-checking=yes" "STAGE1_LANGUAGES=c,c++,lto" "GNATBIND=no" "GNATMAKE=no" "AR_FOR_TARGET=/opt/local/bin/ar" "AS_FOR_TARGET=/opt/local/bin/as" "CC_FOR_TARGET=/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/" "CFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "CPPFLAGS_FOR_TARGET=" "CXXFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "DLLTOOL_FOR_TARGET=dlltool" "FLAGS_FOR_TARGET=-B/opt/local/ppc-apple-darwin8/bin/ -B/opt/local/ppc-apple-darwin8/lib/ -isystem /opt/local/ppc-apple-darwin8/include -isystem /opt/local/ppc-apple-darwin8/sys-include" "GFORTRAN_FOR_TARGET=/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/gfortran -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/" "GOC_FOR_TARGET=" "GOCFLAGS_FOR_TARGET=-O2 -g" "LD_FOR_TARGET=/opt/local/bin/ld" "LIPO_FOR_TARGET=lipo" "LDFLAGS_FOR_TARGET=" "LIBCFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "LIBCXXFLAGS_FOR_TARGET=-g -O2 -pipe -Os -fno-implicit-templates" "NM_FOR_TARGET=/opt/local/bin/nm" "OBJDUMP_FOR_TARGET=/opt/local/bin/objdump" "OBJCOPY_FOR_TARGET=" "RANLIB_FOR_TARGET=/opt/local/bin/ranlib" "READELF_FOR_TARGET=readelf" "STRIP_FOR_TARGET=/opt/local/bin/strip" "WINDRES_FOR_TARGET=windres" "WINDMC_FOR_TARGET=windmc" "BUILD_CONFIG=bootstrap-debug" "`echo 'LANGUAGES=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "LEAN=:" "STAGE1_CFLAGS=-g -mdynamic-no-pic" "STAGE1_CXXFLAGS=-g -mdynamic-no-pic" "STAGE1_TFLAGS=" "STAGE2_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle" "STAGE2_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle" "STAGE2_TFLAGS=" "STAGE3_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGE3_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGE3_TFLAGS=" "STAGE4_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGE4_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGE4_TFLAGS=" "STAGEprofile_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -fprofile-generate" "STAGEprofile_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -fprofile-generate" "STAGEprofile_TFLAGS=" "STAGEfeedback_CFLAGS=-g -O2 -mdynamic-no-pic  -fprofile-use" "STAGEfeedback_CXXFLAGS=-g -O2 -mdynamic-no-pic  -fprofile-use" "STAGEfeedback_TFLAGS=" "STAGEautoprofile_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -g" "STAGEautoprofile_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -g" "STAGEautoprofile_TFLAGS=" "STAGEautofeedback_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGEautofeedback_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGEautofeedback_TFLAGS=" "CXX_FOR_TARGET= $r/./gcc/xg++ -B$r/./gcc/ -nostdinc++ `if test -f $r/ppc-apple-darwin8/libstdc++-v3/scripts/testsuite_flags; then /bin/sh $r/ppc-apple-darwin8/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -L$r/ppc-apple-darwin8/libstdc++-v3/src -L$r/ppc-apple-darwin8/libstdc++-v3/src/.libs -L$r/ppc-apple-darwin8/libstdc++-v3/libsupc++/.libs" "TFLAGS=" "CONFIG_SHELL=/bin/sh" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000"  compare
make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
rm -f stage_current
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[1]: *** [stage3-bubble] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make: *** [bootstrap-lean] Error 2
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build" && /usr/bin/make -w bootstrap-lean 
Exit code: 2
Error: Failed to build libgcc7: command execution failed

Attachments (6)

main.log.gz (554.7 KB) - added by ballapete (Peter "Pete" Dyballa) 6 years ago.
Compressed main.log from PPC Tiger because of size
main.log-libgcc(7)--without-build-config=bootstrap-debug.gz (554.7 KB) - added by ballapete (Peter "Pete" Dyballa) 6 years ago.
Compressed main.log from PPC Tiger because of size from building without --wih-build-config=bootstrap-debug configure option
main.log.2.gz (556.8 KB) - added by ballapete (Peter "Pete" Dyballa) 6 years ago.
Main.log from build with additional configure argument --with-dwarf
main.log.3.gz (554.6 KB) - added by ballapete (Peter "Pete" Dyballa) 6 years ago.
Main.log from build of libgcc @7.3.0_1 without binutils package
main.log.4.gz (554.7 KB) - added by ballapete (Peter "Pete" Dyballa) 6 years ago.
Main.log from build of libgcc @7.3.0_1 on PPC Tiger without binutils package with apple-gcc42 @5666.3_15 (active) platform='darwin 8' archs='ppc' date='2018-08-20T17:19:16+0200'
main.log.5.gz (554.8 KB) - added by ballapete (Peter "Pete" Dyballa) 6 years ago.
Main.log from build of libgcc7 @7.3.0_4 on Tiger PowerPC 7447A

Change History (98)

Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log.gz added

Compressed main.log from PPC Tiger because of size

comment:1 Changed 6 years ago by cjones051073 (Chris Jones)

Libgcc7 is really just the previous libgcc port, prior to

https://github.com/macports/macports-ports/pull/2296

Simply renamed.

In terms of how the gcc sources are built its the same, so I would expct the old port to gave failed in the same way. Is this the case ?

Version 0, edited 6 years ago by cjones051073 (Chris Jones) (next)

comment:2 Changed 6 years ago by cjones051073 (Chris Jones)

Cc: cjones051073 added

comment:3 in reply to:  2 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

I seem to remember that libgcc7 cannot be built since weeks…

I have insalled:

  libgcc @7.3.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-21T14:39:32+0200'
  libgcc6 @6.4.0_2 (active) platform='darwin 8' archs='ppc' date='2018-05-27T07:20:19+0200'

Anyway, I am trying to build it anew. Before I am going to clean up my PowerBook in case it's a problem with disk space. 4.2 GB are left…

comment:4 Changed 6 years ago by cjones051073 (Chris Jones)

libgcc7 is only a few weeks old. It did not exist prior to the GitHub PR above.

I see above you have

 libgcc @7.3.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-21T14:39:32+0200'

installed. This is, as far as the gcc build goes, identical to libgcc7. So it makes no sense one works and the other does not. One possibility is the issue is nothing to do with the gcc ports per se, but due to other changes made recently in ports like ld64 and cctools, which gcc uses. You are seeing this now simply because the new gcc ports are forcing you to rebuild with them.

Anyway, I have no way to test anything as old as 10.4 (I also consider it a bit below the support radar myself to be frank). So you are likely going to have to investigate this yourself I am afraid.

comment:5 in reply to:  4 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

One possibility is the issue is nothing to do with the gcc ports per se, but due to other changes made recently in ports like ld64 and cctools, which gcc uses. You are seeing this now simply because the new gcc ports are forcing you to rebuild with them.

Exactly these changed recently:

  cctools @895_5 (active) platform='darwin 8' archs='ppc' date='2018-08-04T21:30:39+0200'
  ld64 @3_1+ld64_97 (active) platform='darwin 8' archs='ppc' date='2018-08-04T21:06:51+0200'
  ld64-97 @97.17_8 (active) platform='darwin 8' archs='ppc' date='2016-12-22T21:53:15+0100'

Wouldn't it be advised to report this failure with libgcc7 to the maintainer of cctools and ld64?

comment:6 Changed 6 years ago by cjones051073 (Chris Jones)

I have no idea if those are causing your problems or not. Sorry, but you are going to have to investigate this yourself.

comment:7 Changed 6 years ago by kencu (Ken)

I don't think the changes in cctools or ld64* should have any effect on building this port on 10.4 PPC. Those changes were only set to target Xcode 9+.

I assume you have cleaned and tried the rebuild at least once, just to check for inscrutable errors in building.

My first thought when I see weird errors like this in ports that are known to work on other systems is to think of issues with parallel building. So I usually try disabling that. We have had issues with exactly that on gcc* in the past.

I also find the past trac tickets very helpful, and a similar error was found in this ticket 51245, with a suggestion for a fix that worked at that time. So I'd probably try that next. There are also other tickets with this error, and various fixes that have worked over time, I note.

comment:8 Changed 6 years ago by cjones051073 (Chris Jones)

I had found the above ticket. The fixes discussed there where committed to the ports and still there. So that fix isn't going to help, although I agree its likely something in a similar vain.

comment:9 in reply to:  7 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

My first thought when I see weird errors like this in ports that are known to work on other systems is to think of issues with parallel building. So I usually try disabling that. We have had issues with exactly that on gcc* in the past.

My PowerBook G4 has one PowerPC 7447A processor with exactly one core. There isn't even an artificially parallel build with some -j option going on.

comment:10 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

The result of the new build is the same:

make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1
-rw-r--r--   1 macports  admin  512  9 Aug 20:00 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1obj-checksum.o
-rw-r--r--   1 macports  admin  512  9 Aug 20:15 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1objplus-checksum.o
-rw-r--r--   1 macports  admin  876 10 Aug 00:58 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1obj-checksum.o
-rw-r--r--   1 macports  admin  880 10 Aug 01:01 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1objplus-checksum.o

-rw-r--r--   1 macports  admin  2924  9 Aug 15:38 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/host-darwin.o
-rw-r--r--   1 macports  admin  4688 10 Aug 00:14 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/host-darwin.o

The file system still has almost 2 GB left. The build log does not seem to contain another error, for example one that reports that the compiler could not create or write an object.

One difference when building the three object files is the use of -gtoggle in stage 2. It's probably used for all stage 2 objects. In stage 3 it's only used to create the compare utility:

make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/ppc-apple-darwin8/libgomp'
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
/usr/bin/make "DESTDIR=" "RPATH_ENVVAR=DYLD_LIBRARY_PATH" "TARGET_SUBDIR=ppc-apple-darwin8" "bindir=/opt/local/bin" "datadir=/opt/local/share/gcc-7" "exec_prefix=/opt/local" "includedir=/opt/local/include/gcc" "datarootdir=/opt/local/share/gcc-7" "docdir=/opt/local/share/gcc-7/doc/" "infodir=/opt/local/share/info" "pdfdir=/opt/local/share/gcc-7/doc/" "htmldir=/opt/local/share/gcc-7/doc/" "libdir=/opt/local/lib/libgcc" "libexecdir=/opt/local/libexec" "lispdir=" "localstatedir=/opt/local/var" "mandir=/opt/local/share/man" "oldincludedir=/usr/include" "prefix=/opt/local" "sbindir=/opt/local/sbin" "sharedstatedir=/opt/local/com" "sysconfdir=/opt/local/etc" "tooldir=/opt/local/ppc-apple-darwin8" "build_tooldir=/opt/local/ppc-apple-darwin8" "target_alias=ppc-apple-darwin8" "AWK=gawk" "BISON=bison" "CC_FOR_BUILD=/opt/local/bin/gcc-apple-4.2 -arch ppc" "CFLAGS_FOR_BUILD=-pipe -Os" "CXX_FOR_BUILD=/opt/local/bin/g++-apple-4.2 -arch ppc -std=gnu++98" "EXPECT=expect" "FLEX=flex" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS_FOR_BUILD=-L/opt/local/lib -Wl,-headerpad_max_install_names" "LEX=flex" "M4=gm4" "MAKE=/usr/bin/make" "RUNTEST=runtest" "RUNTESTFLAGS=" "SED=/usr/bin/sed" "SHELL=/bin/sh" "YACC=bison -y" "`echo 'ADAFLAGS=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "ADA_CFLAGS=" "AR_FLAGS=rc" "`echo 'BOOT_ADAFLAGS=-gnatpg' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "BOOT_CFLAGS=-g -O2 -mdynamic-no-pic" "BOOT_LDFLAGS=" "CFLAGS=-pipe -Os" "CXXFLAGS=-pipe -Os" "LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names" "LIBCFLAGS=-pipe -Os" "LIBCXXFLAGS=-pipe -Os -fno-implicit-templates" "STAGE1_CHECKING=--enable-checking=yes" "STAGE1_LANGUAGES=c,c++,lto" "GNATBIND=no" "GNATMAKE=no" "AR_FOR_TARGET=/opt/local/bin/ar" "AS_FOR_TARGET=/opt/local/bin/as" "CC_FOR_TARGET=/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/" "CFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "CPPFLAGS_FOR_TARGET=" "CXXFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "DLLTOOL_FOR_TARGET=dlltool" "FLAGS_FOR_TARGET=-B/opt/local/ppc-apple-darwin8/bin/ -B/opt/local/ppc-apple-darwin8/lib/ -isystem /opt/local/ppc-apple-darwin8/include -isystem /opt/local/ppc-apple-darwin8/sys-include" "GFORTRAN_FOR_TARGET=/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/gfortran -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/" "GOC_FOR_TARGET=" "GOCFLAGS_FOR_TARGET=-O2 -g" "LD_FOR_TARGET=/opt/local/bin/ld" "LIPO_FOR_TARGET=lipo" "LDFLAGS_FOR_TARGET=" "LIBCFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "LIBCXXFLAGS_FOR_TARGET=-g -O2 -pipe -Os -fno-implicit-templates" "NM_FOR_TARGET=/opt/local/bin/nm" "OBJDUMP_FOR_TARGET=/opt/local/bin/objdump" "OBJCOPY_FOR_TARGET=" "RANLIB_FOR_TARGET=/opt/local/bin/ranlib" "READELF_FOR_TARGET=readelf" "STRIP_FOR_TARGET=/opt/local/bin/strip" "WINDRES_FOR_TARGET=windres" "WINDMC_FOR_TARGET=windmc" "BUILD_CONFIG=bootstrap-debug" "`echo 'LANGUAGES=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "LEAN=:" "STAGE1_CFLAGS=-g -mdynamic-no-pic" "STAGE1_CXXFLAGS=-g -mdynamic-no-pic" "STAGE1_TFLAGS=" "STAGE2_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle" "STAGE2_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle" "STAGE2_TFLAGS=" "STAGE3_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGE3_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGE3_TFLAGS=" "STAGE4_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGE4_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGE4_TFLAGS=" "STAGEprofile_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -fprofile-generate" "STAGEprofile_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -fprofile-generate" "STAGEprofile_TFLAGS=" "STAGEfeedback_CFLAGS=-g -O2 -mdynamic-no-pic  -fprofile-use" "STAGEfeedback_CXXFLAGS=-g -O2 -mdynamic-no-pic  -fprofile-use" "STAGEfeedback_TFLAGS=" "STAGEautoprofile_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -g" "STAGEautoprofile_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -g" "STAGEautoprofile_TFLAGS=" "STAGEautofeedback_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGEautofeedback_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGEautofeedback_TFLAGS=" "CXX_FOR_TARGET= $r/./gcc/xg++ -B$r/./gcc/ -nostdinc++ `if test -f $r/ppc-apple-darwin8/libstdc++-v3/scripts/testsuite_flags; then /bin/sh $r/ppc-apple-darwin8/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -L$r/ppc-apple-darwin8/libstdc++-v3/src -L$r/ppc-apple-darwin8/libstdc++-v3/src/.libs -L$r/ppc-apple-darwin8/libstdc++-v3/libsupc++/.libs" "TFLAGS=" "CONFIG_SHELL=/bin/sh" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000"  compare
make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
rm -f stage_current
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3

I'll check later the problems described in #51245.

comment:11 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

By some mistake, trying to upgrade packages that do not depend on libgcc/libgcc7 indirectly, the old build directory was lost. Could be the difference is in debug information so I am going to try the configure option --with-build-config=bootstrap-debug.

comment:12 Changed 6 years ago by cjones051073 (Chris Jones)

As I have said, That option is already applied... see

https://github.com/macports/macports-ports/blob/master/lang/gcc7/Portfile

Line 89.

comment:13 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Cc: MarcusCalhoun-Lopez added

comment:14 in reply to:  12 ; Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

As I have said, That option is already applied... see

https://github.com/macports/macports-ports/blob/master/lang/gcc7/Portfile

Line 89.

Sorry, I failed to see it, I only saw the excessive use of -g in the build log. So my next try is to add -g0 to all compiler flags. Could be this works!

comment:15 in reply to:  14 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

In stage1 it does *not* work…

comment:16 Changed 6 years ago by cjones051073 (Chris Jones)

I am not sure second guessing the compiler flags used internally during the build is the way to go here. Presumably the gcc devs know what they are doing. What would more interest me is why you have this issue, whereas all other platforms (including Darwin 9 PPC) do not have any issues.. Maybe you could try sending a (clean) build log to them to see if they have any suggestions as to what is going on.

Last edited 6 years ago by cjones051073 (Chris Jones) (previous) (diff)

comment:17 Changed 6 years ago by kencu (Ken)

I am not near my PPC machines at present, so I can't double check this for you just now.

I can see that the only difference between the build lines on the host-darwin.o files is indeed the -gtoggle directive, as you noted.

I can also see that the -gtoggle directive is applied due to the --with-build-config=bootstrap-debug addition <https://github.com/gcc-mirror/gcc/blob/master/config/bootstrap-debug.mk>.

This was added to fix an error bootstrapping with clang. I would hazard a guess that if you deleted that line from the configuration, you might have success.

At present, I do not know why this is showing up just now and not before now.

comment:18 Changed 6 years ago by kencu (Ken)

Also, depending on how that goes, this <https://github.com/Homebrew/legacy-homebrew/pull/46111/commits/4d2b6b9345e7b6eea7ab0e9faf0d8aee4f2520f3> looks possibly interesting.

comment:19 in reply to:  16 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

I am not sure second guessing the compiler flags used internally during the build is the way to go here. Presumably the gcc devs know what they are doing. What would more interest me is why you have this issue, whereas all other platforms (including Darwin 9 PPC) do not have any issues..

Anyway, I have no success! In stage 2 -g is used excessively as before.

Maybe you could try sending a (clean) build log to them to see if they have any suggestions as to what is going on.

Yes, this would be my last try. (Before editing the Portfile.) Next try is without --with-build-config=bootstrap-debug.

comment:20 in reply to:  18 ; Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

Also, depending on how that goes, this <https://github.com/Homebrew/legacy-homebrew/pull/46111/commits/4d2b6b9345e7b6eea7ab0e9faf0d8aee4f2520f3> looks possibly interesting.

I've seen this hint about DWARF2 debugging format also in the other Homebrew bug report given in #51245. This seems to have been thought of because configure repeatedly reports the use of that debugging format.

comment:21 in reply to:  17 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

I can also see that the -gtoggle directive is applied due to the --with-build-config=bootstrap-debug addition <https://github.com/gcc-mirror/gcc/blob/master/config/bootstrap-debug.mk>.

I removed that configure option, but configure still seems to be in the same mood:

checking for isl 0.15 or later... yes
The following languages will be built: c,c++,fortran,lto,objc,obj-c++
*** This configuration is not supported in the following subdirectories:
     zlib target-libcilkrts target-libsanitizer target-libvtv target-libmpx target-libgo gnattools gotools target-libada target-libhsail-rt target-libffi target-liboffloadmic
    (Any other directories should still work fine.)
checking for default BUILD_CONFIG... bootstrap-debug
checking for --enable-vtable-verify... no

comment:22 in reply to:  20 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to ballapete:

Replying to kencu:

Also, depending on how that goes, this <https://github.com/Homebrew/legacy-homebrew/pull/46111/commits/4d2b6b9345e7b6eea7ab0e9faf0d8aee4f2520f3> looks possibly interesting.

I've seen this hint about DWARF2 debugging format also in the other Homebrew bug report given in #51245. This seems to have been thought of because configure repeatedly reports the use of that debugging format.

Now, *this* looks interesting:

configure: creating ./config.status
config.status: creating omp.h
config.status: creating omp_lib.h
config.status: creating omp_lib.f90
config.status: creating libgomp_f.h
config.status: creating Makefile
config.status: creating testsuite/Makefile
config.status: creating libgomp.spec
config.status: creating testsuite/libgomp-test-support.pt.exp
config.status: creating config.h
config.status: executing default-1 commands
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing gstdint.h commands
mkdir ppc-apple-darwin8/libstdc++-v3
Checking multilib configuration for libstdc++-v3...
Configuring stage 1 in ppc-apple-darwin8/libstdc++-v3
configure: creating cache ./config.cache
checking build system type... powerpc-apple-darwin8
checking host system type... powerpc-apple-darwin8
checking target system type... powerpc-apple-darwin8
...
checking for ppc-apple-darwin8-gcc... /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/ -B/opt/local/ppc-apple-darwin8/bin/ -B/opt/local/ppc-apple-darwin8/lib/ -isystem /opt/local/ppc-apple-darwin8/include -isystem /opt/local/ppc-apple-darwin8/sys-include   
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
...
checking how to run the C preprocessor... /opt/local/bin/gcc-apple-4.2 -E
checking for grep that handles long lines and -e... /opt/local/bin/grep
checking for egrep... /opt/local/bin/grep -E
checking whether ln -s works... yes
checking for ppc-apple-darwin8-as... /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/as
checking for ppc-apple-darwin8-ar... /opt/local/bin/ar
checking for ppc-apple-darwin8-ranlib... /opt/local/bin/ranlib
...
checking for ld used by /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/ -B/opt/local/ppc-apple-darwin8/bin/ -B/opt/local/ppc-apple-darwin8/lib/ -isystem /opt/local/ppc-apple-darwin8/include -isystem /opt/local/ppc-apple-darwin8/sys-include   ... /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/collect-ld
checking if the linker (/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/collect-ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/nm
checking the name lister (/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/nm) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/collect-ld option to reload object files... -r
checking for ppc-apple-darwin8-objdump... /opt/local/bin/objdump
checking how to recognize dependent libraries... pass_all
checking for ppc-apple-darwin8-ar... (cached) /opt/local/bin/ar
checking for ppc-apple-darwin8-strip... /opt/local/bin/strip
checking for ppc-apple-darwin8-ranlib... (cached) /opt/local/bin/ranlib
checking command to parse /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/nm output from /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/ -B/opt/local/ppc-apple-darwin8/bin/ -B/opt/local/ppc-apple-darwin8/lib/ -isystem /opt/local/ppc-apple-darwin8/include -isystem /opt/local/ppc-apple-darwin8/sys-include    object... ok
checking for ppc-apple-darwin8-dsymutil... no
checking for dsymutil... dsymutil
checking for ppc-apple-darwin8-nmedit... no
checking for nmedit... nmedit
checking for ppc-apple-darwin8-lipo... lipo
checking for ppc-apple-darwin8-otool... no
checking for otool... otool
checking for ppc-apple-darwin8-otool64... no
checking for otool64... otool64
...
checking for ISO C99 support in <complex.h> for C++98... yes
checking for ISO C99 support in <stdio.h> for C++98... yes
checking for ISO C99 support in <stdlib.h> for C++98... yes
checking for ISO C99 support in <wchar.h> for C++98... yes
checking for sin in -lm... (cached) yes
checking for ISO C99 support in <math.h> for C++11... yes
checking for tgmath.h... (cached) yes
checking for complex.h... (cached) yes
checking for ISO C99 support in <complex.h> for C++11... yes
checking for ISO C99 support in <stdio.h> for C++11... yes
checking for ISO C99 support in <stdlib.h> for C++11... yes
checking for ISO C99 support in <wchar.h> for C++11... yes
checking for fully enabled ISO C99 support... yes
configure: Debug build flags set to -gdwarf-4 -g3 -O0
checking for additional debug build... no

So the new C++ compiler from stage 1 is going to use another debugging format. Building of stage 2 has started without particular bootstrap debugging, but -gtoggle gets used.

comment:23 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

The build without the configure option --with-build-config=bootstrap-debug ended almost an hour ago. It brought the same result:

make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
rm -f stage_current
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1
-rw-r--r-- 1 macports admin  880 08-12 19:08 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1objplus-checksum.o
-rw-r--r-- 1 macports admin  876 08-12 19:06 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1obj-checksum.o
-rw-r--r-- 1 macports admin 4688 08-12 18:27 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/host-darwin.o
-rw-r--r-- 1 macports admin  512 08-12 14:27 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1objplus-checksum.o
-rw-r--r-- 1 macports admin  512 08-12 14:12 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1obj-checksum.o
-rw-r--r-- 1 macports admin 2924 08-12 09:45 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/host-darwin.o

I tried to strip the files à la strip file -o file-stripped. host-darwin.o produces output

strip: symbols referenced by relocation entries that can't be stripped in: /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/host-darwin.o
restGPRx
saveGPR
dyld_stub_binding_helper
_getpagesize
__Z11fancy_abortPKciS0_
_mmap
_munmap
__Z11fatal_errorjPKcz
_input_location

instead on an output file. The resulting output files are:

-rw-r--r-- 1 root     admin  476 08-12 21:27 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1objplus-checksum-stripped.o
-rw-r--r-- 1 root     admin  476 08-12 21:27 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1obj-checksum-stripped.o
-rw-r--r-- 1 root     admin  476 08-12 21:22 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1obj-checksum-stripped.o
-rw-r--r-- 1 root     admin  476 08-12 21:21 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1objplus-checksum-stripped.o
-rw-r--r-- 1 macports admin  880 08-12 19:08 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1objplus-checksum.o
-rw-r--r-- 1 macports admin  876 08-12 19:06 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1obj-checksum.o
-rw-r--r-- 1 macports admin 4688 08-12 18:27 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/host-darwin.o
-rw-r--r-- 1 macports admin  512 08-12 14:27 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1objplus-checksum.o
-rw-r--r-- 1 macports admin  512 08-12 14:12 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1obj-checksum.o
-rw-r--r-- 1 macports admin 2924 08-12 09:45 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/host-darwin.o

Some configure step reports that comparison is performed with cmp --ignore-initial=16 $$f1 $$f2. Using this I get:

root 345 /\ cmp --ignore-initial=16 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage?-gcc/cc1objplus-checksum-stripped.o
/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1objplus-checksum-stripped.o /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1objplus-checksum-stripped.o differ: char 445, line 1
root 346 /\ cmp --ignore-initial=16 /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage?-gcc/cc1obj-checksum-stripped.o
/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage2-gcc/cc1obj-checksum-stripped.o /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/stage3-gcc/cc1obj-checksum-stripped.o differ: char 445, line 1

So there is a difference.

The new main.log also shows some differences, besides the unused configure option. It's the sequence of warnings which are emitted by ld. It's unlikely that this comes from a "parallel build" – usually a single ld is used. I am attaching this main.log too.

Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Compressed main.log from PPC Tiger because of size from building without --wih-build-config=bootstrap-debug configure option

comment:24 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

A new build has started. This time I added --with-dwarf2 to the configure options. This option is only used by GCC's configure script:

find /opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7 -type f -name configure -exec grep -in -e -dwarf {} /dev/null \;
.../libgcc7/work/gcc-7.3.0/gcc/configure:1718:  --with-dwarf2           force the default debug format to be DWARF 2
.../libgcc7/work/gcc-7.3.0/gcc/configure:7588:# Check whether --with-dwarf2 was given.
.../libgcc7/work/gcc-7.3.0/gcc/configure:11524:then tm_file="$tm_file tm-dwarf2.h"

Could be the new compiler version is set up to use DWARF-4 format by default as is the default for g++ 7.3.

comment:25 Changed 6 years ago by cjones051073 (Chris Jones)

How would this then explain

  • The port builds just fine as is on all other platforms.
  • The port, in its old version as libgcc (but as far as the gcc build configuration identical) also built just fine for you on Darwin 8.

Whatever the issue is, you need to be able to explain the above to really understand what is going on here.

Last edited 6 years ago by cjones051073 (Chris Jones) (previous) (diff)

comment:26 in reply to:  25 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

Whatever the issue is, you need to be able to explain the above to really understand what is going on here.

I am unable, I can't explain (The Who). I always hope that someone else can do so. (For example the GCC folks. Therefore I am making experiments that they can work faster because the results already exist when I'll present the problem.)

comment:27 in reply to:  24 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to ballapete:

A new build has started. This time I added --with-dwarf2 to the configure options.

The same result as before:

make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
rm -f stage_current
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1

Anything else I could try?

Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log.2.gz added

Main.log from build with additional configure argument --with-dwarf

comment:28 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

I found a possible flaw in my setup: the package binutils was activated so that configure found:

checking for GNU c++filt... /opt/local/bin/gc++filt

Having it deactivated again configure now finds:

checking for GNU c++filt... /usr/bin/c++filt

Could this make the difference? BTW, I simply ran port selfupdate to use an unchanged Portfile for the new build. So I am now trying to build libgcc7-7.3.0_2

comment:29 Changed 6 years ago by cjones051073 (Chris Jones)

I guess it could. It would explain why you have the issue, but it is not seen elsewhere (yet) ?

comment:30 in reply to:  29 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

I guess it could. It would explain why you have the issue, but it is not seen elsewhere (yet) ?

#52116, #41752 – do not remember or find more. I do remember having received a recommendation to uninstall that package, which I then deactivated and now found reactivated.

Only 30,000 lines of output before reaching the regular failure…

comment:31 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

This is a splendid system: No matter what I try the result is always the same:

make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
rm -f stage_current
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[1]: *** [stage3-bubble] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make: *** [bootstrap-lean] Error 2
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build" && /usr/bin/make -w bootstrap-lean 
Exit code: 2
Error: Failed to build libgcc7: command execution failed

Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log.3.gz added

Main.log from build of libgcc @7.3.0_1 without binutils package

comment:32 Changed 6 years ago by kencu (Ken)

I'm back to my machine farm again. It last had a MacPorts update in early July.

On my 10.4.11 PPC machine, I just built gcc7 through to completion, with no issues.

I'll run a MacPorts update now, and then see what happens. Might take a day or two (as you know).

comment:33 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Portfile sets deliberately OBJDUMP_FOR_TARGET=${prefix}/bin/objdump which becomes OBJDUMP_FOR_TARGET='/opt/local/bin/objdump' but I have:

pete 256 /\ env LANG=C gls -l /opt/local/bin/{ar,as,ld,nm,objdump,strip,otool}
gls: cannot access '/opt/local/bin/objdump': No such file or directory
-r-xr-xr-x 1 root admin  30752 Aug 17 09:06 /opt/local/bin/ar
-r-xr-xr-x 1 root admin  27140 Aug 17 09:05 /opt/local/bin/as
lrwxrwxrwx 1 root admin      5 Aug  4 21:06 /opt/local/bin/ld -> ld-97
lrwxrwxrwx 1 root admin     10 Aug 17 09:06 /opt/local/bin/nm -> nm-classic
lrwxrwxrwx 1 root admin     13 Aug 17 09:06 /opt/local/bin/otool -> otool-classic
-r-xr-xr-x 1 root admin 263768 Aug 17 09:06 /opt/local/bin/strip
Exit 2

Presumingly this plays no role…

comment:34 Changed 6 years ago by cjones051073 (Chris Jones)

Not sure why you say that. It might be an issue.

Ken - Does your 'early July' system' have /opt/local/bin/objdump ?

comment:35 in reply to:  32 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

I'll run a MacPorts update now, and then see what happens. Might take a day or two (as you know).

And I started a new build with STAGE1_CFLAGS="-O0 -g0" and STAGE1_CXXFLAGS="-O0 -g0".

comment:36 in reply to:  34 Changed 6 years ago by kencu (Ken)

Replying to cjones051073:

Ken - Does your 'early July' system' have /opt/local/bin/objdump ?

No -- I do have /opt/local/bin/llvm-objdump, which symlinks to /opt/local/libexec/llvm-3.3/bin/llvm-objdump, but I'm not sure if it's actually functional on PPC as many llvm things are not.

FYI, libgcc7 is still building away, 8 hours in so far on the Dual-G5 PPC machine I have building the Tiger PPC binaries these days.

comment:37 Changed 6 years ago by cjones051073 (Chris Jones)

FWIW my 10.8 VM (randomly picked example of an outdated OS) also does not have /opt/local/bin/objdump.

So clearly not that important (as this platform builds the latest gcc port use fine) but I am guessing the gcc port explicitly configures for it for a reason, so I am guessing this cannot be ideal...

comment:38 Changed 6 years ago by kencu (Ken)

So, bad news I guess, ballapete, but libgcc7 builds with no problem for me on 10.4.11 PPC:

  libgcc @1.0_0 (active) platform='darwin 8' archs='noarch' date='2018-08-19T16:06:35-0700'
  libgcc7 @7.3.0_2 (active) platform='darwin 8' archs='ppc' date='2018-08-19T16:05:56-0700'

The rest of the ports are still munching along, and I'll report back tomorrow when they are all done.

comment:39 Changed 6 years ago by kencu (Ken)

Pete, can you confirm that you did the correct bootstrapping of apple-gcc-4.2 on Tiger, and reinstalled it like this:

  apple-gcc42 @5666.3_15-bootstrap (active) platform='darwin 8' archs='ppc' date='2018-04-27T20:29:40-0700'

comment:40 in reply to:  39 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

Pete, can you confirm that you did the correct bootstrapping of apple-gcc-4.2 on Tiger, and reinstalled it like this:

  apple-gcc42 @5666.3_15-bootstrap (active) platform='darwin 8' archs='ppc' date='2018-04-27T20:29:40-0700'

No, I have

  apple-gcc42 @5666.3_15+gpl3 (active) platform='darwin 8' archs='ppc' date='2015-07-10T13:06:16+0200'

So I'll install the bootstrap variant first…

comment:41 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

install apple-gcc42 +gpl3 +bootstrap does not work. port complains:

--->  Fetching distfiles for apple-gcc42
DEBUG: Executing proc-pre-org.macports.fetch-fetch-0
Error: Please install this port without the bootstrap variant.
Error: Failed to fetch apple-gcc42: Please install this port without the bootstrap variant.
DEBUG: Error code: NONE
DEBUG: Backtrace: Please install this port without the bootstrap variant.
    while executing
"$pre $targetname"
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port apple-gcc42 failed

comment:42 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

When I try to install apple-gcc42 +bootstrap port again complains. Now with this report:

--->  Fetching distfiles for apple-gcc42
DEBUG: Executing proc-pre-org.macports.fetch-fetch-0
Error: Please install this port without the bootstrap variant.
Error: Failed to fetch apple-gcc42: Please install this port without the bootstrap variant.
DEBUG: Error code: NONE
DEBUG: Backtrace: Please install this port without the bootstrap variant.
    while executing
"$pre $targetname"
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port apple-gcc42 failed

OK, then the "pure" apple-gcc42 first…

comment:43 in reply to:  42 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

… has at least started.

comment:44 Changed 6 years ago by kencu (Ken)

libgcc6 and gcc6 have now completed rebuilding as well. gcc7 is underway again, and then whatever's left in the update collection after that.

Must be frustrating, I know. I can make these binaries available to you once they have finished, so you can get back up to speed, if you like.

comment:45 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

I have now installed:

  apple-gcc42 @5666.3_15+gpl3 platform='darwin 8' archs='ppc' date='2015-07-10T13:06:16+0200'
  apple-gcc42 @5666.3_15 (active) platform='darwin 8' archs='ppc' date='2018-08-20T17:19:16+0200'

and when I try to install apple-gcc42 +bootstrap I get:

--->  Fetching distfiles for apple-gcc42
DEBUG: Executing proc-pre-org.macports.fetch-fetch-0
Error: Please install this port without the bootstrap variant.
Error: Failed to fetch apple-gcc42: Please install this port without the bootstrap variant.
DEBUG: Error code: NONE
DEBUG: Backtrace: Please install this port without the bootstrap variant.
    while executing
"$pre $targetname"
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port apple-gcc42 failed

There must be something wrong with port

comment:46 Changed 6 years ago by kencu (Ken)

take a look at the Portfile. It will try to stop you from installing the +bootstrap variant if it sees ld64 and cctools are installed.

variant bootstrap description {Variant to break a dependency cycle on Tiger by first building an apple-gcc42 using host ld and cctools} {
    if {([file exists ${prefix}/bin/ld] && [file exists ${prefix}/bin/as]) || ${os.major} > 8} {
        pre-fetch {
            ui_error "Please install this port without the bootstrap variant."
            error "Please install this port without the bootstrap variant."
        }
    }

It looks like you have the non-bootstrap version installed at any rate, based on your installed versions of apple-gcc42.

IF you still had the +bootstrap version installed (many people seemed to still have it) then that might have been an issue. So it must be something else on your system.

comment:47 in reply to:  34 ; Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

Not sure why you say that. It might be an issue.

Ken - Does your 'early July' system' have /opt/local/bin/objdump ?

My PowerBook G4 has:

root 440 /\ port contents ld64
Port ld64 contains:
  /opt/local/bin/ObjectDump
  …
root 441 /\ port contents ld64-97
Port ld64-97 contains:
  /opt/local/bin/ObjectDump-97
  …

And of course I have a file system that knows the difference between upper and lower case characters.

comment:48 in reply to:  46 ; Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

take a look at the Portfile. It will try to stop you from installing the +bootstrap variant if it sees ld64 and cctools are installed.

variant bootstrap description {Variant to break a dependency cycle on Tiger by first building an apple-gcc42 using host ld and cctools} {
    if {([file exists ${prefix}/bin/ld] && [file exists ${prefix}/bin/as]) || ${os.major} > 8} {
        pre-fetch {
            ui_error "Please install this port without the bootstrap variant."
            error "Please install this port without the bootstrap variant."
        }
    }

A sensible system would check whether particular packages are installed and complain about that instead of reporting such rubbish.

It looks like you have the non-bootstrap version installed at any rate, based on your installed versions of apple-gcc42.

IF you still had the +bootstrap version installed (many people seemed to still have it) then that might have been an issue. So it must be something else on your system.

comment:49 in reply to:  47 ; Changed 6 years ago by cjones051073 (Chris Jones)

And of course I have a file system that knows the difference between upper and lower case characters.

Which, of course, is (sadily) not standard for mac OS.

comment:50 in reply to:  48 ; Changed 6 years ago by cjones051073 (Chris Jones)

Replying to ballapete:

Replying to kencu:

take a look at the Portfile. It will try to stop you from installing the +bootstrap variant if it sees ld64 and cctools are installed.

variant bootstrap description {Variant to break a dependency cycle on Tiger by first building an apple-gcc42 using host ld and cctools} {
    if {([file exists ${prefix}/bin/ld] && [file exists ${prefix}/bin/as]) || ${os.major} > 8} {
        pre-fetch {
            ui_error "Please install this port without the bootstrap variant."
            error "Please install this port without the bootstrap variant."
        }
    }

A sensible system would check whether particular packages are installed and complain about that instead of reporting such rubbish.

Patches, in the form of github pull requests, gratefully received, if you think you can improve the port.

Last edited 6 years ago by cjones051073 (Chris Jones) (previous) (diff)

comment:51 in reply to:  49 ; Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

Which, of course, is (sadily) not standard for mac OS.

I am not that handicapped and world standard.

comment:52 in reply to:  50 ; Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

Replying to ballapete:

Replying to kencu

Patches, in the form of github pull requests, gratefully received, if you think you can improve the port.

Don't expect patches from me! I do not speak or write the Portfiles' language … (And it won't make sense to learn it for the few years left to live.)

comment:53 in reply to:  51 ; Changed 6 years ago by cjones051073 (Chris Jones)

Replying to ballapete:

Replying to cjones051073:

Which, of course, is (sadily) not standard for mac OS.

I am not that handicapped and world standard.

Not sure what that means...

My point is you are doing something not standard, in the OSX world, which only increases your changes of running into things others do not see. I might well agree with you, case sensitive filesystems make more sense, but they aren't and never have been, standard in OSX and using them has been known to cause issues in the past. Your choice in the end.

comment:54 in reply to:  52 ; Changed 6 years ago by cjones051073 (Chris Jones)

Replying to ballapete:

Replying to cjones051073:

Replying to ballapete:

Replying to kencu

Patches, in the form of github pull requests, gratefully received, if you think you can improve the port.

Don't expect patches from me! I do not speak or write the Portfiles' language … (And it won't make sense to learn it for the few years left to live.)

Thats fine. But then please refrain from making disparaging comments on features you have no intention to help improve.

comment:55 Changed 6 years ago by cjones051073 (Chris Jones)

Opps. wrong ticket...

Last edited 6 years ago by cjones051073 (Chris Jones) (previous) (diff)

comment:56 in reply to:  53 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

Replying to ballapete:

Replying to cjones051073:

Which, of course, is (sadily) not standard for mac OS.

I am not that handicapped and world standard.

Not sure what that means...

It means that approximately half of the world knows the difference between lower case and upper case letters and knows how to use this means and might also know that this development of the last 2,000 years is sensible.

My point is you are doing something not standard, in the OSX world, which only increases your changes of running into things others do not see. I might well agree with you, case sensitive filesystems make more sense, but they aren't and never have been, standard in OSX and using them has been known to cause issues in the past. Your choice in the end.

I am using an optional feature of HFS (not OSX or macOS), If this usage makes problems than obviously the software having them is not made for the real world of Macs in use but for some programmer's PC. Where it should have stayed better.

comment:57 in reply to:  54 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to cjones051073:

Replying to ballapete:

Replying to cjones051073:

Replying to ballapete:

Replying to kencu

Patches, in the form of github pull requests, gratefully received, if you think you can improve the port.

Don't expect patches from me! I do not speak or write the Portfiles' language … (And it won't make sense to learn it for the few years left to live.)

Thats fine. But then please refrain from making disparaging comments on features you have no intention to help improve.

I am already helping by reporting this bug that leaves the user completely baffled. Good software is different and does not need such an amount of improvement.

comment:58 Changed 6 years ago by kencu (Ken)

Everything finished building. gcc6, libgcc6, gcc7, libgcc7, and libgcc all built through to completion on my system without any modifications to any Portfiles.

Figuring out exactly what is impairing your system from building them can be a challenge.

I can make the binaries available if you like.

comment:59 in reply to:  58 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

Everything finished building. gcc6, libgcc6, gcc7, libgcc7, and libgcc all built through to completion on my system without any modifications to any Portfiles.

Figuring out exactly what is impairing your system from building them can be a challenge.

I can make the binaries available if you like.

I have now installed:

  apple-gcc42 @5666.3_15+gpl3 platform='darwin 8' archs='ppc' date='2015-07-10T13:06:16+0200'
  apple-gcc42 @5666.3_15 platform='darwin 8' archs='ppc' date='2018-08-20T17:19:16+0200'
  apple-gcc42 @5666.3_15+bootstrap+gpl3 (active) platform='darwin 8' archs='ppc' date='2018-08-21T01:36:13+0200'

Obviously a usable compiler is active. A new build has started, and it installed the two previously deactivated packages:

DEBUG: Found Dependency: receipt exists for ld64-97
The following dependencies will be installed: 
 cctools
 ld64
Continue? [Y/n]: DEBUG: Starting logging for cctools

comment:60 Changed 6 years ago by kencu (Ken)

I have to wonder how it came to pass that ld64 and cctools were deactivated? That certainly could be part (or all) of the issue you've been having. Hope that (re-)activating those ports fixes things for you!

Good luck! Let me know if you wind up needing those binaries.

comment:61 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

With

  apple-gcc42 @5666.3_15+gpl3 platform='darwin 8' archs='ppc' date='2015-07-10T13:06:16+0200'
  apple-gcc42 @5666.3_15 platform='darwin 8' archs='ppc' date='2018-08-20T17:19:16+0200'
  apple-gcc42 @5666.3_15+bootstrap+gpl3 (active) platform='darwin 8' archs='ppc' date='2018-08-21T01:36:13+0200'
  cctools @895_7 platform='darwin 8' archs='ppc' date='2018-08-20T18:31:28+0200'
  gcc5 @5.5.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-22T20:47:08+0200'
  gcc6 @6.4.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-24T06:11:10+0200'
  gcc48 @4.8.5_3 (active) platform='darwin 8' archs='ppc' date='2018-06-08T04:10:26+0200'
  ld64 @3_1+ld64_97 platform='darwin 8' archs='ppc' date='2018-08-04T21:06:51+0200'
  ld64-97 @97.17_8 (active) platform='darwin 8' archs='ppc' date='2016-12-22T21:53:15+0100'
  libgcc @7.3.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-21T14:39:32+0200'
  libgcc6 @6.4.0_2 (active) platform='darwin 8' archs='ppc' date='2018-05-27T07:20:19+0200'

I get

make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1

Maybe I just need the puristic apple-gcc42 @5666.3_15-bootstrap … How do I install it? port install apple-gcc42 -bootstrap?

comment:62 Changed 6 years ago by kencu (Ken)

I suppose I would do that. Just as you said:

sudo port -v install apple-gcc42 -bootstrap

I'm not overly confident it will fix the issue, but it seems like the next step before the drastic measures...

comment:63 Changed 6 years ago by kencu (Ken)

Peter -- if you decide you want to start over, or perhaps just install the prebuilt binaries, I can help you use my setup as a "buildbot" of prebuilt binaries that you can install.

I use this setup to distribute the prebuilt binaries to my other 10.4 PPC machines here anyway, and I can share them with you if you want.

Email me at kencu@… if you want to set this up.

comment:64 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

port install apple-gcc42 -bootstrap leads to

The following dependencies will be installed: 
 cctools
 ld64
Continue? [Y/n]: DEBUG: Starting logging for cctools
…
--->  Deactivating apple-gcc42 @5666.3_15+bootstrap
…
--->  Activating apple-gcc42 @5666.3_15

so that I have now:

  apple-gcc42 @5666.3_15+gpl3 platform='darwin 8' archs='ppc' date='2015-07-10T13:06:16+0200'
  apple-gcc42 @5666.3_15 (active) platform='darwin 8' archs='ppc' date='2018-08-20T17:19:16+0200'
  apple-gcc42 @5666.3_15+bootstrap+gpl3 platform='darwin 8' archs='ppc' date='2018-08-21T01:36:13+0200'
  apple-gcc42 @5666.3_15+bootstrap platform='darwin 8' archs='ppc' date='2018-08-23T01:09:00+0200'
  cctools @895_7 (active) platform='darwin 8' archs='ppc' date='2018-08-20T18:31:28+0200'
  gcc5 @5.5.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-22T20:47:08+0200'
  gcc6 @6.4.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-24T06:11:10+0200'
  gcc48 @4.8.5_3 (active) platform='darwin 8' archs='ppc' date='2018-06-08T04:10:26+0200'
  ld64 @3_1+ld64_97 (active) platform='darwin 8' archs='ppc' date='2018-08-04T21:06:51+0200'
  ld64-97 @97.17_8 (active) platform='darwin 8' archs='ppc' date='2016-12-22T21:53:15+0100'
  libgcc @7.3.0_1 (active) platform='darwin 8' archs='ppc' date='2018-05-21T14:39:32+0200'
  libgcc6 @6.4.0_2 (active) platform='darwin 8' archs='ppc' date='2018-05-27T07:20:19+0200'

It seems I cannot build apple-gcc42 @5666.3_15-bootstrap

comment:65 Changed 6 years ago by kencu (Ken)

It seems I cannot build apple-gcc42 @5666.3_15-bootstrap…

MacPorts recognizes apple-gcc42 @5666.3_15 as being the equivalent to apple-gcc42 -bootstrap because apple-gcc42 @5666.3_15 doesn't have the +bootstrap variant enabled.

comment:66 in reply to:  65 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

It seems I cannot build apple-gcc42 @5666.3_15-bootstrap…

MacPorts recognizes apple-gcc42 @5666.3_15 as being the equivalent to apple-gcc42 -bootstrap because apple-gcc42 @5666.3_15 doesn't have the +bootstrap variant enabled.

So from the start I was building with the proper compiler, apple-gcc42 @5666.3_15+gpl3? Right now apple-gcc42 @5666.3_15 is used for the build.

comment:67 Changed 6 years ago by kencu (Ken)

right. probably. we don't know about the gpl3 part, as nobody else has likely tried to build gcc7 with that version of the compiler. but probably not the compiler.

now why were ld64 and cctools not installed? that is another question, and I'm not sure how that could happen.

Given that you're three weeks into this, I would have started over long ago. As before, I can tell you how to use my prebuilt binaries if you want to do that.

Probably going to close this ticket soon, though, as a "worksforme" because it's pretty obviously something on your system.

comment:68 in reply to:  67 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

right. probably. we don't know about the gpl3 part, as nobody else has likely tried to build gcc7 with that version of the compiler. but probably not the compiler.

now why were ld64 and cctools not installed? that is another question, and I'm not sure how that could happen.

Look at comment 48 from yourself! I deactivated these two packages on your recommendation in order to be able to build the +bootstrap variants.

comment:69 Changed 6 years ago by kencu (Ken)

Yeah -- I was actually trying to make sure you didn't have the +bootstrap variant installed.

Anyway, if you try one last libgcc7 build with the apple-gcc42 non-bootstrap non-gpl3 version, and it still fails, then I'm out of ideas for you.

At that point I would recommend starting over with a clean installation (using my binaries if you want)

comment:70 in reply to:  69 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

Yeah -- I was actually trying to make sure you didn't have the +bootstrap variant installed.

Anyway, if you try one last libgcc7 build with the apple-gcc42 non-bootstrap non-gpl3 version, and it still fails, then I'm out of ideas for you.

At that point I would recommend starting over with a clean installation (using my binaries if you want)

Exactly that build finished three hours ago. With the well-known failure.

Tomorrow I'll try a bug report.

Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log.4.gz added

Main.log from build of libgcc @7.3.0_1 on PPC Tiger without binutils package with apple-gcc42 @5666.3_15 (active) platform='darwin 8' archs='ppc' date='2018-08-20T17:19:16+0200'

comment:71 Changed 6 years ago by kencu (Ken)

one thing I notice is that my build is using /opt/local/bin/gsed whereas yours is using /usr/bin/sed.

comment:72 in reply to:  71 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

one thing I notice is that my build is using /opt/local/bin/gsed whereas yours is using /usr/bin/sed.

…makes no difference! Gsed got installed a few days ago, configure found it, but the build still ends with

Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1

Since nobody seems to work on my GCC bug report, Ken, could you make your package available for me and describe how I can fetch it?

comment:73 Changed 6 years ago by kencu (Ken)

Hi Peter. I'm happy to help! I just updated everything on the Tiger G5 setup I have here, and I can make the binaries available.

Please send me an email at kencu@… with your email and I'll give you the information.

I'd be happy to upload these to the packages.macports.org site as well, if Ryan would accept them. That is a "clean room" sort of environment, however, and so most likely only packages built in there behind the firewall are accepted to that server.

comment:74 Changed 6 years ago by kencu (Ken)

$ port -v installed | grep gcc
  apple-gcc42 @5666.3_15+bootstrap platform='darwin 8' archs='ppc' date='2016-03-01T09:53:39-0800'
  apple-gcc42 @5666.3_15-bootstrap (active) platform='darwin 8' archs='ppc' date='2018-04-27T20:29:40-0700'
  gcc5 @5.4.0_0 platform='darwin 8' archs='ppc' date='2016-07-28T04:28:30-0700'
  gcc5 @5.4.0_1 platform='darwin 8' archs='ppc' date='2017-03-27T00:42:24-0700'
  gcc6 @6.1.0_0 platform='darwin 8' archs='ppc' date='2016-07-29T14:00:09-0700'
  gcc6 @6.3.0_1 platform='darwin 8' archs='ppc' date='2017-02-08T09:21:05-0800'
  gcc6 @6.4.0_0 platform='darwin 8' archs='ppc' date='2017-12-06T23:55:35-0800'
  gcc6 @6.4.0_1 platform='darwin 8' archs='ppc' date='2018-05-19T07:49:43-0700'
  gcc6 @6.4.0_2 platform='darwin 8' archs='ppc' date='2018-08-20T04:32:00-0700'
  gcc6 @6.4.0_4 platform='darwin 8' archs='ppc' date='2018-10-13T04:47:16-0700'
  gcc6 @6.5.0_0 (active) platform='darwin 8' archs='ppc' date='2018-11-02T04:55:15-0700'
  gcc7 @7.2.0_0 platform='darwin 8' archs='ppc' date='2018-01-21T20:35:14-0800'
  gcc7 @7.3.0_0 platform='darwin 8' archs='ppc' date='2018-02-16T04:32:41-0800'
  gcc7 @7.3.0_1 platform='darwin 8' archs='ppc' date='2018-05-19T00:55:10-0700'
  gcc7 @7.3.0_3 platform='darwin 8' archs='ppc' date='2018-08-20T13:04:38-0700'
  gcc7 @7.3.0_5 (active) platform='darwin 8' archs='ppc' date='2018-10-13T12:48:00-0700'
  gcc46 @4.6.4_10 platform='darwin 8' archs='ppc' date='2016-12-26T13:09:27-0800'
  gcc48 @4.8.5_0 platform='darwin 8' archs='ppc' date='2016-07-27T16:55:41-0700'
  gcc48 @4.8.5_1 platform='darwin 8' archs='ppc' date='2017-03-27T04:20:15-0700'
  gcc48 @4.8.5_2 platform='darwin 8' archs='ppc' date='2018-05-19T11:25:35-0700'
  gcc48 @4.8.5_3 platform='darwin 8' archs='ppc' date='2018-06-07T12:54:46-0700'
  gcc48 @4.8.5_5 (active) platform='darwin 8' archs='ppc' date='2018-10-13T16:37:39-0700'
  gcc49 @4.9.4_1 platform='darwin 8' archs='ppc' date='2017-08-12T23:35:42-0700'
  gcc_select @0.1_8 (active) platform='darwin 8' archs='noarch' date='2018-04-27T18:32:10-0700'
  libgcc @1.0_0 (active) platform='darwin 8' archs='noarch' date='2018-08-19T16:06:35-0700'
  libgcc @6.1.0_0 platform='darwin 8' archs='ppc' date='2016-07-18T05:16:33-0700'
  libgcc @6.3.0_0 platform='darwin 8' archs='ppc' date='2017-02-08T04:08:35-0800'
  libgcc @6.4.0_0 platform='darwin 8' archs='ppc' date='2017-09-09T22:44:41-0700'
  libgcc @7.2.0_1 platform='darwin 8' archs='ppc' date='2017-10-05T01:39:00-0700'
  libgcc @7.2.0_1+defaultabi4 platform='darwin 8' archs='ppc' date='2017-12-02T23:32:23-0800'
  libgcc @7.3.0_0 platform='darwin 8' archs='ppc' date='2018-02-15T19:46:21-0800'
  libgcc @7.3.0_1 platform='darwin 8' archs='ppc' date='2018-04-28T18:56:19-0700'
  libgcc6 @6.4.0_1 platform='darwin 8' archs='ppc' date='2017-10-05T18:50:03-0700'
  libgcc6 @6.4.0_2 platform='darwin 8' archs='ppc' date='2018-06-06T23:47:59-0700'
  libgcc6 @6.4.0_4 platform='darwin 8' archs='ppc' date='2018-08-19T22:13:23-0700'
  libgcc6 @6.4.0_5 platform='darwin 8' archs='ppc' date='2018-10-12T22:05:56-0700'
  libgcc6 @6.5.0_0 (active) platform='darwin 8' archs='ppc' date='2018-11-01T22:36:48-0700'
  libgcc7 @7.3.0_2 platform='darwin 8' archs='ppc' date='2018-08-19T16:05:56-0700'
  libgcc7 @7.3.0_3 (active) platform='darwin 8' archs='ppc' date='2018-10-12T15:42:59-0700'

comment:75 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

libgcc7 @7.3.0_4 fails with the same symptom as does version 7.3.0_1:

/usr/bin/make "DESTDIR=" "RPATH_ENVVAR=DYLD_LIBRARY_PATH" "TARGET_SUBDIR=ppc-apple-darwin8" "bindir=/opt/local/bin" "datadir=/opt/local/share/gcc-7" "exec_prefix=/opt/local" "includedir=/opt/local/include/gcc" "datarootdir=/opt/local/share/gcc-7" "docdir=/opt/local/share/gcc-7/doc/" "infodir=/opt/local/share/info" "pdfdir=/opt/local/share/gcc-7/doc/" "htmldir=/opt/local/share/gcc-7/doc/" "libdir=/opt/local/lib/libgcc" "libexecdir=/opt/local/libexec" "lispdir=" "localstatedir=/opt/local/var" "mandir=/opt/local/share/man" "oldincludedir=/usr/include" "prefix=/opt/local" "sbindir=/opt/local/sbin" "sharedstatedir=/opt/local/com" "sysconfdir=/opt/local/etc" "tooldir=/opt/local/ppc-apple-darwin8" "build_tooldir=/opt/local/ppc-apple-darwin8" "target_alias=ppc-apple-darwin8" "AWK=gawk" "BISON=bison" "CC_FOR_BUILD=/opt/local/bin/gcc-apple-4.2 -arch ppc" "CFLAGS_FOR_BUILD=-pipe -Os" "CXX_FOR_BUILD=/opt/local/bin/g++-apple-4.2 -arch ppc -std=gnu++98" "EXPECT=expect" "FLEX=flex" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS_FOR_BUILD=-L/opt/local/lib -Wl,-headerpad_max_install_names" "LEX=flex" "M4=gm4" "MAKE=/usr/bin/make" "RUNTEST=runtest" "RUNTESTFLAGS=" "SED=/opt/local/bin/gsed" "SHELL=/bin/sh" "YACC=bison -y" "`echo 'ADAFLAGS=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "ADA_CFLAGS=" "AR_FLAGS=rc" "`echo 'BOOT_ADAFLAGS=-gnatpg' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "BOOT_CFLAGS=-g -O2 -mdynamic-no-pic" "BOOT_LDFLAGS=" "CFLAGS=-pipe -Os" "CXXFLAGS=-pipe -Os" "LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names" "LIBCFLAGS=-pipe -Os" "LIBCXXFLAGS=-pipe -Os -fno-implicit-templates" "STAGE1_CHECKING=--enable-checking=yes" "STAGE1_LANGUAGES=c,c++,lto" "GNATBIND=no" "GNATMAKE=no" "AR_FOR_TARGET=/opt/local/bin/ar" "AS_FOR_TARGET=/opt/local/bin/as" "CC_FOR_TARGET=/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/" "CFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "CPPFLAGS_FOR_TARGET=" "CXXFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "DLLTOOL_FOR_TARGET=dlltool" "FLAGS_FOR_TARGET=-B/opt/local/ppc-apple-darwin8/bin/ -B/opt/local/ppc-apple-darwin8/lib/ -isystem /opt/local/ppc-apple-darwin8/include -isystem /opt/local/ppc-apple-darwin8/sys-include" "GFORTRAN_FOR_TARGET=/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/gfortran -B/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build/./gcc/" "GOC_FOR_TARGET=" "GOCFLAGS_FOR_TARGET=-O2 -g" "LD_FOR_TARGET=/opt/local/bin/ld" "LIPO_FOR_TARGET=lipo" "LDFLAGS_FOR_TARGET=" "LIBCFLAGS_FOR_TARGET=-g -O2 -pipe -Os" "LIBCXXFLAGS_FOR_TARGET=-g -O2 -pipe -Os -fno-implicit-templates" "NM_FOR_TARGET=/opt/local/bin/nm" "OBJDUMP_FOR_TARGET=/opt/local/bin/objdump" "OBJCOPY_FOR_TARGET=" "RANLIB_FOR_TARGET=/opt/local/bin/ranlib" "READELF_FOR_TARGET=readelf" "STRIP_FOR_TARGET=/opt/local/bin/strip" "WINDRES_FOR_TARGET=windres" "WINDMC_FOR_TARGET=windmc" "BUILD_CONFIG=bootstrap-debug" "`echo 'LANGUAGES=' | sed -e s'/[^=][^=]*=$/XFOO=/'`" "LEAN=:" "STAGE1_CFLAGS=-g -mdynamic-no-pic" "STAGE1_CXXFLAGS=-g -mdynamic-no-pic" "STAGE1_TFLAGS=" "STAGE2_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle" "STAGE2_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle" "STAGE2_TFLAGS=" "STAGE3_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGE3_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGE3_TFLAGS=" "STAGE4_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGE4_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGE4_TFLAGS=" "STAGEprofile_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -fprofile-generate" "STAGEprofile_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -fprofile-generate" "STAGEprofile_TFLAGS=" "STAGEfeedback_CFLAGS=-g -O2 -mdynamic-no-pic  -fprofile-use" "STAGEfeedback_CXXFLAGS=-g -O2 -mdynamic-no-pic  -fprofile-use" "STAGEfeedback_TFLAGS=" "STAGEautoprofile_CFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -g" "STAGEautoprofile_CXXFLAGS=-g -O2 -mdynamic-no-pic  -gtoggle -g" "STAGEautoprofile_TFLAGS=" "STAGEautofeedback_CFLAGS=-g -O2 -mdynamic-no-pic " "STAGEautofeedback_CXXFLAGS=-g -O2 -mdynamic-no-pic " "STAGEautofeedback_TFLAGS=" "CXX_FOR_TARGET= $r/./gcc/xg++ -B$r/./gcc/ -nostdinc++ `if test -f $r/ppc-apple-darwin8/libstdc++-v3/scripts/testsuite_flags; then /bin/sh $r/ppc-apple-darwin8/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -L$r/ppc-apple-darwin8/libstdc++-v3/src -L$r/ppc-apple-darwin8/libstdc++-v3/src/.libs -L$r/ppc-apple-darwin8/libstdc++-v3/libsupc++/.libs" "TFLAGS=" "CONFIG_SHELL=/bin/sh" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000"  compare
make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
rm -f stage_current
make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Comparing stages 2 and 3
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
Bootstrap comparison failure!
gcc/host-darwin.o differs
make[2]: *** [compare] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make[1]: *** [stage3-bubble] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
make: *** [bootstrap-lean] Error 2
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build'
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_lang_gcc7/libgcc7/work/build" && /usr/bin/make -w bootstrap-lean 
Exit code: 2

Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log.5.gz added

Main.log from build of libgcc7 @7.3.0_4 on Tiger PowerPC 7447A

comment:76 Changed 6 years ago by kencu (Ken)

I assume you have tried all the usual fixes we have discussed over the past several years about this on your system?

  • the --with-dwarf2
  • the bootstrap-debug
  • disabling parallel building
  • a few years ago the build was changed to bootstrap-lean; you could change it back to bootstrap

as you seem to be the only person having this issue, you could consider blowing out your MacPorts installation and starting fresh. Using my binary repo would make your life a lot easier doing that if you decide to.

Other than that, I have no more ideas, and can't reproduce this issue on any of my systems at present.

We have several different tickets going about this same issue (gcc5, 6, 7). They are pretty much all the same issue it would seem, whatever the issue is.

comment:77 Changed 6 years ago by kencu (Ken)

Peter -- you are not using MacPorts with ccache installed or operational, are you?

comment:78 Changed 6 years ago by ballapete (Peter "Pete" Dyballa)

I re-organised my Tiger volume and "created" almost 1 GB of free disk space. It is now almost 6 GB – and libgcc7 built magically!

This ticket can be closed now, I think.

comment:79 Changed 6 years ago by kencu (Ken)

Resolution: worksforme
Status: newclosed

78 comments!

comment:80 Changed 3 years ago by leavenode

My build of libgcc7 7.5.0 on Tiger has been stuck at this exact point for the last 12 hours, which seems excessive. Should I continue to let it run?

I have stacks of disk space, 65GB+, but it's an eMac, topped out at 1GB of RAM. I wonder if that's the issue?

Process "sh" is still running around +/-40%. Total build time so far is 48hours. Am I worrying too soon?

comment:81 Changed 3 years ago by kencu (Ken)

I admit I would control-C it now, and start the build over. It will use the existing build and then go from there to finish.

It has never taken me that long on Tiger to build gcc7/libgcc7, which I have done many times.

I should find a way to put up my builds for you to install -- or ask Ryan to at least put up builds of these huge things from his Tiger systems he has at the buildbot farm (but not hooked into the builtbot farm) to get people past this particular hurdle.

comment:82 in reply to:  81 Changed 3 years ago by leavenode

I stopped the build, but completely removed macports and started over. Not many ports already built, so not wasting much. gcc7 has worked for me on other machines, so I should be able to make it work on this one.

I've shut down as much background stuff as possible this time. Just got to let it grind away now. Fingers crossed.

Replying to kencu:

I admit I would control-C it now, and start the build over. It will use the existing build and then go from there to finish.

It has never taken me that long on Tiger to build gcc7/libgcc7, which I have done many times.

I should find a way to put up my builds for you to install -- or ask Ryan to at least put up builds of these huge things from his Tiger systems he has at the buildbot farm (but not hooked into the builtbot farm) to get people past this particular hurdle.

comment:83 Changed 3 years ago by kencu (Ken)

By the way, you know it is pretty simple to share built ports between machines like this. You can set up an automated method, <https://trac.macports.org/wiki/howto/ShareArchives2> but for big builds like gcc/libgcc, you can just copy them one at a time between machines.

On the source machine, you find the software here:

/opt/local/var/macports/software/PORTNAME

for example:

/opt/local/var/macports/software/gcc7/gcc7-7.4.0_4.darwin_8.i386.tbz2

and on the destination machine, you copy the software into here:

/opt/local/var/macports/incoming/verified

and it should install it for you.

I have one Tiger machine that is a pretty hopped up DualG5 with lots of RAM, and I build most everything on that machine and then let it serve them up to the other Tiger systems I have.

comment:84 in reply to:  83 ; Changed 3 years ago by leavenode

That's really handy to know. Once the software has been copied into destination directory, presumably it's just a case of

sudo port -v install portname

just like any other installation?

As a quick aside, if I were to follow the instructions in this post:

https://forums.macrumors.com/threads/lets-learn-how-to-build-tenfourfox.2290208/?post=29735705#post-29735705

Am I likely to run into any serious issues? I'm not looking to build TenFourFox, just to incorporate your TigerPorts repo into my installation.

Thanks once again for your patience. I am really pushing the limits of my understanding here, but I am learning all the time.

Replying to kencu:

By the way, you know it is pretty simple to share built ports between machines like this. You can set up an automated method, <https://trac.macports.org/wiki/howto/ShareArchives2> but for big builds like gcc/libgcc, you can just copy them one at a time between machines.

On the source machine, you find the software here:

/opt/local/var/macports/software/PORTNAME

for example:

/opt/local/var/macports/software/gcc7/gcc7-7.4.0_4.darwin_8.i386.tbz2

and on the destination machine, you copy the software into here:

/opt/local/var/macports/incoming/verified

and it should install it for you.

I have one Tiger machine that is a pretty hopped up DualG5 with lots of RAM, and I build most everything on that machine and then let it serve them up to the other Tiger systems I have.

Last edited 3 years ago by leavenode (previous) (diff)

comment:85 Changed 3 years ago by kencu (Ken)

I have been building TenFourFox since 2018. One of the other regulars around here, Riccardo, and I sorted out the patches to make it build as Intel on a Tiger i386 machine over the Christmas holidays back then. I find it is very simple to build, but takes time.

I wrote up a Portfile to automatically build it for MacPorts <https://github.com/kencu/tenfourfox-macports>, but -- it was a big huge 6 hour build and in the end I just built it every time there was a new version and uploaded it to the TenFourFox sourceforge repo.

Here's how I build it on Intel from their default github repo:

<https://github.com/kencu/tenfourfox/blob/FPR32branch/HOWTOBUILD>

Building it on 10.5 PPC is a bit easier because you don't need clang-3.4 and yasm, or any patches.

I didn't know about that thread you referenced. Perhaps I will answer some of the questions in there. I use gcc7/libgc7 7.4.0 still because gcc7 7.5.0 introduced a new bug that makes a lot of software crash. It's a bit technical to explain but it has to do with an interaction between the system libstdc++ and the one installed by libgcc 7.5.0. Upstream thinks they have a fix for this that might work.

comment:86 Changed 3 years ago by kencu (Ken)

Not mentioned in that HOWTOBUILD I guess is that I set up the default .mozcfg before I start the build. The mozconfigs I use are in that repo, but I will add that bit of info for explorers.

comment:87 Changed 3 years ago by kencu (Ken)

Re: my TigerPorts repo....

MacPorts has lots of ports, often maintained by different people, and lots of ideas how things should be done to satisfy the overall needs of the whole.

When I update my Tiger machines, it's very common for there to be build errors -- it's Tiger after all. After all these years I can usually fix the issues quickly (it's often the same issues in different clothing) but then getting these fixes into MacPorts is a different story.

So I hump them up into TigerPorts so I remember what I did, finish updating all my ports, and then, as time goes by, I look over what I have done and try to see what might be able to be sold as a fix into the main MacPorts repo. Those that I can sell, I do.

There is often lots of pushback, for all kinds of reasons, sometimes technical, sometimes practical, and sometimes rather idiosyncratic and unpredictable. It's all good -- my fixes are there in TigerPorts for me and anyone who wants them, and what I can sell to MacPorts, I do.

By now people more or less trust me not to break things, and if I put a little:

platform darwin 8 {
    my_Tiger_fixes
}

down at the bottom of a Portfile, most nobody minds too much any more.

comment:88 in reply to:  84 ; Changed 3 years ago by kencu (Ken)

Replying to leavenode:

That's really handy to know. Once the software has been copied into destination directory, presumably it's just a case of

sudo port -v install portname

just like any other installation?

I believe so. To be honest, it has been a while since I did this manually (I set up a sharing site where I have all my software centrally shared now), and so I should just try it once to make sure it still works like that.

But that is how I recall doing it.

comment:89 in reply to:  88 Changed 3 years ago by leavenode

I ought to be able to make that HOWTO work manually. Scripting it so it runs automatically is still a little above my pay grade. But I'm used to scp'ing files around my network, and I done the

git clone github.com/foo/foobar
./configure
make
make install

dance more times than I remember now. I'm basically a hobbyist who jumped ship from the M$ world to Linux back in the noughties, and haven't looked back. The ppc Macs are a relatively new obsession - I already have three, and I'm currently bidding on a G4 Powerbook, so I'm already in way deeper than I originally planned...

Replying to kencu:

Replying to leavenode:

That's really handy to know. Once the software has been copied into destination directory, presumably it's just a case of

sudo port -v install portname

just like any other installation?

I believe so. To be honest, it has been a while since I did this manually (I set up a sharing site where I have all my software centrally shared now), and so I should just try it once to make sure it still works like that.

But that is how I recall doing it.

comment:90 in reply to:  85 Changed 3 years ago by leavenode

I'm not a member of that forum but I seem to find myself lurking there a lot. Those guys really love their old Macs and are thirsty for knowledge about how to keep them running.

Replying to kencu:

I didn't know about that thread you referenced. Perhaps I will answer some of the questions in there. I use gcc7/libgc7 7.4.0 still because gcc7 7.5.0 introduced a new bug that makes a lot of software crash. It's a bit technical to explain but it has to do with an interaction between the system libstdc++ and the one installed by libgcc 7.5.0. Upstream thinks they have a fix for this that might work.

comment:91 in reply to:  85 Changed 3 years ago by leavenode

I've pretty much decided not to get too hung up on using these old machines for web browsing as that seems a losing battle now, the way the web is advancing. Nice to have some web capability though, so I should look at building TFF at some point. A good exercise for it's own sake.

And of course always possible to X-forward a browser window from one of my Linux boxes, and then there are the web rendering proxies which I haven't really looked at yet.

But if I want to download a file onto one of my G4s, most often I just ssh in and wget the file. wget is so much more reliable anyway.

Replying to kencu:

I have been building TenFourFox since 2018. One of the other regulars around here, Riccardo, and I sorted out the patches to make it build as Intel on a Tiger i386 machine over the Christmas holidays back then. I find it is very simple to build, but takes time.

I wrote up a Portfile to automatically build it for MacPorts <https://github.com/kencu/tenfourfox-macports>, but -- it was a big huge 6 hour build and in the end I just built it every time there was a new version and uploaded it to the TenFourFox sourceforge repo.

Here's how I build it on Intel from their default github repo:

<https://github.com/kencu/tenfourfox/blob/FPR32branch/HOWTOBUILD>

Building it on 10.5 PPC is a bit easier because you don't need clang-3.4 and yasm, or any patches.

I didn't know about that thread you referenced. Perhaps I will answer some of the questions in there. I use gcc7/libgc7 7.4.0 still because gcc7 7.5.0 introduced a new bug that makes a lot of software crash. It's a bit technical to explain but it has to do with an interaction between the system libstdc++ and the one installed by libgcc 7.5.0. Upstream thinks they have a fix for this that might work.

Last edited 3 years ago by leavenode (previous) (diff)

comment:92 Changed 3 years ago by leavenode

libgcc7 built with no issue. Got as far as gcc7 itself this time, and then it failed with the exact same error. I've port cleaned, rebooted and started building gcc7 over. Let's see if it works this time. If it fails again, I'll pull a version from one of my other Tiger boxes like you suggested.

Note: See TracTickets for help on using tickets.