Luajit werkend krijgen op een Odroid C2 (arm64)

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
Arm64 wordt (nog steeds) niet ondersteund door luajit.
Nu schijnt het wel mogelijk te zijn om luajit zelf te compilen op/voor een arm64 (in mijn geval een Odroid C2).
Maar ik weet niet hoe.
Heeft iemand dit al gedaan en/of een plek gevonden waar ik een arm64 versie van luajit kan vinden?

(ik wil Jivelite draaiend krijgen op mijn Odroid C2 waar squeezelite al prima op loopt.

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • +1 Henk 'm!

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

En waarin schiet dit tekort:
http://luajit.org/install.html

?

ASSUME makes an ASS out of U and ME


Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
Dank voor je reactie, maar misschien ligt het aan mij, maar voor mij is die site onleesbaar: ik snap geen niets van wat daar staat en in die tabel bovenaan staat geen aarch64 (nergens, trouwens).

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • +1 Henk 'm!

  • Merethil
  • Registratie: December 2008
  • Laatst online: 09:53
Videopac schreef op zondag 5 maart 2017 @ 15:52:
[...]

Dank voor je reactie, maar misschien ligt het aan mij, maar voor mij is die site onleesbaar: ik snap geen niets van wat daar staat en in die tabel bovenaan staat geen aarch64 (nergens, trouwens).
Valt je CPU niet gewoon onder de ARMv5/ARMv9+ in die tabel? Dan heb je dus gewoon GCC 4.2 nodig en kan je hem compilen onder linux door de instructies op de pagina te volgen.

Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
Merethil schreef op zondag 5 maart 2017 @ 15:59:
[...]


Valt je CPU niet gewoon onder de ARMv5/ARMv9+ in die tabel? Dan heb je dus gewoon GCC 4.2 nodig en kan je hem compilen onder linux door de instructies op de pagina te volgen.
Het is een Amlogic S905 quad-core A53.

"The ODROID-C2 is a 64-bit quad-core single board computer(SBC) that is one of the most cost-effective 64bit development boards available in the ARM world. It can function as a home theater set-top box, a general purpose computer for web browsing, gaming and socializing, a compact tool for college or office work, a prototyping device for hardware tinkering, a controller for home automation, a workstation for software development, and much more.

Some of the modern operating systems that run on the ODROID-C2 are Ubuntu, Android, ARCHLinux, Debian, with thousands of free open-source software packages available. The ODROID-C2 is an ARM device -- the most advanced architecture for mobile devices and embedded 64-bit computing. The ARM processor’s small size, reduced complexity and low power consumption makes it very suitable for miniaturized devices such as wearables and embedded controllers."

Bron: http://www.hardkernel.com/main/products/prdt_info.php

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • 0 Henk 'm!

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 01-10 16:14

Gerco

Professional Newbie

Op die site staat dat je "make && make install" moet uitvoeren in de source tree. Als je GCC installeert en gewoon die ene instructie volgt, wat gebeurt er dan?

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Acties:
  • 0 Henk 'm!

  • Merethil
  • Registratie: December 2008
  • Laatst online: 09:53
Videopac schreef op zondag 5 maart 2017 @ 16:39:
[...]


Het is een Amlogic S905 quad-core A53.

"The ODROID-C2 is a 64-bit quad-core single board computer(SBC) that is one of the most cost-effective 64bit development boards available in the ARM world. It can function as a home theater set-top box, a general purpose computer for web browsing, gaming and socializing, a compact tool for college or office work, a prototyping device for hardware tinkering, a controller for home automation, a workstation for software development, and much more.

Some of the modern operating systems that run on the ODROID-C2 are Ubuntu, Android, ARCHLinux, Debian, with thousands of free open-source software packages available. The ODROID-C2 is an ARM device -- the most advanced architecture for mobile devices and embedded 64-bit computing. The ARM processor’s small size, reduced complexity and low power consumption makes it very suitable for miniaturized devices such as wearables and embedded controllers."

Bron: http://www.hardkernel.com/main/products/prdt_info.php
Ja, maar de chip zelf is een ARMv8-chip, dus die zal vast in die ARM-range vallen in het tabelletje.

Acties:
  • +1 Henk 'm!

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

Merethil schreef op zondag 5 maart 2017 @ 17:01:
[...]


Ja, maar de chip zelf is een ARMv8-chip, dus die zal vast in die ARM-range vallen in het tabelletje.
Nee, ARMv5 en ARM9E zijn geen ARMv8. Deze zijn nog beide oudere 32 bits ARM versies.

Maar hoe dan ook: 'make' proberen in de directory en kijken hoever je raakt.
Als het niet compileert, dan kun je nog eens een specifiekere vraag stellen, maar dit is echt heel erg basic, zeker omdat de instructies op die site toch voldoende duidelijk zouden moeten zijn.

Er was trouwens een talk over het porteren van LuaJIT naar AARCH64 en MIPS64, welke blijkbaar nog een work-in-progress is:
https://fosdem.org/2017/schedule/event/luajit/

En hier vind je een github repository die luajit met aarch64 zou moeten bevatten:
https://github.com/cbaylis/luajit-aarch64

Op de 2.1 branch van LuaJIT zelf zit trouwens ook AARCH64 code:
https://github.com/LuaJIT/LuaJIT/tree/v2.1

Maar als dit je allemaal niets zegt, dan weet ik niet of je er zomaar in wil vliegen. Het is allemaal geen rocket science, maar als er iets mis gaat ben je toch zo het bos in.

[ Voor 33% gewijzigd door H!GHGuY op 05-03-2017 18:19 ]

ASSUME makes an ASS out of U and ME


Acties:
  • 0 Henk 'm!

  • Merethil
  • Registratie: December 2008
  • Laatst online: 09:53
H!GHGuY schreef op zondag 5 maart 2017 @ 18:09:
[...]

Nee, ARMv5 en ARM9E zijn geen ARMv8. Deze zijn nog beide oudere 32 bits ARM versies.

Maar hoe dan ook: 'make' proberen in de directory en kijken hoever je raakt.
Als het niet compileert, dan kun je nog eens een specifiekere vraag stellen, maar dit is echt heel erg basic, zeker omdat de instructies op die site toch voldoende duidelijk zouden moeten zijn.

Er was trouwens een talk over het porteren van LuaJIT naar AARCH64 en MIPS64, welke blijkbaar nog een work-in-progress is:
https://fosdem.org/2017/schedule/event/luajit/

En hier vind je een github repository die luajit met aarch64 zou moeten bevatten:
https://github.com/cbaylis/luajit-aarch64

Op de 2.1 branch van LuaJIT zelf zit trouwens ook AARCH64 code:
https://github.com/LuaJIT/LuaJIT/tree/v2.1

Maar als dit je allemaal niets zegt, dan weet ik niet of je er zomaar in wil vliegen. Het is allemaal geen rocket science, maar als er iets mis gaat ben je toch zo het bos in.
Er staat toch ARMv5+? Ik dacht dat het gewoon alle versies van ARM boven v5 zou zijn dan...

Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 27-09 13:03
Merethil schreef op zondag 5 maart 2017 @ 19:18:
[...]
Er staat toch ARMv5+? Ik dacht dat het gewoon alle versies van ARM boven v5 zou zijn dan...
Lijkt me ook eigenlijk : dat zou alles vanaf en inclusief ARM9 zijn dus ARM9, ARM11 en alle ARM-Cortex generaties.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
Merethil schreef op zondag 5 maart 2017 @ 19:18:
[...]


Er staat toch ARMv5+? Ik dacht dat het gewoon alle versies van ARM boven v5 zou zijn dan...
farlane schreef op zondag 5 maart 2017 @ 21:22:
[...]

Lijkt me ook eigenlijk : dat zou alles vanaf en inclusief ARM9 zijn dus ARM9, ARM11 en alle ARM-Cortex generaties.
ARM architectuur versie =/= ARM processornaam (al is dat wel verwarrend):
Wikipedia: ARM architecture

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 27-09 13:03
Videopac schreef op zondag 5 maart 2017 @ 21:50:
[...]
ARM architectuur versie =/= ARM processornaam (al is dat wel verwarrend):
Wikipedia: ARM architecture
Zie dat ARM7/9TDMI v4 architectuur zijn, en de 7/9 E/J v5, maar verder klopt het toch.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

ARMv8 is een danig ander ding (oa 64bit, maar ook een volledig andere instructieset) dat ze niet de compatibiliteit biedt die de voorgaande generaties hadden.
Voor een toepassing als een JIT zal je dus wel beter moeten doen.

ASSUME makes an ASS out of U and ME


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
@Videopac Wat heb je nu concreet zelf al geprobeerd? Want op deze manier schiet het niet erg op. We verwachten ten minste dat je zelf aangeeft wat je geprobeerd hebt en wat daar niet aan lukte. Er staat op de site toch genoeg informatie waar je in ieder geval een begin mee moet kunnen maken.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

Als je niet perse de Odroid C2 nodig hebt zou ik deze board verkopen / wegzetten.
Leuk altijd die vette hardware specs, maar ik heb ook van die Odroid bordjes gehad. Qua software is het allemaal een drama.

Te nieuwe hardware in ARM land is gewoon not done voor hobby. Ga voor een board dat ARMv7 instructie ARM processor heeft. De meeste software is daar voor beschikbaar en dus handiger om mee te hobbyen.

En als je echt power wilt zou ik naar intel X5/X7 boardjes kijken met daarop Linux. Dat is gewoon X86 en daar is helemaal veel software voor te krijgen / compilen.

Gewoon een tipje, als je echt deze board hebt gekozen om een zeer specifieke reden dan enkel hobby.. dan ben ik daar ook wel benieuwd naar.

Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
Woy schreef op maandag 6 maart 2017 @ 23:22:
@Videopac Wat heb je nu concreet zelf al geprobeerd? Want op deze manier schiet het niet erg op. We verwachten ten minste dat je zelf aangeeft wat je geprobeerd hebt en wat daar niet aan lukte. Er staat op de site toch genoeg informatie waar je in ieder geval een begin mee moet kunnen maken.
Allereerst de context: ik wil een audio-mediacenter bouwen, met een touch screen (ik hou er niet van dat ik alles met een ipad/telefoon moet doen, bovendien vind ik het leuk als je info of een albumhoes op de speler kunt zien). Ik heb nu een Logitech Squeezbox Touch en dat bevalt me goed, alleen moet ik dan nog apart een versterker aanzetten. Bovendien is dat een klasse A/B versterker die nogal wat warmte genereert en dus niet goed in een kast kan (WAF).

Doel: single-board computer (Odroid C2) i.c.m. DAC (ik denk momenteel aan een Soekris), i.c.m. Hypex NCore eindversterker, in een Hifi-2000 behuizing.

- waarom een Odroid C2? Omdat het een snelle, passief gekoelde sbc is met GB LAN, dus geen 100Mbit gedeeld met USB. Ik heb een hekel aan trage response: het eMMC geheugen draagt ook bij aan een goede snelheid. De ondersteuning is inmiddels best redelijk: er zijn verschillende distributies voor te krijgen, waaronder DietPi, Armbian en AlpineLinux. Kodi is ook beschikbaar, om maar eens iets te noemen.

OS: ik heb eerst gekeken naar Volumio 2, aangezien dat een van de weinige audiosoftware is die een Odroid C2 build heeft. Echter: Volumio 2 is bedoeld om via een browser bedient te worden en heeft geen goede touch screen support (de UI is hier niet voor ontworpen, daarnaast werkte mijn VU7+ niet (kan inmiddels beter zijn)). Moode Audio, Rune Audio, Max2Play, Daphile etc ondersteunen allemaal de Odroid C2 nog niet. Uiteindelijk ben ik terug bij LMS en Squeezelite: dit is voor mij toch het beste qua bediening. Echter: voor touch screen support is Jivelite nodig en voor Jivelite is Luajit een vereiste. Maar die is er dus niet voor armv8/aarch64.

Ik heb hierover vragen gesteld op het Hardkernel forum, het Slimdevices forum en Diyaudo.com.

Uiteindelijk kwam ik bij deze thread op het Slimdevices forum terecht: dit is iemand die het zelf in elkaar geknutseld heeft voor een Pine64. Het goede nieuws is dat hij een aarch64 versie van luajit gevonden heeft, maar die moet je dan nog wel zelf compileren? Ik snap hier dus eigenlijk geen hol van. Mijn interpretatie is dat je die code vanaf het web naar je computer kopieert en dan zelf compiled en dan installeert. De laatste keer dat ik code gecompiled heb is 20-25 jaar geleden op een HP UX en met Turbo Pascal onder DOS.

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • 0 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 27-09 13:03
Nja, als de package je architectuur ondersteunt is het een kwestie van ./configure && make && make install, er van uitgaande dat je compileert op je target systeem.

Voor zover ik kan zien zou het moeten werken op ARMv8: https://github.com/sindrom91/LuaJIT/commits/ARM64

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
farlane schreef op zaterdag 18 maart 2017 @ 23:32:
Nja, als de package je architectuur ondersteunt is het een kwestie van ./configure && make && make install, er van uitgaande dat je compileert op je target systeem.

Voor zover ik kan zien zou het moeten werken op ARMv8: https://github.com/sindrom91/LuaJIT/commits/ARM64
"./configure && make && make install" is 1 commando, neem ik aan?
En die moet ik toch pas doen nadat ik de juiste versie van Luajit binnen gehaald heb.
Hoe doe ik dat?
NB: ik ben nieuw in deze materie. vandaar dus ook dat ik dit vraag.

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • +1 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 27-09 13:03
Videopac schreef op donderdag 30 maart 2017 @ 22:06:
[...]

"./configure && make && make install" is 1 commando, neem ik aan?
En die moet ik toch pas doen nadat ik de juiste versie van Luajit binnen gehaald heb.
Hoe doe ik dat?
NB: ik ben nieuw in deze materie. vandaar dus ook dat ik dit vraag.
In feite zijn dat 3 commando's. Die vraag impliceert de tweede opmerking trouwens :)

Beste kun je de howto van luajit erbij pakken hoe je het spul voor je platform moet bouwen, zie de link in de tweede post in dit topic van H!GHGuY.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
farlane schreef op donderdag 30 maart 2017 @ 23:53:
[...]

In feite zijn dat 3 commando's. Die vraag impliceert de tweede opmerking trouwens :)
Dat besef ik me nu ook. Dank.
Beste kun je de howto van luajit erbij pakken hoe je het spul voor je platform moet bouwen, zie de link in de tweede post in dit topic van H!GHGuY.
OK, hier gaan we (NB: ik installeer een OS image op het eMMC kaartje, start hem op en verbind met een SSH connectie):
Prerequisites

Depending on your distribution, you may need to install a package for GCC, the development headers and/or a complete SDK. E.g. on a current Debian/Ubuntu, install libc6-dev with the package manager.
Hoe bepaal ik dit en hoe doe ik dit?
(de vraag wat GCC, development headers en SDK (Software Developers Kit?) is laat ik maar achterwege).
Download the current source package of LuaJIT (pick the .tar.gz), if you haven't already done so.
Hoe?
Move it to a directory of your choice, open a terminal window and change to this directory. Now unpack the archive and change to the newly created directory:
Vanaf hier staan de commando's wel ineens aangegeven.

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • +1 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 27-09 13:03
Videopac schreef op vrijdag 31 maart 2017 @ 14:37:
[...]
Hoe bepaal ik dit en hoe doe ik dit?
code:
1
sudo apt-get install build-essential

En als er tijdens het compileren een melding komt in de trend van een missing header oid kan het zijn dat je nog meer development packages moet installeren, meestal in de vorm:
code:
1
sudo apt-get install lib{naam}-dev

Ze noemen er 1 bij naam "libc6-dev" bijvoorbeeld. 1 en ander is afhankelijk wat Lua allemaal nodig heeft.
Vanaf hier staan de commando's wel ineens aangegeven
Dat komt omdat het eerste gedeelte een algemeen deel is, specifiek voor de distributie die je gebruikt. Het 2e deel is Lua specifiek.

[ Voor 16% gewijzigd door farlane op 31-03-2017 14:56 ]

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Acties:
  • 0 Henk 'm!

  • Videopac
  • Registratie: November 2000
  • Laatst online: 12:42

Videopac

Rommelt wat aan.

Topicstarter
farlane schreef op vrijdag 31 maart 2017 @ 14:54:
[...]


code:
1
sudo apt-get install build-essential

En als er tijdens het compileren een melding komt in de trend van een missing header oid kan het zijn dat je nog meer development packages moet installeren, meestal in de vorm:
code:
1
sudo apt-get install lib{naam}-dev

Ze noemen er 1 bij naam "libc6-dev" bijvoorbeeld. 1 en ander is afhankelijk wat Lua allemaal nodig heeft.


[...]

Dat komt omdat het eerste gedeelte een algemeen deel is, specifiek voor de distributie die je gebruikt. Het 2e deel is Lua specifiek.
Dank!
De enige vraag die ik (voorlopig) heb is hoe ik die luajit bestanden lokaal krijg.

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


Acties:
  • +1 Henk 'm!

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 27-09 13:03
Videopac schreef op vrijdag 31 maart 2017 @ 15:17:
[...]

Dank!
De enige vraag die ik (voorlopig) heb is hoe ik die luajit bestanden lokaal krijg.
code:
1
wget http://luajit.org/download/LuaJIT-2.0.4.tar.gz


en dan
code:
1
tar -xzf LuaJIT-2.0.4.tar.gz

[ Voor 12% gewijzigd door farlane op 31-03-2017 16:55 ]

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.

Pagina: 1