lagprogramming, you need a working arm-embedded- or arm-none-eabi- binutils installed. Since you are on linux just install arm-none-eabi- and then add BINUTILSPREFIX=arm-none-eabi- when making the arm embedded cross FPC
1. Is the presence of "BINUTILSPREFIX=..." parameter mandatory? Can I ommit it if the involved utils are installed in a directory that's included in the PATH environment?
The binutils prefix isn't a path, rather a way to distinguish between different binutils.
Most known/used binutils are: ar, as, ld, objcopy and objdump.
But... they are all named the same for each target. So how to distinguish ? By placing a prefix before their 'common' name, which depends on the target. That's when BINUTILSPREFIX comes into play -> so that you can tell the compiler which particular set of binutils to use (or in case you are living the wild live and named them differently you are still able to use them).
2. How can I find if I have a working arm-embedded- or arm-none-eabi- binutils installed in a default path?
In practice: you don't.
If someone's sole target is a single one, then he/she can name the binutils by their 'common' name like ar and ld. There is no other way of telling if it's the right binutils then reading their --help output and seeing which targets the specific binutil supports. Of course attempting to compile for a particular target and receiving an missing binutil error also is a way to determine if the binutil is in place or not.
I mean somewhere where the build process would be searching by default. I give an example to explain better what I mean. I can find if I have fpc installed and added in the PATH environment by doing the following test: run a TProcess.Execute with "fpc" as executable and "-i" as parameter. If the output starts with "Free Pascal Compiler" then I consider it's installed.
I don't have any of my installed FPC compilers in my path, neither are any of my binutils in the path. Still i am able to compile perfectly with FPC, using different targets as i wish.
FPC and its configuration file, are awesome (and completely self-contained) in that regards
^^ the only thing missing to make it completely independent would be to be able to retrieve/obtain the path to the FPC executable to be used in the fpc.cfg configuration file. Right now i need an environment variable for that.
Can I do something like that with arm-embedded- or arm-none-eabi- binutils?
I don't know of a particular option other then --help that is able to display the supported targets (and if not mistaken that could depend per binutil).