Arm Mbed and Pelion Device Management support forum

Using ARMC6 License from Mbed Studio with cli

I’m currently attempting to move a program from the online IDE to mbed cli to use with a custom target (Using QSPIF on a NUCLEO-F746ZG derived custom board). After following the installation instructions for Mbed Studio and mbed CLI it appears that ARM6 can’t locate the Mbed Studio license file.
Config:

mbed config --list
[mbed] Working path "E:\Mbed Dev\A4461_DEV" (program)
[mbed] Global config:
ARMLMD_LICENSE_FILE=C:\Users\thomas\AppData\Local\Programs\Mbed Studio\tools-config\ac6-license.dat
CACHE=on
TOOLCHAIN=GCC_ARM
ARMC6_PATH=C:\Users\thomas\AppData\Local\Mbed Studio\mbed-studio-tools\ac6\bin

[mbed] Local config (E:\Mbed Dev\A4461_DEV):
ARMLMD_LICENSE_FILE=C:\Users\thomas\AppData\Local\Programs\Mbed Studio\tools-config\ac6-license.dat
ARMC6_PATH=C:\Users\thomas\AppData\Local\Mbed Studio\mbed-studio-tools\ac6\bin

Compiling with:

mbed compiler -v -m A4461 -t ARMC6

fails, including the following in the output:

ToolException: armclang: error: Failed to check out a license.
The license file could not be found. Check that ARMLMD_LICENSE_FILE is set correctly.
armclang: note:
ARMLMD_LICENSE_FILE is not set. You must set this to the path to your license.
armclang: note:
Information about this error is available at: http://ds.arm.com/support/lic87/m1
 General licensing information is available at: http://ds.arm.com/support/licensing/
 If you need further help, provide this complete error report to your supplier or license.support@arm.com.
 - ARMLMD_LICENSE_FILE: unset
 - LM_LICENSE_FILE: unset
 - ARM_TOOL_VARIANT: unset
 - ARM_PRODUCT_PATH: unset
 - Product location: C:\Users\thomas\AppData\Local\Mbed Studio\mbed-studio-tools\ac6\sw\mappings
 - Toolchain location: C:\Users\thomas\AppData\Local\Mbed Studio\mbed-studio-tools\ac6\bin
 - Selected tool variant: product
armclang: note:
 - Checkout feature: mbed_armcompiler
 - Feature version: 5.0201810
 - Flex error code: -1
Product: ARM Compiler 6.11 for Mbed Studio
Component: ARM Compiler 6.11
Tool: armclang [5d3b3c00]

I can’t find a record of someone else running into this specific error, which leads me to believe I’ve missed something obvious. If it’s obvious to someone what’s going on here I’d appreciate it.

As an aside, is it possible to add QSPIF functionality to a board (NUCLEO-F746ZG) using the online compiler purely through mbed_app.json? The DISCO-F746NG supports QSPIF and uses the same HAL package, so everything is implemented and you just need to add the pin defines to PinName.h. However from what I’ve seen, while it’s possible to modify entries which have configurable values (eg STDIO_UART_TX), it’s not possible to add new entries, and there’s no alternative way to do it.

Regards,
Tom

I’m pretty sure I tried this also and posted a question about it, back when the support option was to “Ask a Question” before this new forum was up and running.

There doesn’t seem to be a way of accessing those old posts and all I can remember is that the the MBed Studio ARMC6 license was somehow bound to MBed Studio exclusively - so not usable with the CLI.

1 Like

Hi Tom, Chris,

Yes, Arm Compiler 6 license in Mbed Studio is bound to the IDE. It can’t be used outside of Mbed Studio. The good news is that in upcoming release 0.9.0 Mbed Studio will expose all tools shipped with the IDE in the built-in terminal. That includes Arm Compiler 6, Mbed CLI, pyOCD, git, mercurial and more.

Please expect that release soon.

Thanks,
Arek - Mbed Studio team

3 Likes

Hi Arek,

Thank you for the reply.
I saw Chris’ question on the previous forums as part of my initial search. However on re-reading a lot of the info, I was looking at issues regarding Studio’s version of cli, which I’ve then assumed applicable to the standalone.

My fault. Thank you both for the time to answer.

Looking forward to the next Studio release. For me it currently seems to sit in a funny place between the convenience of the online IDE and power of cli, but inferior to both for most projects. Exposing more of the internals should definitely be a good improvement in versatility.

Regards,
Tom