Shop OBEX P1 Docs P2 Docs Learn Events
PropGCC build fails on Ubuntu 13.10 — Parallax Forums

PropGCC build fails on Ubuntu 13.10

SRLMSRLM Posts: 5,045
edited 2014-05-22 01:21 in Propeller 1
I tried building on Ubuntu13.10, and it didn't complete. The tail end of the messages are below, and a full log is attached. The root folder is in /home/user/propgcc/propgcc.
make[3]: Entering directory `/home/user/propgcc/build/binutils/bfd/po'
( if test 'x../../../../propgcc/binutils/bfd/po' != 'x.'; then \
	    posrcprefix='../../../../propgcc/binutils/bfd/'; \
	  else \
	    posrcprefix="../"; \
	  fi; \
	  rm -f SRC-POTFILES-t SRC-POTFILES \
	    && (sed -e '/^#/d' \
	            -e '/^[ 	]*$/d' \
		    -e "s@.*@	$posrcprefix& \\\\@" < ../../../../propgcc/binutils/bfd/po/SRC-POTFILES.in \
		| sed -e '$s/\\$//') > SRC-POTFILES-t \
	    && chmod a-w SRC-POTFILES-t \
	    && mv SRC-POTFILES-t SRC-POTFILES )
( rm -f BLD-POTFILES-t BLD-POTFILES \
	    && (sed -e '/^#/d' \
	            -e '/^[ 	]*$/d' \
		    -e "s@.*@	../& \\\\@" < ../../../../propgcc/binutils/bfd/po/BLD-POTFILES.in \
		| sed -e '$s/\\$//') > BLD-POTFILES-t \
	    && chmod a-w BLD-POTFILES-t \
	    && mv BLD-POTFILES-t BLD-POTFILES )
cd .. \
	  && CONFIG_FILES=po/Makefile.in:po/Make-in \
	     CONFIG_HEADERS= /bin/bash ./config.status
config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing bfd_stdint.h commands
config.status: executing default commands
make[3]: Leaving directory `/home/user/propgcc/build/binutils/bfd/po'
make[3]: Entering directory `/home/user/propgcc/build/binutils/bfd/po'
make[3]: Nothing to be done for `info'.
make[3]: Leaving directory `/home/user/propgcc/build/binutils/bfd/po'
make[3]: Entering directory `/home/user/propgcc/build/binutils/bfd'
make[3]: Nothing to be done for `info-am'.
make[3]: Leaving directory `/home/user/propgcc/build/binutils/bfd'
make[2]: *** [info-recursive] Error 1
make[2]: Leaving directory `/home/user/propgcc/build/binutils/bfd'
make[1]: *** [all-bfd] Error 2
make[1]: Leaving directory `/home/user/propgcc/build/binutils'
make: *** [all] Error 2
binutils make failed.

real	0m25.610s
user	0m14.622s
sys	0m10.610s

This is the STDERR output for the attached logfile:
../../../../propgcc/binutils/bfd/doc/bfd.texinfo:325: unknown command `colophon'
../../../../propgcc/binutils/bfd/doc/bfd.texinfo:336: unknown command `cygnus'
make[3]: *** [bfd.info] Error 1
make[2]: *** [info-recursive] Error 1
make[1]: *** [all-bfd] Error 2
make: *** [all] Error 2

real	0m24.782s
user	0m14.090s
sys	0m10.276s

It looks like colophon and cygnus are missing. I don't know if they were missing in previous versions of Ubuntu (it's always worked, so I've never checked). I've made sure to install all the prereq's mentioned in the Wiki.

