Crosscompilation ArmLinux sous W7 pour Raspberry

Parce qu'il en faut pour tout le monde, discutez ici d'ADA, de shell et autres Wolfram...

Modérateur : Francois

Répondre
domino22
Messages : 7
Enregistré le : ven. 19 févr. 2016 16:04

Crosscompilation ArmLinux sous W7 pour Raspberry

Message par domino22 » jeu. 3 mars 2016 09:03

Bonjour,
pour un projet de serveur domotique sur Raspberry modelB:
Je souhaite developpé sous Freepascal/lazarus.
*Apres test installation lazarus 1.6 sous Raspbian, j'ai trouve trop lent et des difficultes pour install packages INDY (pour echange TCPIP).
*Decision de developper sous Windows(7) lazarus 1.6 (et Fpc3.0), et donc de crosscompiler le code pour Raspberry(Arm-linux):
Mais je suis bloqué sur le parametrage du crosscompiler sous lazarus:
a chaque fin de compilation de l'IDE, erreur system non trouve pour lazarus. erreur .ppu dans mauvais chemin (c:\development\fpc\units\arm-linux)

Quelquun at'il deja traite ce sujet et aurait'il une notice precise d'install du crosscompiler.
-J'ai installer fpc/lazarus via fpcup sans erreurs.
-C'est donc uniquement l'installation crosscompiler qui me pose pb

Merci d'avance.

domino22
Messages : 7
Enregistré le : ven. 19 févr. 2016 16:04

Re: Crosscompilation ArmLinux sous W7 pour Raspberry

Message par domino22 » jeu. 3 mars 2016 09:40

Pour etre plus precis:
Notice installation utilisée: http://wiki.freepascal.org/fpcup#Linux_ ... s_compiler
fpcup telechargé : reiniro-fpcup-master.zip
Batch installation crosscompiler:reiniro...\..\cross_linux_armhf.bat:
@ECHO OFF
REM ###############################################
REM fpcup for windows
REM cross compile script.
REM ###############################################

ECHO.
ECHO ==============================================
ECHO Build cross compiler for linux arm hardfloat
ECHO ==============================================
ECHO.

if '%1'=='noconfirm' (
SET wait=--noconfirm
)

if EXIST .\fpcup.exe (
fpcup.exe --ostarget="linux" --cputarget="arm" --fpcOPT="-dFPC_ARMHF" --crossOPT="-CpARMV7A -CfVFPV3 -OoFASTMATH -CaEABIHF" --only="FPCCleanOnly,FPCBuildOnly" %wait%
)

REM ###############################################
REM fpclazup can also be used
REM
REM if EXIST .\fpclazup.exe (
REM fpclazup.exe --ostarget="linux" --cputarget="arm" --fpcOPT="-dFPC_ARMHF" --crossOPT="-CpARMV7A -CfVFPV3 -OoFASTMATH -CaEABIHF" --
REM only="FPCCleanOnly,FPCBuildOnly" %wait%
REM )
REM
REM ###############################################

