Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Illegal folder name ("con") in build folder (IDFGH-962) #3299

Closed
freedaun opened this issue Apr 11, 2019 · 8 comments
Closed

Illegal folder name ("con") in build folder (IDFGH-962) #3299

freedaun opened this issue Apr 11, 2019 · 8 comments

Comments

@freedaun
Copy link

freedaun commented Apr 11, 2019

The exact path created is:

C:\msys32\home\user\projects\inv660-dev\project\build\include\config\smp\slave\con\params\upd\enable.h

Note this path contains \con\ which is illegal on Windows. The result is that ANY folder-copy that includes the \con\ folder will (silently!) fail.

This is documented on:
https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file

Don't know the IDF version, but it is very recent, from last week or so, it probably introduced a new setting in menuconfig. Copied this from the output:

Toolchain path: /opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a5
Compiler version: 5.2.0

@github-actions github-actions bot changed the title Illegal folder name ("con") in build folder Illegal folder name ("con") in build folder (IDFGH-962) Apr 11, 2019
@projectgus
Copy link
Contributor

Hi @freedaun ,

Thanks for reporting this. We don't use this kconfig feature of "split" include directories (where each part of the config symbol name becomes part of the directory tree) at all, but it's enabled by default.

The BT config item which creates this directory was added in d71df18, but the directory is only created if the option is enabled.

A fix for this will be available ASAP.

projectgus added a commit to espressif/kconfig-frontends that referenced this issue Apr 15, 2019
Not used in ESP-IDF, and can create problems on Windows if a config item has a
name like aaa_CON_bbb and creates reserved filename "con" as part of
"/aaa/con/bbb"

Reported espressif/esp-idf#3299
@ghubuser987
Copy link

"con" is present even in the hello_world example.

Example:
c:\esp32\idf\msys32\home\ann_teo\esp\hello_world\build\include\config\smp\slave\con

This leaves a bad impression. Unless one already knows that "con" is a reserved name in Windows, it looks as if expressif software corrupted the Windows file system.

Note that from the Windows command prompt, "con" can be deleted with the \.\ prefix:
rd \.\c:\esp32\idf\msys32\home\swee_teo\esp\hello_world\build\include\config\smp\slave\con

@freedaun
Copy link
Author

Note that from the Windows command prompt, "con" can be deleted with the .\ prefix:

or use WinZip or WinRar and chose 'delete files' after archiving.

@projectgus
Copy link
Contributor

projectgus commented Apr 18, 2019

"con" is present even in the hello_world example.

I can't reproduce this on Windows unless I enable this config option.

The directory will stick around after this option is disabled again, though (especially given Windows will refuse to delete it!)

A fix for GNU Make users is in internal review and should be pushed to GitHub in the next few days.

CMake users will have to wait a little bit longer as we ship a precompiled mconf-idf binary as part of IDF Tools package (this is built from the kconfig-frontends repo linked above).

\ann_teo\
\swee_teo\

Cute. ;)

igrr pushed a commit that referenced this issue May 5, 2019
…e/config

Reported in #3299

If a config item contains a reserved filename in Windows like _CON_ then an invalid
directory is created.

We don't rely on this feature all, so disable it.
trombik pushed a commit to trombik/esp-idf that referenced this issue Aug 9, 2019
…e/config

Reported in espressif#3299

If a config item contains a reserved filename in Windows like _CON_ then an invalid
directory is created.

We don't rely on this feature all, so disable it.
@fronders
Copy link

fronders commented Sep 11, 2019

hey there! it's been a long time, now that v3.3 LTS has been released - it still has the issue :( for me this happens even in the projects that have Bluedroid disabled

@projectgus
Copy link
Contributor

Hi @fronders ,

Yes, sorry the bug has been fixed in master branch (which was pre-v4.0 at the time) and will be fixed in IDF v4.0 release but the backport to v3.3 was only merged yesterday, so this will not be fixed there until v3.3.1 (should be released in a few weeks).

Sorry for the inconvenience.

igrr pushed a commit that referenced this issue Sep 21, 2019
…e/config

Reported in #3299

If a config item contains a reserved filename in Windows like _CON_ then an invalid
directory is created.

We don't rely on this feature all, so disable it.
@siqneibi
Copy link

siqneibi commented Apr 8, 2020

For anyone that still has this issue, you can delete from the windows command prompt with \\.\ prefix like this:
rd /S /Q \\.\C:\msys32\home\esp\hello_world\include\config\smp\slave\con

@dobairoland
Copy link
Collaborator

This has been fixed in all supported releases. If you still getting this error the directory should be removed manually as suggested above. ESP-IDF no longer creates these directories.

0xFEEDC0DE64 pushed a commit to 0xFEEDC0DE64/esp-idf that referenced this issue May 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants