Recent

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

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3646
  • I like bugs.
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #30 on: April 02, 2016, 10:17:37 am »
I have filed another bug report few days ago.
http://bugs.freepascal.org/view.php?id=29933
Error: if you press enter in the Lazarus source form, the cursor jumps away to the first line in the form.
This took a whole day debugging to get to the error.
But I failed in isolating it into a simple FPC test program.

Wow, you are very motivated to get aarch64 running with FPC/Lazarus.
This bug may be difficult to fix because it does not happen in a small example. Maybe a data alignment issue? Just guessing...
Fortunately Jonas has Odroid (or similar gadget) and can test / fix aarch64.

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #31 on: April 13, 2016, 08:58:58 pm »
Another aarch64 bug solved !
http://bugs.freepascal.org/view.php?id=29933
Many thanks @Jonas.

This also solved the Lazarus toolbar button issue !
All buttons can now be selected normally.

Lazarus now runs 100%, as far as I can test.

However, running the test for SynEdit (SynTest) shows many range check errors and a couple of SigSeg's.
I will try to isolate.

Moving forward !

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3646
  • I like bugs.
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #32 on: April 13, 2016, 10:13:57 pm »
However, running the test for SynEdit (SynTest) shows many range check errors and a couple of SigSeg's.
I will try to isolate.

Good to hear it is moving forward...
It is surprising to have range check errors because Intel x86-64 has been tested so much.
They are both little endian, aren't they? ARM CPUs have selectable endianness but little endian is the default.

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #33 on: April 13, 2016, 10:43:43 pm »
Yep. Both LE.

But if you look into i_linux.pas, you can see the differences (in alignment) between "system_x86_64_linux_info"and "system_aarch64_linux_info".
And also, aarch64 behaves different between Darwin and Linux !

However, with the help (and patience) of Jonas, they will (hopefully) be solved one by one !

New bug filed : http://bugs.freepascal.org/view.php?id=30007

criageek

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #34 on: April 14, 2016, 05:02:37 pm »
Outstanding!  Nice work DonAlfredo!

Rich

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #35 on: April 14, 2016, 08:02:41 pm »
You're welcome.
But you should really thank the bug-fixer !

criageek

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #36 on: April 15, 2016, 03:33:13 am »
Hey DonAlfredo - I just tried to update my Lazarus/FPC installation and got this error:

fpclazup: info: Error running fpcup. Technical details: error executing sequence fpc; line: 4, param: FPC
fpclazup: info: Error running fpcup. Technical details: error executing sequence defaultARM; line: 3, param: fpc
Fpclazup failed.


This is the command I ran from the

Reiniero-fpcup-master/bin/aarch64-linux

folder:

./fpclazup_linux_aarch64 --fpcURL="trunk" --lazURL="trunk" --getfullrepo

Any idea what's going wrong?

Thanks,
Rich


EDIT:  I decided to try limiting the update to only Lazarus:

./fpclazup_linux_aarch64 --fpcURL="trunk" --lazURL="trunk" --getfullrepo --only="lazarus"

and received this error:

fpclazup: info: Error running fpcup. Technical details: error executing sequence lazarus; line: 3, param: lazarus
fpclazup: info: Error running fpcup. Technical details: error executing sequence Only; line: 1, param: lazarus
Fpclazup failed.


Rich
« Last Edit: April 15, 2016, 03:43:38 am by criageek »

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #37 on: April 15, 2016, 07:45:03 am »
Please add verbose to your command !

./fpclazup_linux_aarch64 --fpcURL="trunk" --lazURL="trunk" --getfullrepo --verbose

criageek

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #38 on: April 15, 2016, 03:02:58 pm »
Ok...do you want me to post the entire output (long...393 lines) or just a certain part of it?

Thanks,
Rich

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #39 on: April 15, 2016, 03:34:00 pm »
You could add the logfile as an attachment.
Or a screen-dump into a file (redirect) and add this file as an attachment.

ps: I just ran the mORMot (http://synopse.info/fossil/wiki?name=SQLite3+Framework)  on aarch64 ... with some success !!

criageek

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #40 on: April 15, 2016, 03:59:50 pm »
Here you go!

Rich

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #41 on: April 15, 2016, 04:20:25 pm »
Are you realy sure that this logfile is recent ?
I only see old dates and old revisions !

ps: you ned to build both FPC and Lazarus, to enjoy the latest FPC patches.

criageek

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #42 on: April 15, 2016, 04:43:52 pm »
Yes, I just saved it this morning.  But now I see that the date on my Odroid is February 12!  I just changed it to the correct date but get the same error.

Rich

criageek

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #43 on: April 16, 2016, 01:27:35 am »
I tried this again for fpc and Lazarus in verbose mode.  The resulting screen listing was too long to capture the beginning part, but I've attached as much as I could.  As you can see, the first error is:

fpclazup: info: DownloadFromSVN: SVN gave error code 256

although a few lines above that is says:

svn: E170013: Unable to connect to a repository at URL 'http://svn.freepascal.org/svn/fpc/trunk'
svn: E670003: Temporary failure in name resolution

I'm not smart enough about svn to know what this means or how to resolve it.

Thanks,
Rich

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1150
Re: Lazarus on aarch64 systems like Odroid-C2 (and RPi3)
« Reply #44 on: April 16, 2016, 08:45:01 am »
You are right: a SVN error.

Two possibilities:

1) remove all except the bootstrap-directory.
2) run "svn cleanup" inside of the FPC and Lazarus directory.

I would opt for 1. Most easy.