Recent

Author Topic: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)  (Read 22434 times)

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1149
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #45 on: April 16, 2016, 09:40:12 am »
I have updated fpc(laz)up, to give some more info in case of a SVN error.
Also, the aarch64 bootstrap compiler was updated !

pijno

  • New member
  • *
  • Posts: 5
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #46 on: April 22, 2016, 04:12:07 am »
hi
i am trying to get the trunk installed on an pine64 using ubuntu
so tried to start with the aarch64 version of fpcup

have setup everything git, subversion am running in an terminal as sudo su
download fpclazup through git and issued

./fpclazup_linux_aarch64 --fpcURL="trunk" --lazURL="trunk" --getfullrepo --verbose --installdir=/home/ubuntu/fpctrunk

then i get the next error

fpclazup: info: Going to download /tmp/TMP00000.tmp from URL: https://github.com/LongDirtyAnimAlf/Reiniero-fpcup/raw/master/bin/aarch64-linux/aarch64-linux-ppca64
fpclazup: info: Download http(s) result: 500
fpclazup: ERROR: Error getting/extracting bootstrap compiler. Archive: /tmp/TMP00000.tmp
fpclazup: info: Error running fpcup. Technical details: error executing sequence fpc; line: 2, param: FPC
fpclazup: info: Error running fpcup. Technical details: error executing sequence defaultARM; line: 3, param: fpc
Fpclazup failed.

after that the normal fpcup errors when fpcup is failing

Don Alfredo do you have an idea what is going on with the http 500 error


DonAlfredo

  • Hero Member
  • *****
  • Posts: 1149
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #47 on: April 22, 2016, 06:24:42 am »
Other users have reported the same error.
For the moment, I do not know why the bootstrap compiler will not download.
I will look into it. Has to do with github redirects.

For the moment, a work-around:

Just get the bootstrap compiler by hand and put it into:
/home/ubuntu/fpctrunk/fpcbootstrap

Rename it to : ppca64, and make it excutable.

I hope you will succeed

pijno

  • New member
  • *
  • Posts: 5
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #48 on: April 22, 2016, 09:13:37 am »
tnx don alfredo

workaround is ok now having an running lazarus version 1.7 where the toolbar is working.
First simple compile is working out ok.

pijno

  • New member
  • *
  • Posts: 5
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #49 on: April 23, 2016, 12:59:07 pm »
Hi DonAlfdredo

you mentioned that you compiled mormot with some succes.
If i try to compile demo 04-http client server sample i already get stuck
at the Synopse.inc because of {$ASSMODE INTEL} in the CPU64 section.

Where and how can i change CPU64 settings or how did you achieve
compilling mormot on aarch64

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1149
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #50 on: April 23, 2016, 01:23:37 pm »
At the moment, I am (nearly 24/7) busy getting the mORMot ready for aarch64.

I did already send some patches to the maintainer (Ab).
However, they are not yet included.

If you want, I can upload my version of the mORMot, so that you can continue !

pijno

  • New member
  • *
  • Posts: 5
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #51 on: April 23, 2016, 01:47:41 pm »
That would be nice



pijno

  • New member
  • *
  • Posts: 5
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #53 on: April 23, 2016, 05:47:01 pm »
Demo project-04 Http server is compiling, running and talking with windows client

Tell me where i can help (novice on arm,arm64 , but having some ancient assembly
skill from way back, am an senior professional delphi programmer 20+ year experience on turbo/delphi with intrest in load balance rest servers profesionally).  Am now using indy/datasnap (windows only) in web - rest server that needs to be replaced to move our erp application into the cloud 

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1149
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #54 on: April 24, 2016, 12:41:00 am »
Glad to hear that it works !
ps: I am in the same league as you ... 30+ years pascal and started with assembler on a PDP11. The good old (easy) days ... ;-)

The question is: how much time do you have ... debugging (mORMot) is a very time consuming business.

To enjoy the full power of the mORMot, interface based services are the way to go.
But these services need some (not yet available fully) RTTI, and an invoke method.

I think (I hope) the FPC developers will be willing to cooperate in giving us some extra RTTI for aarch64, if asked for.
They did already for x86, x64 and ARM. Vey usefull.

We (mORMot-fans and developers) have to implement the invoke method.
Have a look at pascalscript:
https://github.com/remobjects/pascalscript
It has already an invoke (comparable with mORMot) for x86, x64 and arm.
See x86.inc, x64.inc and arm.inc.

You could use (and upgrade) your assembler skills by helping develop an arm invoke for mORMot and, eventually, an aarch64 invoke. But it will take some time.

For now, just compile and run mORMot TestSQL3, and you will see where the problems are.
We could  start a new forum thread for mORMot (runnng with FPC/Lazarus) in general, and communicate our results and experiences and applications.