ECHO.
ECHO ==============================================
ECHO Build cross compiler for linux arm ready
ECHO ==============================================
ECHO.
PAUSE
LOG Fpcup.log lors install. Crosscompiler ArmLinux
[2016-03-01 19:28:15.714 Info] ------------------------------------------------
[2016-03-01 19:50:20.080 Info] 01/03/2016 19:50:20: fpcup fpcup001 (20150210) started.
[2016-03-01 19:50:21.686 Info] SVN client found: C:\development\fpcbootstrap\svn\bin\svn.exe
[2016-03-01 19:50:21.886 Info] TFPCInstaller init:
[2016-03-01 19:50:21.886 Info] Bootstrap compiler dir: C:\development\fpcbootstrap\
[2016-03-01 19:50:21.886 Info] FPC URL: http://svn.freepascal.org/svn/fpc/tags/release_3_0_0
[2016-03-01 19:50:21.886 Info] FPC options: -dFPC_ARMHF
[2016-03-01 19:50:21.886 Info] FPC directory: C:\development\fpc
[2016-03-01 19:50:21.886 Info] Make/binutils path: C:\development\fpcbootstrap
[2016-03-01 19:50:21.886 Info] External program path: C:\development\fpcbootstrap\svn\;C:\development\fpc\bin\i386-win32;C:\development\fpc\bin;C:\development\fpc\utils;C:\development\fpcbootstrap;C:\development\fpcbootstrap
[2016-03-01 19:53:53.582 Info] SVN client found: C:\development\fpcbootstrap\svn\bin\svn.exe
[2016-03-01 19:53:53.782 Info] TFPCInstaller init:
[2016-03-01 19:53:53.782 Info] Bootstrap compiler dir: C:\development\fpcbootstrap\
[2016-03-01 19:53:53.782 Info] FPC URL: http://svn.freepascal.org/svn/fpc/tags/release_3_0_0
[2016-03-01 19:53:53.782 Info] FPC options: -dFPC_ARMHF
[2016-03-01 19:53:53.782 Info] FPC directory: C:\development\fpc
[2016-03-01 19:53:53.782 Info] Make/binutils path: C:\development\fpcbootstrap
[2016-03-01 19:53:53.783 Info] External program path: C:\development\fpcbootstrap\svn\;C:\development\fpc\bin\i386-win32;C:\development\fpc\bin;C:\development\fpc\utils;C:\development\fpcbootstrap;C:\development\fpcbootstrap
[2016-03-01 20:02:14.901 Info] FPC: update succeeded.
[2016-03-01 20:02:14.901 Info] 01/03/2016 20:02:14: fpcup finished.
[2016-03-01 20:02:15.101 Info] ------------------------------------------------

Installation crosscompiler fpc: OK (pour l'instant, j'ai gardé "ARMV7A -CfVFPV3" de base dans le batch reiniro, qu'il faudra, si j'encrois
les infos raspberry, remplacé par ArmV6 et VFPV2)
Sous Lazarus:
-Barre outils: Outils/configure build lazarus
-Config TargetOS=linux CPU=arm
-Config Type de composant graphique LCL: win32/win64
-Clic "Créer"
C'est à cette compilation que j'ai Erreur bloquante:
=====================================
"....."
"Compiler le paquet DBFLaz0.1.1:Succès"
"Compiler le paquet SDFLaz0.1.1:Succès"
"Creation de l'EDI:Code de sortie 2 - Erreurs:1
"Fatal:Impossible de trouver system utilisé par Lazarus.Vérifiez que tous les fichiers "ppu" du paquet soient présents dans le repertoire de sortie.
"ppu" dans un repertoire incorrect=C:\develment\fpc\units\arm-linux\rtl\system.ppu..
======================================

Merci de vos conseils, voire vos solutions

domino22
Messages : 7
Enregistré le : ven. 19 févr. 2016 16:04

Re: Crosscompilation ArmLinux sous W7 pour Raspberry

Message par domino22 » ven. 11 mars 2016 12:22

Bonjour a tous, apriori pas damateurs sur le sujet.
Mon pb reste entier.
Quelle plateforme de developpement est la plus utilise pour raspberry?
Cote raspberry:? Lazarus,...
Cote pc:?
Merci davance pour les qqles reponses.

yush
Messages : 1
Enregistré le : ven. 18 mars 2016 14:24

Re: Crosscompilation ArmLinux sous W7 pour Raspberry

Message par yush » ven. 18 mars 2016 14:35

Salut,

Je suis amateur!
Je développe avec lazarus sous linux un serveur et le client associé. Le serveur est hébergé sur un Rpi 2 tandis que le client fonctionne sur mon PC.
Pour le moment j'ai installé lazarus sur le rpi que j'utilise seulement pour compiler.
Je travaille de la façon suivante:
* je développe le serveur et le client sur mon PC
* lorsque j'ai terminé, je récupère le code source du serveur depuis mon Rpi et je compile directement sur le Rpi. Pour cela, j'utilise git (avec un compte sur Github).

Je fais comme cela, car je n'ai pas encore réussi à installer la cross compilation, mais je pense réessayer car l'inconvénient de compiler sur le Rpi est que cela implique quelques manipulation qui empêchent de déployer rapidement la nouvelle version.

Si j'arrive à quelque chose, je te fais signe.

++

Répondre

Retourner vers « Autres langages »