[M3devel] Help finding CM3 compiler for Linux?

Mika Nystrom mika at async.caltech.edu
Thu Apr 2 00:25:25 CEST 2009


Actually I think that the thing that has caused me the most problems
in the past is that the -min and the -src-all get out of sync, since
the binary bootstrapping dists are often not distributed (for size
reasons?) with full source archives from exactly the same date.  So
when you try to build src-all with the binary bootstrap, something
goes wrong.  It's the whole... ok I need a binary install (since
it's a real compiler), but now I have to bootstrap everything.  And
then the bootstrap turns out not to be 100% compatible with the
compiler sources, libraries, some little detail in m3tk, ...

Another way of saying this is "Isn't CM3 way overdue for a 'release'?"

    Mika

Jay writes:
>
>Thank you Mika. There is a cm3.cfg file, but it had a small bug.
> Actually if you look the cm3.cfg file was probably a mere one line that includes LINUXLIBC6. That is probably overly confusing for anyone trying to understand how it works.
> 
>If you repeat the experiment with the 5.7.1 archives you should find it easier.
>  The not easy cheat is to take cm3cfg.common from current source tree.
> 
>If you repeat it with a NOT yet existing archive that I have in mind, even easier, however not for all platforms -- i.e. no need to set LD_LIBRARY_PATH, on platforms that support $ORIGIN, but again, not yet. 
>NT386 is already easy this way, since the .dlls are in the bin directory and that is searched; that is NT386-specific.
> 
>I also need to get m3gdb and cm3ide into it.
> 
>> It seems to me it would be quite easy to package this up, maybe even
>> with cminstall? That would be easiest I think, to cminstall the whole
>
>I deliberately don't.
>I find cminstall not very worthwhile.
>Try the 5.7.1 archive and see what you think?
> 
>What you are saying I guess is you like the "one level archive" instead of the usual "two level". Agreed. One level can be easily achieved and have cminstall do a copy instead of untargz. But I also find cmin
>stall not all that worthwhile (as I've said..).
> 
> 
> - Jay
>
>----------------------------------------
>> To: jay.krell at cornell.edu
>> CC: m3devel at elegosoft.com
>> Subject: Re: [M3devel] Help finding CM3 compiler for Linux?
>> Date: Wed, 1 Apr 2009 09:59:45 -0700
>> From: mika at async.caltech.edu
>>
>>
>> I have to say that once I figured out what I needed to do, using
>> Jay's distributions was easy---easier than I'm used to with CM3.
>>
>> All I had to do was: untar the -std dist (forget the min one).
>>
>> Set PATH and LD_LIBRARY_PATH
>>
>> And then---the mysterious part, which takes more than passing knowledge
>> of how CM3 works---providing a cm3.cfg file, which doesn't seem to be
>> provided at all by Jay's archive.
>>
>> It seems to me it would be quite easy to package this up, maybe even
>> with cminstall? That would be easiest I think, to cminstall the whole
>> dist rather than cminstalling just the -min and then making people build
>> their own compiler, libraries, and demo apps...
>>
>> Mika
>>
>> Jay writes:
>>>--_bffd762c-5e48-4bab-ae69-e6ec348c2ed8_
>>>Content-Type: text/plain; charset="iso-8859-1"
>>>Content-Transfer-Encoding: quoted-printable
>>>
>>>
>>>Olaf=2C in the LINUXLIBC6 configuration=2C try putting --32 on the as/gas i=
>>>nvocations.
>>>
>>>You mentioned --32 on cm3=2C but I wonder if you meant -m32 on cm3.
>>>
>>> cm3 -m32=20
>>>
>>> as --32=20
>>>
>>>=20
>>>
>>>or check the man pages or help. They aren't consistent=2C for more reasons =
>>>than shown here (e.g. MIPS has -mabi64=2C and I think AIX has something els=
>>>e=2C and HP-UX gcc supports none of these -- no bi-arch support).
>>>
>>>=20
>>>
>>>> probably be easiest to use a real 32 bit system and start from 5.4.0
>>>> again.
>>>
>>>
>>>Using any current system should be plenty easy too.
>>>
>>>e.g. the distributions I put up. :)
>>>
>>>=20
>>>
>>>AMD64_LINUX should be a good starting point=2C but I haven't tried it in a =
>>>bit.
>>>
>>>=20
>>>
>>>I should be able to build a current LINUXLIBC6 very very soon.
>>>
>>>I guess I can install FreeBSD 7.1..which I'd been meaning to anyway to test=
>>> a switch to the "new" Unix *.i3 files.
>>>
>>>=20
>>>
>>>I'll be using python/make-dist.py though.
>>>
>>>I do need to get more packages into it though=2C e.g. cm3ide and m3gdb.
>>>
>>>=20
>>>
>>> - Jay
>>>=20
>>>> Date: Wed=2C 1 Apr 2009 11:11:53 +0200
>>>> From: wagner at elegosoft.com
>>>> To: m3devel at elegosoft.com
>>>> CC: mand at elego.de=3B m3-support at elego.de
>>>> Subject: Re: [M3devel] Help finding CM3 compiler for Linux?
>>>>=20
>>>> Quoting Mika Nystrom :
>>>>=20
>>>>>
>>>>> Is there any documentation for this format beyond what you just
>>>>> wrote? Where?
>>>>=20
>>>> Well=2C yes=2C that's the problem with these kinds of archives:
>>>>=20
>>>> (1) they're not well tested and
>>>> (2) there's no documentation user's can rely on
>>>>=20
>>>> This doesn't mean that I disapprove or want to criticise the contributors=
>>>=2C
>>>> but an official well-documented release with installation notes etc.
>>>> has some advantages. Unfortunately=2C the official releases are really
>>>> outdated now.
>>>>=20
>>>> I succeeded in building current AMD64_LINUX and FreeBSD4 installations
>>>> on our servers for d5.7.1 tonight and was able to build archives for
>>>> FreeBSD binaries and sources=2C but the tooling failed for AMD64_KINUX
>>>> due to changed and missing configuration files. I'll need to have a
>>>> closer look at that=2C some extensions seem to be needed. Anybody who
>>>> feels he can do that faster than me is of course encouraged (I'll have
>>>> little time as usual :-/).
>>>>=20
>>>> It may also turn out to be difficult to produce LINUXLIBC6 binaries=2C
>>>> as birch and other Elego servers are now 64 bit machines=2C and trying
>>>> to use current CM3 with --32 produced lots of assembler errors about
>>>> unsupported instructions on this architecture. As the old installation
>>>> on birch seems to be gone without a chance of being restored=2C it will
>>>> probably be easiest to use a real 32 bit system and start from 5.4.0
>>>> again.
>>>>=20
>>>> Anybody who wants to help should be able to build the binary
>>>> archives for LINUXLIBC with cm3/scripts/make-bin-dist-min.sh
>>>> easily and upload them to birch at
>>>>=20
>>>> /var/www/modula3.elegosoft.com/cm3/uploaded-archives
>>>>=20
>>>> My guess is that tinderbox will take some time to run smoothly again=2C
>>>> as it was highly customized=2C and I'm not sure if these customizations
>>>> survied the crash.
>>>>=20
>>>> Please stay tuned and thanks for all your patience=2C
>>>>=20
>>>> Olaf
>>>> --=20
>>>> Olaf Wagner -- elego Software Solutions GmbH
>>>> Gustav-Meyer-Allee 25 / Geb=E4ude 12=2C 13355 Berlin=2C Germany
>>>> phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 9=
>>>5
>>>> http://www.elegosoft.com | Gesch=E4ftsf=FChrer: Olaf Wagner | Sitz: Berli=
>>>n
>>>> Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214=
>>>194
>>>>=20
>>>
>>>--_bffd762c-5e48-4bab-ae69-e6ec348c2ed8_
>>>Content-Type: text/html; charset="iso-8859-1"
>>>Content-Transfer-Encoding: quoted-printable
>>>
>>>
>>>
>>>
>
>
>>>
>>>
>>>Olaf=2C in the LINUXLIBC6 configuration=2C try putting --32 on the as/gas i=
>>>nvocations.
>
>>>You mentioned --32 on cm3=2C but I wonder if you meant -m32 on cm3.
>
>>> =3Bcm3 -m32 
>
>>> =3Bas --32 
>
>>> =3B
>
>>>or check the man pages or help. They aren't consistent=2C for more reasons =
>>>than shown here (e.g. MIPS has -mabi64=2C and I think AIX has something els=
>>>e=2C and HP-UX gcc supports none of these -- no bi-arch support).
>
>>> =3B
>
>>> =3B>=3B probably be easiest to use a real 32 bit system and start fr=
>>>om 5.4.0
> =3B>=3B again.
>
>
>>>Using any current system should be plenty easy too.
>
>>>e.g. the distributions I put up. :)
>
>>> =3B
>
>>>AMD64_LINUX should be a good starting point=2C but I haven't tried it in a =
>>>bit.
>
>>> =3B
>
>>>I should be able to build a current LINUXLIBC6 very very soon.
>
>>>I guess I can install FreeBSD 7.1..which I'd been meaning to anyway to test=
>>> a switch to the "new" Unix *.i3 files.
>
>>> =3B
>
>>>I'll be using python/make-dist.py though.
>
>>>I do need to get more packages into it though=2C e.g. cm3ide and m3gdb.
>
>>> =3B
>
>>> =3B- Jay
> =3B
>>=3B Date: Wed=2C 1 Apr 2009 11:11:53 +0200<=
>>>BR>>=3B From: wagner at elegosoft.com
>>=3B To: m3devel at elegosoft.com>>>>=3B CC: mand at elego.de=3B m3-support at elego.de
>>=3B Subject: Re: [M3=
>>>devel] Help finding CM3 compiler for Linux?
>>=3B 
>>=3B Quoting Mi=
>>>ka Nystrom <=3Bmika at async.caltech.edu>=3B:
>>=3B 
>>=3B>=3B<=
>>>BR>>=3B>=3B Is there any documentation for this format beyond what you=
>>> just
>>=3B>=3B wrote? Where?
>>=3B 
>>=3B Well=2C yes=2C th=
>>>at's the problem with these kinds of archives:
>>=3B 
>>=3B (1) the=
>>>y're not well tested and
>>=3B (2) there's no documentation user's can =
>>>rely on
>>=3B 
>>=3B This doesn't mean that I disapprove or want to=
>>> criticise the contributors=2C
>>=3B but an official well-documented re=
>>>lease with installation notes etc.
>>=3B has some advantages. Unfortuna=
>>>tely=2C the official releases are really
>>=3B outdated now.
>>=3B =
>>>
>>=3B I succeeded in building current AMD64_LINUX and FreeBSD4 install=
>>>ations
>>=3B on our servers for d5.7.1 tonight and was able to build ar=
>>>chives for
>>=3B FreeBSD binaries and sources=2C but the tooling failed=
>>> for AMD64_KINUX
>>=3B due to changed and missing configuration files. =
>> I'll need to have a
>>=3B closer look at that=2C some extensions seem t=
>>>o be needed. Anybody who
>>=3B feels he can do that faster than me is o=
>>>f course encouraged (I'll have
>>=3B little time as usual :-/).
>>=
>>>=3B 
>>=3B It may also turn out to be difficult to produce LINUXLIBC6 b=
>>>inaries=2C
>>=3B as birch and other Elego servers are now 64 bit machin=
>>>es=2C and trying
>>=3B to use current CM3 with --32 produced lots of as=
>>>sembler errors about
>>=3B unsupported instructions on this architectur=
>>>e. As the old installation
>>=3B on birch seems to be gone without a ch=
>>>ance of being restored=2C it will
>>=3B probably be easiest to use a re=
>>>al 32 bit system and start from 5.4.0
>>=3B again.
>>=3B 
>>=3B=
>>> Anybody who wants to help should be able to build the binary
>>=3B arc=
>>>hives for LINUXLIBC with cm3/scripts/make-bin-dist-min.sh
>>=3B easily =
>>>and upload them to birch at
>>=3B 
>>=3B /var/www/modula3.elegosoft=
>>>.com/cm3/uploaded-archives
>>=3B 
>>=3B My guess is that tinderbox =
>>>will take some time to run smoothly again=2C
>>=3B as it was highly cus=
>>>tomized=2C and I'm not sure if these customizations
>>=3B survied the c=
>>>rash.
>>=3B 
>>=3B Please stay tuned and thanks for all your patien=
>>>ce=2C
>>=3B 
>>=3B Olaf
>>=3B -- 
>>=3B Olaf Wagner -- eleg=
>>>o Software Solutions GmbH
>>=3B Gustav-Meyer-Allee 25 / Geb=E4ude 12=2C=
>>> 13355 Berlin=2C Germany
>>=3B phone: +49 30 23 45 86 96 mobile: +49 17=
>>>7 2345 869 fax: +49 30 23 45 86 95
>>=3B http://www.elegosoft.com | Ges=
>>>ch=E4ftsf=FChrer: Olaf Wagner | Sitz: Berlin
>>=3B Handelregister: Amts=
>>>gericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194
>>=3B 
>>>dy>
>>>=
>>>
>>>--_bffd762c-5e48-4bab-ae69-e6ec348c2ed8_--



More information about the M3devel mailing list