Code Monkey home page Code Monkey logo

Comments (15)

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

louis-etne avatar louis-etne commented on July 27, 2024

Hi,
Thanks for your answer!

This is what i get:

$ arm-eabi-gnatls -v --RTS=embedded-stm32f4

GNATLS 12.2.0
Copyright (C) 1997-2022, Free Software Foundation, Inc.

Source Search Path:
   <Current_Directory>
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/lib/gnat/embedded-stm32f4/gnat_user
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/lib/gnat/embedded-stm32f4/gnarl_user
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/lib/gnat/embedded-stm32f4/gnat
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/lib/gnat/embedded-stm32f4/gnarl


Object Search Path:
   <Current_Directory>
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/lib/gnat/embedded-stm32f4/adalib


Project Search Path:
   <Current_Directory>
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/embedded-stm32f4/lib/gnat
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/embedded-stm32f4/share/gpr
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/lib/gnat
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/arm-eabi/share/gpr
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/share/gpr
   /home/louis/.local/bin/gnat-arm-elf-linux64-12.2.0-1/lib/gnat

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

louis-etne avatar louis-etne commented on July 27, 2024

Hi,
I tried every example without any success and the same error each time:

language 'ada', target 'arm-eabi', runtime 'embedded-stm32f429disco'

(the target and the runtime changed of course, but the error was the same)

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

louis-etne avatar louis-etne commented on July 27, 2024

Hi,
with more information I get:

$ which gprbuild
/usr/bin/gprbuild
$ gprbuild -v -P blinky_f4disco.gpr 
gprconfig: can't find a toolchain for the following configuration:
gprconfig: language 'ada', target 'arm-eabi', runtime 'embedded-stm32f4'

==============Messages for file: /home/louis/Documents/projects/embedded/Ada_Drivers_Library/boards/stm32f407_discovery/stm32f407_discovery_full.gpr
    61.    for Library_Name use "ada_drivers_library";
                                |
        >>> warning: libraries are not supported on this platform

==============Messages for file: /home/louis/Documents/projects/embedded/Ada_Drivers_Library/examples/shared/common/common.gpr
     1. project Common is
                |
        >>> no compiler for language "Ada", cannot compile "last_chance_handler.adb"
gprbuild: *** compilation phase failed

