SERIOUS HUGE PROBLEM with INCLUDES .... FILE paths PLATFORM IO NOT NOT platform independnet AT ALL!

SERIOUS HUGE PROBLEM with INCLUDES … FILE paths PLATFORM IO NOT NOT platform independnet AT ALL !!!


Im running on WINDOWS (PLEASE DO NOT COMMENT!!! )
Im working on top of vcode (Microsoft product so they KNOW THIER OWN FILE SYSTEM !!!)
I’m using my files on a sharable !!! I’m living in 2020 not the middle ages PLEASE DO NOT COPY
Please do not put the blame on MICROSOFT FOR THIS
BEING UNABLE TO SUPPORT 10 JEARS OLD REASONABLE FILE SYSTEM
IS SAYING YOU SUCHK as a programmer !!!

                                        File names   like  X://    are since 10 jears abandoned  
                                        I USE  //SHARE/a/b/c    AND THAT IS NEEDED !!!!!!!!!
                                               MY FILES NEED TO BE ON A SHARABLE  im not living in the middle ages !!!! 2020
                                        
                                        IT SHOULD NOT BE RERWITEN BADLY AS /share/a/b/c ( THIS IS INCORRECT!!!)
                                         
                                        I USE LINKS   since they ARE LEGAL IN WINDOWS.......
                                          
                                          
                                          (THERE ARE NO SPACES IN PATHS )
                                              c:/develop/aa/bb/cc     SHOULD NOT  BE CHANGED to 
                                              //Share/a/b/c   FOR NO REASON AT ALL PLEASE ACCEPT  A FULL DECLARED FILE SYSTEM 
                                              
                                              
                                              
                                              THESE ARE  THE BASICS FOR BEING PLATFORM INDEPENDEND 

Whatever happens on UNIX DOES NOT INTEREST ME.
ALL Publications say PLATFORM IO is PLATFORM independent (I DO NOT BELIEVE IT RUNS ON WINDOWS)

I GET CLAIMS MY INCLUDE PATHS ARE BAD … he can NOT FIND.

		BUT I SEE PLATFORM-IO  HOPELESSLY  CORRUPTS  WINDOWS FILES !!!!!!    
		
        ALL FILE description lines seem to be CORRUPTED  BY   PROGRAM IO

IS it PLEASE POSSIBLE TO MAKE PLATFORM IO Compatible with NORMAL WINDOWS PLATFORM INDEPENDNET STANDARDS
OTHERWISE BAN THE SAYING THAT PLATFORM IO is Platform independnet IT IS A LIE (FAKE INFORMATION)

PLEASE I think am reasonable inteligent.
A stupid system that corrupts file names to something BAD anD impossable
should allow for a bypass THAT I Can bypass the STUPPIDITY of automation (PLATFORM/IO)

  THis  creates  TONS OF PROBLEMS (MAKES PLATFORM IO UNUSABLE ON WINDOWS)
  
  
  
  NOT WORKING:
  		ANY declaration  of location of the COMPILER (FILE PATH  CORRUPTED)
  		                            CAN NOT FIND  xtensa-esp32-elf-gcc.exe (except for the first time )
  		                            then it overwrites  whatecer was done  during instalation  and the  COMPULER is NOT FOUND ANY MORE !!!!
  		                            MAKES PLATFORM IO unusable 
  		                            
  		include paths       project /include     File name structure gets corrupted  CAN NOET FIND ANY FILE 
  		lib paths           project /lib         File name structure gets corrupted  CAN NOET FIND ANY FILE
  		common lib Paths(arduino....)            File name structure gets corrupted  CAN NOET FIND ANY FILE
  		
  		(all works on arduino IDE, including shares; including filepaths  ) 

any one should agree “platform IO is just a cosmetic layer over basic compiler… runs …IT FAILS HORRABLY JUST DOING THAT !!!”
after reinsalling all (c++, vscode,platformIO, creating new user…) about 100 times nieghter that is a sollution !!!
appart from a nice outside … NON OF THE ESSENTIALS WORK

this is not lib_extra_dirs problem libraries are pointing to the correct arduino library

Personally, I do not like the tone you’re describing your problem. I even find it hostile in some places. But that may be just me.

If I understand correctly the information hidden between the alternating caps lines of your message, you’re building the project for ESP32 chip, which is located on a network share, and you don’t want to map that to a drive letter. Or maybe the compiler itself is installed to a network share, that’s hard to tell from your post.

Is only your project placed on network share, or PlatformIO packages are installed to network share too?

FYI, PlatformIO does run on Windows and I use it to build ESP32 projects succesfully. I don’t use network shares though, everything is installed locally. @ivankravets, could you comment on using network share paths?

@dreuzel If you say that everything works in Arduino IDE, use Arduino IDE; why do you torture yourself so much trying to use PlatformIO to the point you’re already hating it?

2 Likes

@ivankravets, here’s my report (I’ve installed everything fresh - Arduino IDE 1.8.12, VS Code 1.43.2, Platformio IDE 1.10.0, core version: 4.3.1).
I’ve checked the following sketch:

/*
 * https://circuits4you.com
 * ESP32 LED Blink Example
 * Board ESP23 DEVKIT V1
 * 
 * ON Board LED GPIO 2
 */

#define LED 2

void setup() {
  // Set pin mode
  pinMode(LED,OUTPUT);
}

void loop() {
  delay(500);
  digitalWrite(LED,HIGH);
  delay(500);
  digitalWrite(LED,LOW);
}

Arduino IDE does build it locally and from network share.
Then I’ve imported it into PlatformIO (couldn’t import from network share, the wizard seems to use local paths only). The board is ESP32 DevKit Module. It builds. Then I copied it to the network share, opened the folder, and could not build the project:

> Executing task: C:\.platformio\penv\Scripts\platformio.exe run <

The terminal shell CWD "\\\zarubkin-note\arduino_sketches\200405-024334-esp32dev" does not exist

Terminal will be reused by tasks, press any key to close it.

So yes, @dreuzel, if building your project from network share is an absolute must for you, stick to Arduino IDE, at least for now.

2 Likes

Or use drive letter mapping, because it exists for a reason.

I think the OP needs to get his facts straight, since he puts on a performance about not blaming Microsoft and stuff being ‘legal in Windows’ when a simple check like using the ‘Open in Terminal’ command built into Microsoft VSCode editor shows that while UNC paths (i.e. \\server-name\share-name) are valid, they don’t work with the Windows command interpreter, which is the likely underlying issue. :man_facepalming:

image

And just from the Windows 10 command prompt…

image

Doing a google search about those message will give a long laundry list of results, spanning over a decade, none of which mention PlatformIO, but all of which pointing to issues in Windows and the command prompt/shell/interpreter.

BUT, when you use the facility that Microsoft provided in their operating system (for a reason, perhaps?) and map the network share to a drive letter, then windows command prompt does allow you to work with the share… shock horror!

image

And compiled just fine (for both an AVR and ESP32 project)… so this once again points the finger at a long standing issue of the command interpreter not support UNC paths.

The issue of opening the directory in a terminal can be resolved by a change to a specific registry value, which enables usage of UNC paths in the command interpreter… but, I suspect there is still some issue in VSCode or PlatformIO related to UNC paths due the extra \ at the start of the path:

The terminal shell CWD "\\\192.168.0.4\public\12vBatteryMonitor" does not exist

Now, if this specific issue can be worked around by PlatformIO for those few users who do code development on network shares and refuse to use drive letter mapping is another thing. I won’t comment as to whether this is a good idea or not - that is the topic for a different discussion.

3 Likes