Oberon Community Platform Forum

Development => General => Topic started by: soren renner on August 28, 2012, 10:45:43 PM



Title: OMG the compiler is like 5 times faster now!
Post by: soren renner on August 28, 2012, 10:45:43 PM
UnixAos from the ethz repository, which i mirror at https://code.google.com/p/ethz-oberon-repository-mirror/ , used to take 5 minutes and some seconds to recompile the whole system.

Now it compiles in 51 seconds.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 02, 2012, 02:17:31 PM
OnPulling();

EDIT: I forgot that I've moved to Linux permanently. How to install from this pulled repository? I've created aos.linux executable but no idea how to build and install the whole UnixAOS :-[


Title: Re: OMG the compiler is like 5 times faster now!
Post by: gfeldm on September 03, 2012, 01:53:10 PM
Creating the system from the sources is described in UnixAos. Please look at

  Docu -> UnixAos Build.

If you want to create a new executable 'aos.linux' make sure to create it as a
32-bit binary even if you want to run it on a 64-bit system. A 64-bit binary wouldn't
work! Fortunately a new executable is normally not needed.

-- Günter


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 03, 2012, 03:54:15 PM
OK, now I have:

aos.linux
source -> ../trunk/source
Tools -> Unix/buildtools
Unix -> ../trunk/UnixAos

upon executing aos.linux, I got:
Kernel: Initialized and started.
UnixFiles.Initialize: environment variable AOSPATH not defined

Assuming AOSPATH is this directory, I add and export the environment variable. Now I got:
Aos BootLoader: boot file LinuxAosCore not found

Do I need a previously working system? I already have one though from UnixAOS downloaded from:
http://www.informatik.uni-bremen.de/~fld/UnixAos/rev.4878/
If it's required, how can I use this existing system to build the new one?


Title: Re: OMG the compiler is like 5 times faster now!
Post by: soren renner on September 03, 2012, 05:04:00 PM
Start aos. Docu main menu; UnixAos Build button. Follow the instructions.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: gfeldm on September 03, 2012, 05:14:30 PM
It is not necessary but much easier to have LinuxAos installed before.

Please have a look into the start script 'aos' or it's template './system/aos.templ' in the torball LinuxAos.tgz.

The environment variable AOSPATH needs at least the following entries:
     1)  "." the current working directory
     2)  "installdir/obj"  contains LinuxAosCore and *.Obj of the system
     3)  "installdir/system" all the other files *.Text, *.png, ...
     4)  "installdir/fonts" the font files.

In A2 and WinAOS the files of 2, 3 and 4 all reside in the same directory. You can do that for
UnixAos as well but I separated them for easier maintenance.

There is also another environment variable AOSCONFIG for supplying boot parameters. The parameters
considered by UnixAos are documented in the script aos.

-- Günter


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 04, 2012, 07:44:04 AM
Quote
Start aos. Docu main menu; UnixAos Build button. Follow the instructions.
I've done that using my previously installed UnixAOS, and these:
Quote
OK, now I have:

aos.linux
source -> ../trunk/source
Tools -> Unix/buildtools
Unix -> ../trunk/UnixAos
are the result of following the first part of the instructions. Now this:
Quote
Aos BootLoader: boot file LinuxAosCore not found
is what happens when I want to continue the next part because it requires aos to execute first (how can I execute Release XXX ~ when I'm not in it?). Do you see where my problem is now?

Quote
Please have a look into the start script 'aos' or it's template './system/aos.templ' in the torball LinuxAos.tgz.

The environment variable AOSPATH needs at least the following entries:
     1)  "." the current working directory
     2)  "installdir/obj"  contains LinuxAosCore and *.Obj of the system
     3)  "installdir/system" all the other files *.Text, *.png, ...
     4)  "installdir/fonts" the font files.

In A2 and WinAOS the files of 2, 3 and 4 all reside in the same directory. You can do that for
UnixAos as well but I separated them for easier maintenance.

There is also another environment variable AOSCONFIG for supplying boot parameters. The parameters
considered by UnixAos are documented in the script aos.
OK, I'll try tonight.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 06, 2012, 04:36:34 PM
@gfeldm:
OK, your instruction seems to be from existing installation. I'll make it direct and step-by-step.
First question: How do I generate LinuxAosCore? Assume that I don't have UnixAOS previously installed and the only executable I have is aos.linux. I started to think that the system is designed to be bootstrapped, so I'll need an existing one nevertheless, but that's another case.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: gfeldm on September 07, 2012, 02:07:31 PM
To bootstrap UnixAos you need at least a running Aos system (A2, WinAos or UnixAos). The programs
involved by the bootstrap are the release builder (creates the CompileCommand.Tool), the compiler
(for compiling the system sources) and the linker for creating the statically linked LinuxAosCore.

You find the instructions how to do it in the aos repository at ETHZ:  aos/trunk/source/UnixAos.Tool

If you have UnixAos installed you open that tool by clicking  Docu -> UnixAos Build.

-- Guenter



Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 08, 2012, 08:21:57 AM
OK, now I see it. So, to update, from my existing installation, I need to to go to the freshly pulled repo, and executes the instructions from there. I haven't read any further after the stopper point, I hope there's an instruction to update the existing installation as well...


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 08, 2012, 10:32:58 PM
Update:

Release.Build LinuxAOS executed and generates CompileCommand.Tool, executing the tool I end up with:
Quote
SystemVersion.Mod error: failed to open
Indeed, the file seems to be missing (or obsolete). I try removing the file and another .Mod is missing (Unix.StdIO). Now if I try to remove it as well the compilation stops with the following:
Quote
Unix.Traps.Mod@645      error: could not import StdIO
Unix.Traps.Mod  error: A2.Traps could not be compiled (checker errors).
I can't continue from here.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: gfeldm on September 09, 2012, 02:53:47 PM
Looks like you are working with an incomplete copy of the svn repository.
Both files you are missing should be there.

Unix.StdIO.Mod got appended in rev. 4619 (1.3.2012)
SystemVersion.Mod got appended in rev. 4662 (30.3.2012)

The command 'svn update' should update your copy to revision >= 4918.

--Guenter


Title: Re: OMG the compiler is like 5 times faster now!
Post by: schorsch on September 09, 2012, 05:53:14 PM
Sounds like an impressive progress has been done. Is there any explanation, what is a cause of this improvement?


Title: Re: OMG the compiler is like 5 times faster now!
Post by: soren renner on September 09, 2012, 07:38:44 PM
No, schorsch, this thread began as a passive-aggressive means to elicit precisely the information to which you have alluded.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 10, 2012, 09:41:57 AM
Quote
Looks like you are working with an incomplete copy of the svn repository.
Both files you are missing should be there.

Unix.StdIO.Mod got appended in rev. 4619 (1.3.2012)
SystemVersion.Mod got appended in rev. 4662 (30.3.2012)

The command 'svn update' should update your copy to revision >= 4918.
OK, I'll try updating. Btw, I'm using the mirrored repo: https://code.google.com/p/ethz-oberon-repository-mirror/


Title: Re: OMG the compiler is like 5 times faster now!
Post by: soren renner on September 10, 2012, 02:48:20 PM
At last! Triumph! Someone has found the mirror useful! You, sir, have made this a special day.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 10, 2012, 04:47:38 PM
But err... the mirror seems incomplete, I tried hg pull to check for the missing files but I get nothing. SystemVersion.Mod and Unix.StdIO.Mod seem indeed missing from the mirror.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 14, 2012, 03:43:47 PM
I scan all over the Changes logs, and found no Add entries, only Modify, so I guess those new files aren't added.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: soren renner on September 15, 2012, 10:20:30 PM
Will fix. Current googlecode bug prevents hg push. May move repo to github.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 16, 2012, 01:25:34 PM
Or bitbucket. Actually, anything that supports mercurial is ok for me. I've fallen in love with it :)


Title: New Mirror
Post by: soren renner on September 20, 2012, 10:25:47 PM
https://github.com/harrisonpartch/ethzoberonmirror

Please review and comment.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 21, 2012, 05:20:56 PM
Seems good, but should you have .hg there as well? Since you're using git, I don't think mercurial files are required.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: soren renner on September 21, 2012, 11:57:08 PM
Everyone, according to an adage, is a critic; your comment hardly stands as a counterexample. In my defense I will simply mention that if you clone the repository and look at it in the normal way files and directories beginning with a "." are hidden from your sight and will not anger you.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 22, 2012, 05:23:13 AM
But it will be downloaded anyway, eating up around 250MB...

Btw, the repo is complete this time, I can bootstrap now. I got 5m 4s instead of 51s though (still MUCH faster than any mainstream OS), my system is core i3 2100 3.2GHz, 4 GB of RAM, Kubuntu 12.04.


Title: Re: OMG the compiler is like 5 times faster now!
Post by: Bernhard T. on September 22, 2012, 01:08:46 PM

EDIT: I forgot that I've moved to Linux permanently. How to install from this pulled repository? I've created aos.linux executable but no idea how to build and install the whole UnixAOS :-[

Check Release.Tool (I used it to build the CD under WinAos) and - if successfull - please, please update the Wiki http://www.ocp.inf.ethz.ch/wiki/Development/Builds ...
--
  Bernhard


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 22, 2012, 03:30:03 PM
Quote
Check Release.Tool (I used it to build the CD under WinAos) and - if successfull - please, please update the Wiki http://www.ocp.inf.ethz.ch/wiki/Development/Builds ...
1. Update with what?
2. I have no permission to update...


Title: hg history in git repo
Post by: soren renner on September 22, 2012, 06:10:22 PM
it was useless and has been removed


Title: Re: OMG the compiler is like 5 times faster now!
Post by: Bernhard T. on September 24, 2012, 02:07:20 PM
Quote
Check Release.Tool (I used it to build the CD under WinAos) and - if successfull - please, please update the Wiki http://www.ocp.inf.ethz.ch/wiki/Development/Builds ...
1. Update with what?
2. I have no permission to update...

1. the Information how to do it, I guess that you have to modify some of the commands ...

2. Apply for a password (see http://www.ocp.inf.ethz.ch/wiki/OCP/Home#toc3) ...


Title: Re: OMG the compiler is like 5 times faster now!
Post by: leledumbo on September 24, 2012, 03:23:51 PM
Quote
1. the Information how to do it, I guess that you have to modify some of the commands ...
The wiki page doesn't seem to contain any UnixAOS information, so a copy from UnixAOS Build document should be fine. Honestly, I just follow that document and everything works smoothly (provided the archive is complete).
Quote
2. Apply for a password (see http://www.ocp.inf.ethz.ch/wiki/OCP/Home#toc3) ...
I've done that about 3 times previously, and I got no reply. Could you help?