En raison d’un problème dans Altera version 13.0 et 13.1 de SOS EDS, le code de montage requis pour construire une application non hébergée semi-hébergée est manquant.
Pour contourner ce problème, suivez les étapes ci-dessous pour télécharger le fichier Assembleur requis, puis mettre à jour votre script de linker pour désactiver l’hébergement semi-.
Un exemple de script Makefile et Linker basé sur le Altera-SoCFPGA-HardwareLib-GNU.tar.gz exemple de SOC EDS 13.0Sp1 peut être téléchargé à partir du lien ci-dessous : ExampleFiles_nonSemiHosted.zip (altera-socfpga.ld, Makefile, reset.s)
Étapes d’activation d’une application non hébergée semi-active en utilisant Altera exemple comme modèle
- Télécharger reset.o :ExampleFiles_nonSemiHosted.zip
- Copiez/sauvegardez votre script de linker Altera existant altera-socfpga-hosted.ld
- Modifier l’indicateur de compilation
Avant:-lcs3hosted
Après:-lcs3unhosted: GROUP(-lgcc -lc -lcs3 -lcs3unhosted -lcs3arm)
- Commentez ou supprimez les sections de code suivantes :
/* Enable arm semihosting */
EXTERN(__auto_semihosting) /* force exit to be picked up in a hosted or os environment */
EXTERN (exit atexit) - Mettre à jour Makefile pour compiler reset.o et pointer vers la mise à jour du script Linker à partir des étapes 2-4
#Assembler Flags
AFLAGS := -g -O0 -mfloat-abi=soft -march=armv7-a -mtune=cortex-a9 -mcpu=cortex-a9 -x assembler
#Assembler source files
A_SRC := reset.s
#Original Linker script
#LINKER_SCRIPT := altera-socfpga_hosted.ld
#Link to updated linker script for non-semihosted
LINKER_SCRIPT := altera-socfpga.ld
#Clause to compile reset.o
reset.o:
-c reset.s -o reset.o
#Updated linker line to add dependency for reset.o
: reset.o
-T reset.o -o
-d > .objdump
> .map
Remarque : lors de l’édition de Makefiles, assurez-vous que les règles de l’onglet et de l’espace sont respectées
Ce problème a été résolu à partir de la version 14.0 de SOC EDS