[M3devel] more cm3cg on Raspberry Pi

mika at async.caltech.edu mika at async.caltech.edu
Tue Oct 22 03:34:33 CEST 2013


Jay, you did these changes to the repository, for ARMEL_LINUX, right?

I recompiled everything, but I'm not sure I got the whole configuration
or how to check.  My cm3cg in any case reports as follows:

raspberrypi:/big/home2/mika/2/cm3-cvs/cm3/scripts/python# cm3cg -version
Modula-3 backend (GCC) version 4.7.1 (armv6l-unknown-linux-gnueabihf)
        compiled by GNU C version 4.6.3, GGC heuristics: --param ggc-min-expand=59 --param ggc-min-heapsize=56092
Modula-3 backend (GCC) version 4.7.1 (armv6l-unknown-linux-gnueabihf)
        compiled by GNU C version 4.6.3, GGC heuristics: --param ggc-min-expand=59 --param ggc-min-heapsize=56092
options passed: 
options enabled:  -fauto-inc-dec -fbranch-count-reg -fcommon
 -fdebug-types-section -fdelete-null-pointer-checks -fdwarf2-cfi-asm
 -fearly-inlining -feliminate-unused-debug-types -fexceptions
 -ffunction-cse -fgcse-lm -fgnu-runtime -fident -finline-atomics
 -fira-share-save-slots -fira-share-spill-slots -fivopts
 -fkeep-static-consts -fleading-underscore -fmath-errno
 -fmerge-debug-strings -fmove-loop-invariants -fpeephole
 -fprefetch-loop-arrays -freg-struct-return -fsched-critical-path-heuristic
 -fsched-dep-count-heuristic -fsched-group-heuristic -fsched-interblock
 -fsched-last-insn-heuristic -fsched-rank-heuristic -fsched-spec
 -fsched-spec-insn-heuristic -fsched-stalled-insns-dep -fshow-column
 -fsigned-zeros -fsplit-ivs-in-unroller -fstrict-volatile-bitfields
 -ftrapping-math -ftree-cselim -ftree-forwprop -ftree-loop-if-convert
 -ftree-loop-im -ftree-loop-ivcanon -ftree-loop-optimize
 -ftree-parallelize-loops= -ftree-phiprop -ftree-pta -ftree-reassoc
 -ftree-scev-cprop -ftree-slp-vectorize -ftree-vect-loop-version
 -funit-at-a-time -fvar-tracking -fvar-tracking-assignments
 -fzero-initialized-in-bss -marm -mglibc -mlittle-endian -msched-prolog
 -mvectorize-with-neon-quad

unfortunately this is what happens now....

raspberrypi:/big/home2/mika/2/cm3-cvs/cm3/scripts/python# ./do-pkg.py m3core libm3 buildship
CM3_TARGET=ARMEL_LINUX
export CM3_TARGET
CM3_INSTALL=/usr/local/cm3
export CM3_INSTALL
CM3_ROOT=/big/home2/mika/2/cm3-cvs/cm3
export CM3_ROOT
== package /big/home2/mika/2/cm3-cvs/cm3/m3-libs/m3core ==

 +++ /usr/local/cm3/bin/cm3    -build -DROOT=/big/home2/mika/2/cm3-cvs/cm3 +++
--- building in ARMEL_LINUX ---

ignoring ../src/m3overrides

new source -> compiling RTHooks.i3
cm3cg: sorry, unimplemented: -mfloat-abi=hard and VFP
  m3_backend => 1
m3cc (aka cm3cg) failed compiling: RTHooks.ic
Assembler messages:
Error: can't open RTHooks.is for reading: No such file or directory
  assemble => 1
assembler failed assembling: RTHooks.is

I'm not sure what's up here because it seems to contradict my C flags.

     Mika

Jay K writes:
>Oh=2C sorry=2C here are things to try=0A=
>=0A=
>edit m3-sys/m3cc/src/platforms.quake=0A=
>look for ARMEL_LINUX=2C change the right hand side to arm-linux-gnueabihf=
>=0A=
>=0A=
>and/or in src/m3makefile=2C you want to add -with-hard-float or -with-hardf=
>loat..no=2C wait=2C from your other mail:=0A=
>=0A=
>=A0And=2C really=2C the guide here is what you showed for gcc:=A0=0A=
>=0A=
>=A0Configured with: ../src/configure =A0=0A=
>=A0 =A0 -v \=A0=0A=
>=A0 =A0 ... =A0=0A=
>=A0 =A0 --with-arch=3Darmv6 =A0=0A=
>=A0 =A0 --with-fpu=3Dvfp=A0=0A=
>=A0 =A0 --with-float=3Dhard =A0=0A=
>=A0 =A0 --target=3Darm-linux-gnueabihf=A0=0A=
>=0A=
>=A0One/some/all of those are relevant.=A0=0A=
>=A0You might as well go ahead and throw them all in for now.=A0=0A=
>=0A=
>=A0Hey -- isn't that C backend convenient? :)=A0=0A=
>=0A=
>=0A=
>=A0- Jay=0A=
>=0A=
>----------------------------------------=0A=
>> To: jay.krell at cornell.edu=0A=
>> CC: m3devel at elegosoft.com=0A=
>> Subject: more cm3cg on Raspberry Pi=0A=
>> Date: Fri=2C 18 Oct 2013 18:26:02 -0700=0A=
>> From: mika at async.caltech.edu=0A=
>>=0A=
>> After setting up for soft float=2C I got a lot of these warnings/errors..=
>.=0A=
>>=0A=
>> new source -> compiling RTHeapInfo.m3=0A=
>> RTHeapInfo.ms: Assembler messages:=0A=
>> RTHeapInfo.ms:859: rdhi=2C rdlo and rm must all be different=0A=
>> RTHeapInfo.ms:907: rdhi=2C rdlo and rm must all be different=0A=
>> RTHeapInfo.ms:927: rdhi=2C rdlo and rm must all be different=0A=
>> new source -> compiling RTHeapMap.i3=0A=
>>=0A=
>> This is with the following configuration:=0A=
>>=0A=
>> in /usr/local/cm3 I have the C-generating compiler installed. It seems to=
> mostly work=2C as discussed.=0A=
>>=0A=
>> Then I run boot2.sh=0A=
>>=0A=
>> boot.sh finally ends with the following output=2C which doesn't look quit=
>e right:=0A=
>>=0A=
>> =3D=3D package /big/home2/mika/2/cm3-cvs/cm3/m3-sys/mklib =3D=3D=0A=
>>=0A=
>> +++ /usr/local/cm3/bin/cm3 -build -DROOT=3D/big/home2/mika/2/cm3-cvs/cm3 =
>+++=0A=
>> --- building in ARMEL_LINUX ---=0A=
>>=0A=
>> ignoring ../src/m3overrides=0A=
>>=0A=
>> new source -> compiling Main.m3=0A=
>> -> linking mklib=0A=
>> =3D=3D> /big/home2/mika/2/cm3-cvs/cm3/m3-sys/mklib done=0A=
>>=0A=
>> +++ /usr/local/cm3/bin/cm3 -ship -DROOT=3D/big/home2/mika/2/cm3-cvs/cm3 +=
>++=0A=
>> --- shipping from ARMEL_LINUX ---=0A=
>>=0A=
>> . =3D> /usr/local/cm3/pkg/mklib/ARMEL_LINUX=0A=
>> .M3EXPORTS .M3WEB=0A=
>> ../src =3D> /usr/local/cm3/pkg/mklib/src=0A=
>> Main.m3=0A=
>> . =3D> /usr/local/cm3/bin=0A=
>> mklib=0A=
>> =3D=3D> /big/home2/mika/2/cm3-cvs/cm3/m3-sys/mklib done=0A=
>>=0A=
>> /big/home2/mika/2/cm3-cvs/cm3/m3-sys/m3cggen/ARMEL_LINUX/m3cggen> /big/ho=
>me2/mika/2/cm3-cvs/cm3/m3-sys/m3cc/gcc/gcc/m3cg/m3cg.h=0A=
>> mkdir -p /usr/local/cm3/bin=0A=
>> cp -Pv /big/home2/mika/2/cm3-cvs/cm3/m3-sys/cm3/ARMEL_LINUX/cm3 /usr/loca=
>l/cm3/bin/cm3=0A=
>> Traceback (most recent call last):=0A=
>> File "./upgrade.py"=2C line 72=2C in <module>=0A=
>> reload(pylib) # compiler host type may have changed and need to recompute=
> stuff=0A=
>> File "/big/home2/mika/2/cm3-cvs/cm3/scripts/python/pylib.py"=2C line 650=
>=2C in <module>=0A=
>> if Host.endswith("_NT") or Host =3D=3D "NT386":=0A=
>> AttributeError: 'NoneType' object has no attribute 'endswith'=0A=
>> raspberrypi:/big/home2/mika/2/cm3-cvs/cm3/scripts/python#=0A=
>>=0A=
>> Mika 		 	   		  =



More information about the M3devel mailing list