Esp-idf: Warnings logged on build that toolchain version is not supported

Created on 13 Jan 2017  路  11Comments  路  Source: espressif/esp-idf

Am using ESP-IDF as of the date of this issue. I got a warning that my toolchain was not supported. Great that there is a check. However, after installing the latest toolchain, I continue to get the same error. Here is a text capture of what I am seeing:

$ xtensa-esp32-elf-gcc --version
xtensa-esp32-elf-gcc (crosstool-NG crosstool-ng-1.22.0-61-gab8375a) 5.2.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ make
WARNING: Toolchain version is not supported: 
Expected to see version: crosstool-NG crosstool-ng-1.22.0-61-gab8375a
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
/home/kolban/esp32/esptest/esp-idf/make/project.mk:445: WARNING: Compiler version is not supported: 
Expected to see version(s): 5.2.0
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.

As you can see, the execution of my xtensa-esp32-elf-gcc is producing the version that appears to be expected but yet the error is still logged.

Most helpful comment

They're not, but they're similar.

All 11 comments

You may want to check the output of the actual commands on your system since your output seems to show null for both items

https://github.com/espressif/esp-idf/blob/master/make/project.mk#L432

This is on Linux, yes? I remember Ubuntu, but which version?

Despite the warning, does the build run correctly? There is a bug that if the path to the toolchain needs to be set in menuconfig, it will print a warning like this before the path is configured. However it looks like the toolchain is already on your PATH, so it may be something else in this case.

@nkolban do you only get this the first time you run 'make'?

This isn't working right for me either - and now I see why. I'm racing out the door but here's the fix for project.mk:

TOOLCHAIN_COMMIT_DESC := $(shell $(CC) --version | sed -E -n 's|xtensa-esp32-elf-gcc.*\ \(([^)]*).*|\1|gp')
TOOLCHAIN_GCC_VER := $(shell $(CC) --version | sed -E -n 's|xtensa-esp32-elf-gcc.*\ \(.*\)\ (.*)|\1|gp')

Why? Because if you're using Windows executables it reports with .exe:

$ xtensa-esp32-elf-gcc --version
xtensa-esp32-elf-gcc.exe (crosstool-NG crosstool-ng-1.22.0-61-gab8375a) 5.2.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Thanks @MartyMacGyver . We'll have a fix for Windows version detection out shortly.

@projectgus

The make appears clean ... i.e. it runs to complete.

If I then run make clean and make again, the warnings are still present.

OK, thanks @nkolban for the update. We have a fix for both these issues (warning on a clean build, warning on Windows) which will be merged shortly.

The fix should be one and the same.

They're not, but they're similar.

I have boiled it down to on linux
export CONFIG_TOOLPREFIX=$(pwd)/xtensa-esp32-elf/bin/xtensa-esp32-elf-
before I ran
make duktape_configure and
make
then it sorted it out for me.

Thanks for that extra detail @Frida854 .

There's a fix in the pipeline for this warning, which is two different underlying issues depending on platform:

  • Windows doesn't detect toolchain correctly
  • If the toolchain needs to be set in menuconfig before it works (ie not in PATH, or has a different prefix to the default prefix), then the warning appears on a clean build (until after "menuconfig" or "defconfig") has run.)
Was this page helpful?
0 / 5 - 0 ratings