Shop OBEX P1 Docs P2 Docs Learn Events
lib1funcs.asm won't compile. — Parallax Forums

lib1funcs.asm won't compile.

Heater.Heater. Posts: 21,230
edited 2012-12-04 18:09 in Propeller 1
I just cloned propgcc (rev. 3a2a070bb63b of 24th Nov) and rebuilt the performance branch on Debian Squeeze with gcc (Debian 4.4.5-8) 4.4.5

The build failed when gcc/gcc/config/propeller/lib1funcs.asm would not assemble. Turns out gas does not like underscores in hex constants. Here is the diff I made to fix it:
diff -r 3a2a070bb63b gcc/gcc/config/propeller/lib1funcs.asm
--- a/gcc/gcc/config/propeller/lib1funcs.asm    Sat Nov 24 09:54:35 2012 -0400
+++ b/gcc/gcc/config/propeller/lib1funcs.asm    Tue Dec 04 13:37:59 2012 +0200
@@ -147,15 +147,15 @@
 
 '-------------------- constant values -----------------------------------------
 
-Mask23                  long    $007F_FFFF
-Bit28                   long    $1000_0000
+Mask23                  long    $007FFFFF
+Bit28                   long    $10000000
 
 
 endfloat
 
                        .section .kernel
                        .global __Bit31
-__Bit31                 long    $8000_0000
+__Bit31                 long    $80000000
 
                        .compress default
                        .text


Also, as this was a new install of Debian I had to install libncurses5-dev before propgcc would build.

Comments

  • ersmithersmith Posts: 6,093
    edited 2012-12-04 09:55
    That's weird... I don't have any problem building that file (I just double checked). The Propeller version of gas should be able to handle underscores in hex constants. Is it possible that your Propeller binutils are out of date? I'm not sure when we added underscore processing, but I think it was quite a while ago.

    Eric
  • Heater.Heater. Posts: 21,230
    edited 2012-12-04 10:22
    Eric,
    What Propeller binutils?
    That was the first clone and build of propgcc on a new install of Debian. The machine had never seen propgcc before.
  • jazzedjazzed Posts: 11,803
    edited 2012-12-04 14:20
    The binutils is the toolchain that we build from scratch and contains such wonders as ld, gas, and objcopy. I remember seeing something like this recently with Debian Wheezy or Mint. I thought it was resolved though. I was able to build on Mint and I think Daniel was able to build on Wheezy.
  • ersmithersmith Posts: 6,093
    edited 2012-12-04 15:08
    Heater. wrote: »
    Eric,
    What Propeller binutils?
    That was the first clone and build of propgcc on a new install of Debian. The machine had never seen propgcc before.

    binutils is included in the propgcc repository, so if you did a fresh checkout and build you should have gotten the most recent version. I don't understand why your build would be any different. If I get a chance I'll try downloading Debian and see if there's anything unusual in that environment.

    Eric
  • Heater.Heater. Posts: 21,230
    edited 2012-12-04 18:09
    That's what I thought. Everything here is a shiny new check out so I would think I only have the one propeller binutils possibility.

    The big change here is that I now have Squeeze instead of my old Lenny. It's a brand new install as my old disk committed suicide last week.
Sign In or Register to comment.