I have exactly the same folder structure for my gnat-arm toolchain. I installed it in ~/.local/bin and then added it to my path in my .bashrc.
I reinstalled gprbuild, not using dnf (I'm on fedora) but via the installer, to have the exact same version as you (and a more recent one). I still have the issue:

$ which gprbuild
/usr/local/bin/gprbuild
$  gprbuild -v -P blinky_f4disco.gpr
gprconfig: can't find a toolchain for the following configuration:
gprconfig: language 'ada', target 'arm-eabi', runtime 'embedded-stm32f4'

==============Messages for file: /home/louis/Documents/projects/embedded/Ada_Drivers_Library/boards/stm32f407_discovery/stm32f407_discovery_full.gpr
    61.    for Library_Name use "ada_drivers_library";
                                |
        >>> warning: libraries are not supported on this platform

==============Messages for file: /home/louis/Documents/projects/embedded/Ada_Drivers_Library/examples/shared/common/common.gpr
     1. project Common is
                |
        >>> no compiler for language "Ada", cannot compile "last_chance_handler.adb"
gprbuild: *** compilation phase failed

Again, thanks for your time.

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

louis-etne avatar louis-etne commented on July 27, 2024

As requested:

$  gprconfig --batch --target=arm-elf --config=ada,, -v
Parsing knowledge base at /usr/local/share/gprconfig
Parsing file /usr/local/share/gprconfig/0_default.xml
Parsing file /usr/local/share/gprconfig/aarch64-vx7.xml
Parsing file /usr/local/share/gprconfig/aarch64-vx7r2.xml
Parsing file /usr/local/share/gprconfig/arm-vx6.xml
Parsing file /usr/local/share/gprconfig/arm-vx7.xml
Parsing file /usr/local/share/gprconfig/arm-vx7r2.xml
Parsing file /usr/local/share/gprconfig/asis.xml
Parsing file /usr/local/share/gprconfig/asm.xml
Parsing file /usr/local/share/gprconfig/baselined.xml
Parsing file /usr/local/share/gprconfig/bin_img.xml
Parsing file /usr/local/share/gprconfig/c.xml
Parsing file /usr/local/share/gprconfig/clean.xml
Parsing file /usr/local/share/gprconfig/compilers-arm-vx7.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-asis.xml
languages: constant := Ada
Parsing file /usr/local/share/gprconfig/compilers-baselined.xml
languages: constant := C++
languages: constant := C++
languages: constant := C
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-e500v2-vx6.xml
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
Parsing file /usr/local/share/gprconfig/compilers-e500v2-vx653.xml
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
Parsing file /usr/local/share/gprconfig/compilers-e500v2-vx7.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-e500v2-vx7r2.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-ppc-vx653.xml
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
Parsing file /usr/local/share/gprconfig/compilers-ppc-vx7.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-ppc-vx7r2.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-ppc64-vx7.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-ppc64-vx7r2.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-vxworks.xml
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C
warning: environment variable 'WIND_BASE' is not defined
languages: constant := C++
languages: constant := C
languages: constant := C++
Parsing file /usr/local/share/gprconfig/compilers-x86-vx7.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers-x86_64-vx7.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/compilers.xml
languages: constant := Simulink
languages: constant := Matlab
languages: constant := Project File
languages: constant := C
languages: constant := C
warning: environment variable 'PIKEOS_VERSION' is not defined
languages: constant := C
warning: environment variable 'PIKEOS_VERSION' is not defined
languages: constant := C
warning: environment variable 'PIKEOS_VERSION' is not defined
languages: constant := C
languages: constant := C
languages: constant := Ada
languages: constant := C++
languages: constant := C++
languages: constant := Asm,Asm_Cpp,Asm2
languages: constant := Bin_Img
languages: constant := Ada
languages: constant := Ada,C,C++
languages: constant := Ada
languages: constant := C
languages: constant := C++
languages: constant := Ada
languages: constant := Ada
languages: constant := Ada
languages: constant := Ada
languages: constant := Ada
languages: constant := Fortran
languages: constant := Fortran
languages: constant := C,C++,Fortran
languages: constant := C,C++,Fortran
languages: constant := C
languages: constant := C
languages: constant := C++
languages: constant := C,C++
languages: constant := WinRes
Parsing file /usr/local/share/gprconfig/cpp.xml
Parsing file /usr/local/share/gprconfig/cross.xml
Parsing file /usr/local/share/gprconfig/e500v2-vx6.xml
Parsing file /usr/local/share/gprconfig/e500v2-vx653.xml
Parsing file /usr/local/share/gprconfig/e500v2-vx7.xml
Parsing file /usr/local/share/gprconfig/e500v2-vx7r2.xml
Parsing file /usr/local/share/gprconfig/fallback_targets.xml
Parsing file /usr/local/share/gprconfig/fortran.xml
Parsing file /usr/local/share/gprconfig/gnat.xml
Parsing file /usr/local/share/gprconfig/linker.xml
Parsing file /usr/local/share/gprconfig/nocompiler.xml
Parsing file /usr/local/share/gprconfig/ppc-vx6.xml
Parsing file /usr/local/share/gprconfig/ppc-vx653.xml
Parsing file /usr/local/share/gprconfig/ppc-vx7.xml
Parsing file /usr/local/share/gprconfig/ppc-vx7r2.xml
Parsing file /usr/local/share/gprconfig/ppc64-vx7.xml
Parsing file /usr/local/share/gprconfig/ppc64-vx7r2.xml
Parsing file /usr/local/share/gprconfig/targetset.xml
Parsing file /usr/local/share/gprconfig/tricore-compilers.xml
languages: constant := C
Parsing file /usr/local/share/gprconfig/tricore-configuration.xml
Parsing file /usr/local/share/gprconfig/tricore-target.xml
Parsing file /usr/local/share/gprconfig/vxworks.xml
Parsing file /usr/local/share/gprconfig/windres.xml
Parsing file /usr/local/share/gprconfig/x86-vx6.xml
Parsing file /usr/local/share/gprconfig/x86-vx7.xml
Parsing file /usr/local/share/gprconfig/x86-vx7r2.xml
Parsing file /usr/local/share/gprconfig/x86_64-vx7.xml
Parsing file /usr/local/share/gprconfig/x86_64-vx7r2.xml
Language ada requires a compiler
Only compilers matching target arm-elf will be preserved
Completing info for --config parameters, extra_dirs=
  Will examine P /home/louis/.local/bin/trace-compass
  Will examine P /opt/gnatstudio/bin
  Will examine P /home/louis/.local/bin/gnat
  Will examine P /usr/local/bin
  Will examine P /usr/local/sbin
  Will examine P /usr/bin
  Will examine P /usr/sbin
  Foreach compiler in /home/louis/.local/bin/trace-compass regexp=TRUE extra_dir=FALSE
  Foreach compiler in /opt/gnatstudio/bin regexp=TRUE extra_dir=FALSE
  Foreach compiler in /home/louis/.local/bin/gnat regexp=TRUE extra_dir=FALSE
    GCC is candidate: filename=arm-eabi-gcc
      target: executing "arm-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-eabi"
      version: executing "arm-eabi-gcc -v" output=<use -v -v> no match
      version: nogrep no match
      version: grep matched="12.2.0"
      languages: constant := C
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
    GCC_Pro is candidate: filename=arm-eabi-gcc
      target: executing "arm-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-eabi"
      version: executing "arm-eabi-gcc -v" output=<use -v -v> no match
      version: grep no match
      Ignore compiler, since couldn't guess its version
    GCC-ASM is candidate: filename=arm-eabi-gcc
      target: executing "arm-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-eabi"
      version: executing "arm-eabi-gcc -v" output=<use -v -v> no match
      version: grep matched="12.2.0"
      languages: constant := Asm,Asm_Cpp,Asm2
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
    GNAT is candidate: filename=arm-eabi-gnatls
      target: executing "arm-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-eabi"
      version: executing "arm-eabi-gnatls -v --version" output=<use -v -v> no match
      version: grep matched="12.2"
      variables: executing "arm-eabi-gcc -v" output=<use -v -v> no match
      variables: grep matched="12.2.0"
      languages: constant := Ada
      runtimes: search directories matching \.\./lib/gcc(-lib)?/arm-eabi/12.2.0/adalib/, starting from /home/louis/.local/bin/gnat/
        <dir>: Recurse into /home/louis/.local/bin/gnat/..
        <dir>: No such directory: /home/louis/.local/bin/lib
      Done search directories
      runtimes: search directories matching \.\./lib/gcc(-lib)?/arm-eabi/12.2.0/ada_object_path, starting from /home/louis/.local/bin/gnat/
        <dir>: Recurse into /home/louis/.local/bin/gnat/..
        <dir>: No such directory: /home/louis/.local/bin/lib
      Done search directories
      runtimes: search directories matching \.\./lib/gcc(-lib)?/arm-eabi/12.2.0/rts-(.*)/adalib/, starting from /home/louis/.local/bin/gnat/
        <dir>: Recurse into /home/louis/.local/bin/gnat/..
        <dir>: No such directory: /home/louis/.local/bin/lib
      Done search directories
      runtimes: search directories matching \.\./arm-eabi/lib/gnat/(.*)/adalib/, starting from /home/louis/.local/bin/gnat/
        <dir>: Recurse into /home/louis/.local/bin/gnat/..
        <dir>: No such directory: /home/louis/.local/bin/arm-eabi
      Done search directories
      No runtime found where one is required for: /home/louis/.local/bin/gnat/
    LD is candidate: filename=arm-eabi-ld
      target: executing "arm-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-eabi"
      version: executing "arm-eabi-ld -v" output=<use -v -v> no match
      version: grep matched="2.39"
      languages: constant := Bin_Img
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
  Foreach compiler in /usr/local/bin regexp=TRUE extra_dir=FALSE
  Foreach compiler in /usr/local/sbin regexp=TRUE extra_dir=FALSE
  Foreach compiler in /usr/bin regexp=TRUE extra_dir=FALSE
    LD is candidate: filename=ld
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    GCC is candidate: filename=gcc
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    GCC_Pro is candidate: filename=gcc
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    GCC-CYGMING is candidate: filename=gcc
      target: executing "gcc -mno-cygwin -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    GCC-MINGW32 is candidate: filename=gcc
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    LYNXWORKS-C is candidate: filename=gcc
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Ignore compiler since external value "x86_64-redhat-linux" must match .*xcoff-lynxos.*
    GCC-28 is candidate: filename=gcc
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    GCC-ASM is candidate: filename=gcc
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    GNAT is candidate: filename=gnatls
      target: executing "gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="x86_64-redhat-linux"
      Target for this compiler does not match --target
    LD is candidate: filename=arm-none-eabi-ld
      target: executing "arm-none-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-none-eabi"
      version: executing "arm-none-eabi-ld -v" output=<use -v -v> no match
      version: grep matched="2.40"
      languages: constant := Bin_Img
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
    GCC is candidate: filename=arm-none-eabi-gcc
      target: executing "arm-none-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-none-eabi"
      version: executing "arm-none-eabi-gcc -v" output=<use -v -v> no match
      version: nogrep no match
      version: grep matched="12.2.0"
      languages: constant := C
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
    GCC_Pro is candidate: filename=arm-none-eabi-gcc
      target: executing "arm-none-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-none-eabi"
      version: executing "arm-none-eabi-gcc -v" output=<use -v -v> no match
      version: grep no match
      Ignore compiler, since couldn't guess its version
    GCC-ASM is candidate: filename=arm-none-eabi-gcc
      target: executing "arm-none-eabi-gcc -dumpmachine" output=<use -v -v> no match
      target: grep matched="arm-none-eabi"
      version: executing "arm-none-eabi-gcc -v" output=<use -v -v> no match
      version: grep matched="12.2.0"
      languages: constant := Asm,Asm_Cpp,Asm2
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
      Filter=ada,,,,: language does not match
  Foreach compiler in /usr/sbin regexp=TRUE extra_dir=FALSE
gprconfig: can't find a toolchain for the following configuration:
gprconfig: language 'ada', target 'arm-elf', default runtime
Creating configuration file: arm-elf.cgpr

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

louis-etne avatar louis-etne commented on July 27, 2024

Sorry for the delay of this answer but thanks to your precious help, I finally have a running GNAT ARM toolchain!

The issue was that I created a symlink for each executable of the bin directory of the downloaded gnat-arm-elf-linux64-12.2.0-1.tar.gz to my conventional bin (~/.local/bin/gnat/*) directory (thus avoiding the modification of the PATH each time I need new binary).

Doing this, gprconfig was completly lost and couldn't find its lib directories. Maybe resolving the symbolic link before searching for directories?

Anyway, thank you so much. :)

from ada_drivers_library.

pat-rogers avatar pat-rogers commented on July 27, 2024

from ada_drivers_library.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.