Comments

  • SRLMSRLM Posts: 5,045
    edited 2013-10-25 20:09
  • SRLMSRLM Posts: 5,045
    edited 2013-10-30 13:04
    I'm able to get the build to go further by updating binutils/bfd/doc/bfd.texinfo with the following
    Change line 325 to @@colophon
    Change line 336 to [email]doc@@cygnus.com[/email]

    To get it to go further you also have to update binutils/ld/ld.texinfo with the same changes.

    Then it gives the following errors:
    Making install in doc
    make[3]: Entering directory `/home/user/propgcc/build/binutils/gas/doc'
    make[4]: Entering directory `/home/user/propgcc/build/binutils/gas/doc'
    make[4]: Nothing to be done for `install-exec-am'.
    restore=: && backupdir=".am$$" && \
    	rm -rf $backupdir && mkdir $backupdir && \
    	if (makeinfo --split-size=5000000 --split-size=5000000 --version) >/dev/null 2>&1; then \
    	  for f in as.info as.info-[0-9] as.info-[0-9][0-9] as.i[0-9] as.i[0-9][0-9]; do \
    	    if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
    	  done; \
    	else :; fi && \
    	if makeinfo --split-size=5000000 --split-size=5000000 -I "../../../../propgcc/binutils/gas/doc" -I "../../../../propgcc/binutils/gas/../libiberty" -I "../../../../propgcc/binutils/gas/../bfd/doc" -I ../../bfd/doc  -I ../../../../propgcc/binutils/gas/doc \
    	 -o as.info `test -f 'as.texinfo' || echo '../../../../propgcc/binutils/gas/doc/'`as.texinfo; \
    	then \
    	  rc=0; \
    	else \
    	  rc=$?; \
    	  $restore $backupdir/* `echo "./as.info" | sed 's|[^/]*$||'`; \
    	fi; \
    	rm -rf $backupdir; exit $rc
    ../../../../propgcc/binutils/gas/doc/c-arc.texi:223: command @bullet not accepting argument in brace should not be on @table line
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:391: command @bullet not accepting argument in brace should not be on @table line
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:392: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:395: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:400: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:405: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:410: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:413: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-cr16.texi:49: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-cr16.texi:51: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-cr16.texi:53: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-cr16.texi:58: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-cr16.texi:63: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-cr16.texi:65: warning: @item missing argument
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:237: @itemx must follow @item
    ../../../../propgcc/binutils/gas/doc/c-score.texi:40: @itemx must follow @item
    ../../../../propgcc/binutils/gas/doc/c-score.texi:52: @itemx must follow @item
    ../../../../propgcc/binutils/gas/doc/c-score.texi:55: @itemx must follow @item
    ../../../../propgcc/binutils/gas/doc/c-score.texi:58: @itemx must follow @item
    ../../../../propgcc/binutils/gas/doc/c-tic54x.texi:113: @code expected braces
    ../../../../propgcc/binutils/gas/doc/c-tic54x.texi:130: @code expected braces
    ../../../../propgcc/binutils/gas/doc/c-tic54x.texi:137: @code expected braces
    ../../../../propgcc/binutils/gas/doc/c-tic54x.texi:313: @code expected braces
    ../../../../propgcc/binutils/gas/doc/c-tic54x.texi:348: @itemx must follow @item
    ../../../../propgcc/binutils/gas/doc/as.texinfo:4329: warning: node `Byte' is next for `Bundle directives' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/as.texinfo:4385: warning: node `Bundle directives' is prev for `Byte' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/as.texinfo:4393: warning: node `Comm' is next for `CFI directives' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/as.texinfo:4515: warning: node `CFI directives' is prev for `Comm' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:445: warning: node next `ARM-Regs' in menu `ARM-Relocations' and in sectioning `ARM-Neon-Alignment' differ
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:452: warning: node prev `ARM-Neon-Alignment' in menu `ARM-Relocations' and in sectioning `ARM-Regs' differ
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:474: warning: node `ARM-Neon-Alignment' is next for `ARM-Relocations' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:474: warning: node `ARM-Regs' is prev for `ARM-Relocations' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:474: warning: node up `ARM-Relocations' in menu `ARM Syntax' and in sectioning `ARM Floating Point' differ
    ../../../../propgcc/binutils/gas/doc/c-arm.texi:467: node `ARM Floating Point' lacks menu item for `ARM-Relocations' despite being its Up target
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:410: warning: node `i386-Regs' is next for `i386-Mnemonics' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:510: warning: node `i386-Mnemonics' is prev for `i386-Regs' in menu but not in sectioning
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:925: warning: node next `i386-16bit' in menu `i386-Arch' and in sectioning `i386-Bugs' differ
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:977: warning: node next `i386-Bugs' in menu `i386-Notes' and in sectioning `i386-Arch' differ
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:977: warning: node prev `i386-Bugs' in menu `i386-Arch' and in sectioning `i386-16bit' differ
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:998: warning: node next `i386-Arch' in menu `i386-Bugs' and in sectioning `i386-Notes' differ
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:998: warning: node prev `i386-Arch' in menu `i386-16bit' and in sectioning `i386-Bugs' differ
    ../../../../propgcc/binutils/gas/doc/c-i386.texi:1064: warning: node prev `i386-Notes' in menu `i386-Bugs' and in sectioning `i386-Arch' differ
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:448: warning: node next `MIPS Stabs' in menu `MIPS ISA' and in sectioning `MIPS symbol sizes' differ
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:462: warning: node next `MIPS symbol sizes' in menu `MIPS autoextend' and in sectioning `MIPS ISA' differ
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:462: warning: node prev `MIPS symbol sizes' in menu `MIPS ISA' and in sectioning `MIPS Stabs' differ
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:517: warning: node next `MIPS ISA' in menu `MIPS symbol sizes' and in sectioning `MIPS autoextend' differ
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:517: warning: node prev `MIPS ISA' in menu `MIPS Stabs' and in sectioning `MIPS symbol sizes' differ
    ../../../../propgcc/binutils/gas/doc/c-mips.texi:556: warning: node prev `MIPS autoextend' in menu `MIPS symbol sizes' and in sectioning `MIPS ISA' differ
    ../../../../propgcc/binutils/gas/doc/c-ns32k.texi:35: warning: node next `NS32K-Dependent' in menu `SH-Dependent' and in sectioning `PDP-11-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-pdp11.texi:6: warning: node prev `PDP-11-Dependent' in menu `SH64-Dependent' and in sectioning `NS32K-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-score.texi:7: warning: node next `SCORE-Dependent' in menu `Sparc-Dependent' and in sectioning `SH-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-sh.texi:6: warning: node prev `SH-Dependent' in menu `NS32K-Dependent' and in sectioning `SCORE-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-sh64.texi:5: warning: node next `SH64-Dependent' in menu `PDP-11-Dependent' and in sectioning `Sparc-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-sparc.texi:8: warning: node prev `Sparc-Dependent' in menu `SCORE-Dependent' and in sectioning `SH64-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-tilepro.texi:7: warning: node next `TILEPro-Dependent' in menu `V850-Dependent' and in sectioning `Z80-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-z80.texi:7: warning: node prev `Z80-Dependent' in menu `Xtensa-Dependent' and in sectioning `TILEPro-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-vax.texi:7: warning: node `V850-Dependent' is next for `Vax-Dependent' in sectioning but not in menu
    ../../../../propgcc/binutils/gas/doc/c-v850.texi:5: warning: node prev `V850-Dependent' in menu `TILEPro-Dependent' and in sectioning `Vax-Dependent' differ
    ../../../../propgcc/binutils/gas/doc/c-xtensa.texi:9: warning: node `Z80-Dependent' is next for `Xtensa-Dependent' in menu but not in sectioning
    make[4]: *** [as.info] Error 1
    make[4]: Leaving directory `/home/user/propgcc/build/binutils/gas/doc'
    make[3]: *** [install-am] Error 2
    make[3]: Leaving directory `/home/user/propgcc/build/binutils/gas/doc'
    Making install in po
    make[3]: Entering directory `/home/user/propgcc/build/binutils/gas/po'
    make[3]: Nothing to be done for `install'.
    make[3]: Leaving directory `/home/user/propgcc/build/binutils/gas/po'
    make[3]: Entering directory `/home/user/propgcc/build/binutils/gas'
    make[4]: Entering directory `/home/user/propgcc/build/binutils/gas'
    /bin/bash ../../../propgcc/binutils/gas/../mkinstalldirs /opt/parallax/bin
     /bin/bash ./libtool  --mode=install /usr/bin/install -c as-new /opt/parallax/bin/propeller-elf-as
    libtool: install: /usr/bin/install -c as-new /opt/parallax/bin/propeller-elf-as
    /bin/bash ../../../propgcc/binutils/gas/../mkinstalldirs /opt/parallax/propeller-elf/bin
    n=`echo as | sed 's&^&propeller-elf-&'`; \
    	if [ "/opt/parallax/bin/$n" != "/opt/parallax/propeller-elf/bin/as" ]; then \
    	  rm -f /opt/parallax/propeller-elf/bin/as; \
    	  ln /opt/parallax/bin/$n /opt/parallax/propeller-elf/bin/as >/dev/null 2>/dev/null \
    	    || /bin/bash ./libtool --mode=install /usr/bin/install -c as-new /opt/parallax/propeller-elf/bin/as; \
    	else \
    	  true ; \
    	fi
    make[4]: Nothing to be done for `install-data-am'.
    make[4]: Leaving directory `/home/user/propgcc/build/binutils/gas'
    make[3]: Leaving directory `/home/user/propgcc/build/binutils/gas'
    make[2]: *** [install-recursive] Error 1
    make[2]: Leaving directory `/home/user/propgcc/build/binutils/gas'
    make[1]: *** [install-gas] Error 2
    make[1]: Leaving directory `/home/user/propgcc/build/binutils'
    make: *** [install] Error 2
    binutils make install failed.
    
    real	1m38.544s
    user	1m7.390s
    sys	0m25.255s
    
    
  • SRLMSRLM Posts: 5,045
    edited 2013-10-30 14:07
    I'm able to get further by updating the binutils/gas/doc/*.texi files to be the newest version. Next step: clone the GCC repository and fix the problems there.

    svn checkout svn://gcc.gnu.org/svn/gcc/trunk SomeLocalDir
  • SRLMSRLM Posts: 5,045
    edited 2013-10-30 18:20
    Solution
    Ok, as it turns out the easiest solution seems to be to manually downgrade texinfo to 4.13. Make sure that you've removed the current (5.0+) version before continuing.
    wget http://ftp.gnu.org/gnu/texinfo/texinfo-4.13a.tar.gz
    tar -zxvf texinfo-4.13a.tar.gz
    cd texinfo-4.13
    ./configure
    make
    sudo make install
    
    makeinfo --help
    
    The last command should mention the version. Make sure it's 4.13. Next install PropGCC normally.

    Edit: see below for a fix to another bug that pops up.
  • SRLMSRLM Posts: 5,045
    edited 2013-10-30 18:25
    This post details all the fixes that I tried before downgrading. Note that the correct solution is in the post above. This is just for sharing what I tried.

    binutils/bfd/doc/bfd.texinfo:
    Change line 325 to @@colophon
    Change line 336 to [email]doc@@cygnus.com[/email]

    binutils/ld/ld.texinfo
    Same changes (different lines, but at bottom)

    binutils/gas/doc:
    Place all the *.texi files from the binutils main distribution (replace if asked). Make sure that propeller.texi is there!

    gcc/gcc/doc/cppopts.texi
    Change "@itemx --help" to "@item --help"

    The following changes still didn't make it work, but it's where I got to (7.5 minutes into the build):

    gcc/gcc/doc/*
    Get all the files from the main gcc distribution into a temporary storage space. Next, in the Propeller version, do a search for "propeller" in:
    -extend.texi
    -invoke.texi
    -md.texi
    And replace everything Propeller specific in the matching files in the temp space. Then copy to the Propeller version of gcc/gcc/doc/*.

    Add to gcc/config/pa/som.h around line 267 (after "#define MAX_OFILE_ALIGNMENT 32768")
    /* The SOM linker hardcodes paths into binaries. As a result, dotdots
    must be removed from library prefixes to prevent binaries from depending
    on the location of the GCC tool directory. The downside is GCC
    cannot be moved after installation using a symlink. */
    #undef TARGET_ALWAYS_STRIP_DOTDOT
    #define TARGET_ALWAYS_STRIP_DOTDOT true

    Optional (I think):
    gcc/gcc/doc/gcc.texi
    Replace (line 87):

    @item GNU Press
    @tab Website: www.gnupress.org
    @item a division of the
    @tab General: @tex [email]press@@gnu.org[/email] @end tex
    @item Free Software Foundation
    @tab Orders: @tex [email]sales@@gnu.org[/email] @end tex
    @item 51 Franklin Street, Fifth Floor
    @tab Tel 617-542-5942
    @item Boston, MA 02110-1301 USA
    @tab Fax 617-542-2652
    @end multitable


    with

    @item GNU Press
    @tab Website: @uref{http://www.gnupress.org}
    @item a division of the
    @tab General: @email{press@@gnu.org}
    @item Free Software Foundation
    @tab Orders: @email{sales@@gnu.org}
    @item 51 Franklin Street, Fifth Floor
    @tab Tel 617-542-5942
    @item Boston, MA 02110-1301 USA
    @tab Fax 617-542-2652
  • SRLMSRLM Posts: 5,045
    edited 2013-10-30 19:06
    Note that the build still doesn't finish due to a bug in propgcc/gdb/bfd/bfdio.c. If you don't fix this then you won't have GDB, but you'll still have propeller-elf-gcc, propeller-elf-g++, and propeller-load.

    change line 580 to memset (statbuf, 0, sizeof (*statbuf));

    Source of change: the matching file in
    git clone --branch gdb_7_6-branch git://sourceware.org/git/binutils-gdb.git
  • David BetzDavid Betz Posts: 14,516
    edited 2013-10-31 04:14
    SRLM wrote: »
    Note that the build still doesn't finish due to a bug in propgcc/gdb/bfd/bfdio.c. If you don't fix this then you won't have GDB, but you'll still have propeller-elf-gcc, propeller-elf-g++, and propeller-load.

    change line 580 to memset (statbuf, 0, sizeof (*statbuf));

    Source of change: the matching file in
    git clone --branch gdb_7_6-branch git://sourceware.org/git/binutils-gdb.git
    I found that bug as well when I compiled under the new Xcode compiler for the Macintosh. I was planning on fixing it in the kernel-work branch which will hopefully be merged into the default branch soon.
  • Heater.Heater. Posts: 21,230
    edited 2013-10-31 08:29
    David,

    Oh what? Doesn't Xcode use the Clang/llvm compiler? In that case you have Clang compiling GCC.
    I was kind of wondering if that was even possible the other day as GCC has some odd extensions that it looks like the Clang guys don't want to implement.
  • David BetzDavid Betz Posts: 14,516
    edited 2013-10-31 08:33
    Heater. wrote: »
    David,

    Oh what? Doesn't Xcode use the Clang/llvm compiler? In that case you have Clang compiling GCC.
    I was kind of wondering if that was even possible the other day as GCC has some odd extensions that it looks like the Clang guys don't want to implement.
    It's installed as gcc. If I type gcc at a prompt I get:
    david-betzs-macbook-pro:propgcc.work dbetz$ gcc
    clang: error: no input files
    
    I guess this must be a GCC-compatible version of clang? Anyway, it has no trouble compiling PropGCC other than that I had to disable a bunch of warnings to get it to work with the Mavericks version of Xcode:
    export CFLAGS="\
    -Wno-string-plus-int \
    -Wno-deprecated-declarations \
    -Wno-empty-body \
    -Wno-self-assign \
    -Wno-sometimes-uninitialized"
    
  • Heater.Heater. Posts: 21,230
    edited 2013-10-31 08:59
    David,

    Interesting, I recently discovered that Clang is in really good shape, supports C++11 well and can compile the Linux kernel and almost every package in Debian. (Hmm...thinks, so I probably already knew Clang can compile GCC if I thought about it :))

    Which was a big surprise to me as it seems like only yesterday I heard of Clang and it was nowhere near complete.

    I have been compiling everything I can find with Clang both on x86 and ARM, it works very well and can have much better error reporting, especially when it comes to errors in templated code.

    I'm going to have a go at compiling propgcc with Clang on my Debian box.

    When is the Parallax Propeller C/C++ compiler going to be Clang/llvm based :)
  • David BetzDavid Betz Posts: 14,516
    edited 2013-10-31 09:00
    Heater. wrote: »
    When is the Parallax Propeller C/C++ compiler going to be Clang/llvm based :)
    When you port it? :-)
  • Heater.Heater. Posts: 21,230
    edited 2013-10-31 09:59
    David,
    When you port it? :-)
    Touche.

    On occasion I have peeked at the "Writing an LLVM Backend" document. I can follow along as far as "Create a subclass of the TargetMachine class that describes characteristics of your target machine." soon after that I can feel my brain starting to boil.
  • TorTor Posts: 2,010
    edited 2013-10-31 17:44
    I haven't compiled GCC since back in the 2.x days, or possibly around 3.0x. But back then I built GCC from source all the time. The build process would build GCC three times: First time with the native compiler of the target machine (say, the SunOS C compiler). The second time it was built with the newly compiled GCC. Then it rebuilt itself a third time with the GCC compiler compiled with GCC. Then the buld script did a binary comparision of the GCC executable from the second and third stages. If OK, success. But I don't know if that build process is still part of the sources.

    So back then at least, GCC would have to be compilable by any generic C compiler. But maybe that has changed - I imagine they could easily rely on cross-target compiling these days to get a compiler onto a new machine. If so, they would be free to use GCCisms in the compiler itself. But originally the GCC source was plain portable C.

    -Tor
  • Heater.Heater. Posts: 21,230
    edited 2013-10-31 23:43
    Tor,

    Ah, yes, you are right. Last century I built Linux From Scratch. http://www.linuxfromscratch.org/
    which goes through a similar multi rebuild dance. Of course I was starting from a Linux machine and GCC but the process would have to work when starting off with some other compiler

    Funnily enough I have just been through a similar process but moving away from GCC to Clang. First building the Clang/LLVM compiler with GCC. Then rebuilding Clang using Clang.
  • photomankcphotomankc Posts: 943
    edited 2014-04-22 11:20
    Ok, sorry to resurrect this from the dead but I am trying to build the loader from source on my ARM system using ArchLinux and I'm hitting this issue. The solution of downgrading texinfo does not seem to be feasible for me as I'm getting bogged down in dependency issues when I try to remove the current texinfo-5.2.2. So is there any reasonable workaround that will allow me to complete the compile on this system?
    ../../../../propgcc/binutils/bfd/doc/bfd.texinfo:325: unknown command `colophon'
    ../../../../propgcc/binutils/bfd/doc/bfd.texinfo:336: unknown command `cygnus'
    

    This is the error messages that seem to be at the head of all the rest of the barfing the make command dies with.
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2014-04-22 13:41
    I got so annoyed with special Ubuntu problems that I took my USB hard drive and loaded a copy of Debian on it that boots from the USB port to do compiles.

    I suspect this may not be what you wanted to hear, but it works for me. The computer doesn't have to change the OS (though I did eventually dump Ubuntu entirely)
  • Heater.Heater. Posts: 21,230
    edited 2014-04-22 15:09
    No idea.

    Only have to rant that this sort of thing drives me nuts.

    You are building binutils there, for example, like an assembler and linker or whatever. How about: "No, I don't want any documentation, and for sure as hell I don't want any texinfo package dependency to build that. Just give me the program dammit"

    That texinfo thing has screwed up many a compile recently. And who uses it anyway?
  • photomankcphotomankc Posts: 943
    edited 2014-04-23 07:07
    Heater. wrote: »
    No idea.

    Only have to rant that this sort of thing drives me nuts.

    You are building binutils there, for example, like an assembler and linker or whatever. How about: "No, I don't want any documentation, and for sure as hell I don't want any texinfo package dependency to build that. Just give me the program dammit"

    That texinfo thing has screwed up many a compile recently. And who uses it anyway?


    I can't do much but nod in agreement here. I'm fuzzy on what texinfo is and why I need it to build the single tool I need just to load images onto a Propeller. I do know that so far I've burned way more time just trying to fix this issue/bug then I did in modifying the loader code to do what I needed. This is not a dig at the team working on PropGCC it's more of an overall frustration that I run into time and again when building from source on all the various Linux platforms.


    #make all(cross-fingers..... #%#$)
    an hour or two fiddling
    #make all (cross-fingers..... #$%@@#$!#!!!!!!)
    an hour or two fiddling
    #make all (cross-fin...@$%@$#%@#$%@$%@#$%%@!!!!!!!)
    an hour or two fiddling

    Sometimes you are victorious after a couple cycles, sometimes it's a dead end you never figure out.


    From the previous posts it appears attempts to fix the problem with the 5.2 texinfo are a rabbit-hole that leads to ever-more fixing. Trying to remove texinfo is also a bit of a rabbit-hole because of the package manager on Arch and the fact that it's at the foot of a few dependencies so I have to start ripping out a lot of packages to remove the installed 5.2 version. So right now I'm stuck between a rock and a hard place. Is there a real dependency for building these tools on using texinfo?
  • photomankcphotomankc Posts: 943
    edited 2014-04-23 08:47
    I got so annoyed with special Ubuntu problems that I took my USB hard drive and loaded a copy of Debian on it that boots from the USB port to do compiles.

    I suspect this may not be what you wanted to hear, but it works for me. The computer doesn't have to change the OS (though I did eventually dump Ubuntu entirely)

    It's a possibility I suppose. I could bring up either a Pi running something more friendly to experimentation or setup another BBBlack with another distro to build things with.
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2014-04-23 08:59
    What are 'colophon' and 'cygnus' which are referred to in the PropGCC files?

    The thing is that everything in the Linux world seems to build off of Red Hat/Fedore or Debian as the two primary forks.

    Ubuntu began to get creative in odd and seemingly non-standard ways at about 12.12... mayb e covert tendencies to make a commercial version. And so, I reverted to Debian rather than have to dig and dig for why this or that won't work.

    You are not alone..
    http://www.pclinuxos.com/forum/index.php?topic=116345.0
    http://www.linuxquestions.org/questions/linux-from-scratch-13/make-error-in-compiling-binutils-4175476855/
  • VarsogVarsog Posts: 1
    edited 2014-05-22 01:21
    Texinfo 5.0 and later have issues building binutils due to a behaviour change.

    goto propgcc/binutils/bfd/doc/bfd.texinfo:325, replace "@colophon" into "@@colophon"
    goto propgcc/binutils/bfd/doc/bfd.texinfo:336, replace "@cygnus" into "@@cygnus"

    you will get same problem in "propgcc/binutils/ld/ld.texinfo"
Sign In or Register to comment.