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

fatal error: memory: No such file or directory #258

Closed
jankalfus opened this issue Dec 24, 2017 · 4 comments
Closed

fatal error: memory: No such file or directory #258

jankalfus opened this issue Dec 24, 2017 · 4 comments
Labels
conclusion: off topic Off topic for this repository topic: code Related to content of the project itself type: imperfection Perceived defect in any part of project

Comments

@jankalfus
Copy link

jankalfus commented Dec 24, 2017

I am getting this error in Arduino 1.8.5 when including FS.h for ESP32 in a .cpp module.
I have a file structure like this:

|-- main.ino (contains #include "files.hpp")
|-- files.cpp (contains #include "files.hpp")
|-- files.hpp

Content of files.hpp:

#ifndef FILES_H
#define FILES_H

#include "FS.h"

void appendFile(fs::FS &fs, const char *path, const char *message);
void readFile(fs::FS &fs, const char *path);

#endif

The error message:

Compiling sketch...
"C:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc" -DESP_PLATFORM -DMBEDTLS_CONFIG_FILE="mbedtls/esp_config.h" -DHAVE_CONFIG_H "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/config" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bluedroid" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/app_trace" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/app_update" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bootloader_support" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bt" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/driver" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/esp32" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/esp_adc_cal" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/ethernet" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/fatfs" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/freertos" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/heap" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/jsmn" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/log" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/mdns" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/mbedtls" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/mbedtls_port" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/newlib" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/nvs_flash" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/openssl" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/spi_flash" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/sdmmc" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/spiffs" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/tcpip_adapter" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/ulp" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/vfs" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/wear_levelling" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/xtensa-debug-module" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/console" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/soc" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/newlib" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/coap" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/wpa_supplicant" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/expat" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/json" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/nghttp" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/lwip" -std=gnu99 -Os -g3 -fstack-protector -ffunction-sections -fdata-sections -fstrict-volatile-bitfields -mlongcalls -nostdlib -Wpointer-arith  -Wno-error=unused-function -Wno-error=unused-but-set-variable -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-unused-parameter -Wno-sign-compare -Wno-old-style-declaration -MMD -c -DF_CPU=240000000L -DARDUINO=10805 -DARDUINO_ESP32_DEV -DARDUINO_ARCH_ESP32 -DARDUINO_BOARD="ESP32_DEV"  -DESP32 -DCORE_DEBUG_LEVEL=0 "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32\cores\esp32" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32\variants\esp32" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32\libraries\FS\src" "C:\Users\janka\AppData\Local\Temp\arduino_build_542757\sketch\files.c" -o "C:\Users\janka\AppData\Local\Temp\arduino_build_542757\sketch\files.c.o"
In file included from C:\Users\janka\AppData\Local\Temp\arduino_build_542757\sketch\files.h:4:0,

                 from C:\Users\janka\AppData\Local\Temp\arduino_build_542757\sketch\files.c:1:

C:\Users\janka\Documents\Arduino\hardware\espressif\esp32\libraries\FS\src/FS.h:24:18: fatal error: memory: No such file or directory

compilation terminated.

This might be related to #68. Is the preprocessor broken again or am I doing something wrong? :( I'd really like to split my code into multiple modules.

@cmaglie
Copy link
Member

cmaglie commented Dec 24, 2017

From the verbose command line it seems that in your sketch you have a file named files.c:

"C:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc" -DESP_PLATFORM -DMBEDTLS_CONFIG_FILE="mbedtls/esp_config.h" -DHAVE_CONFIG_H "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/config" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bluedroid" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/app_trace" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/app_update" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bootloader_support" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bt" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/driver" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/esp32" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/esp_adc_cal" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/ethernet" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/fatfs" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/freertos" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/heap" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/jsmn" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/log" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/mdns" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/mbedtls" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/mbedtls_port" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/newlib" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/nvs_flash" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/openssl" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/spi_flash" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/sdmmc" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/spiffs" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/tcpip_adapter" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/ulp" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/vfs" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/wear_levelling" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/xtensa-debug-module" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/console" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/soc" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/newlib" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/coap" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/wpa_supplicant" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/expat" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/json" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/nghttp" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/lwip" -std=gnu99 -Os -g3 -fstack-protector -ffunction-sections -fdata-sections -fstrict-volatile-bitfields -mlongcalls -nostdlib -Wpointer-arith -Wno-error=unused-function -Wno-error=unused-but-set-variable -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-unused-parameter -Wno-sign-compare -Wno-old-style-declaration -MMD -c -DF_CPU=240000000L -DARDUINO=10805 -DARDUINO_ESP32_DEV -DARDUINO_ARCH_ESP32 -DARDUINO_BOARD="ESP32_DEV" -DESP32 -DCORE_DEBUG_LEVEL=0 "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32\cores\esp32" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32\variants\esp32" "-IC:\Users\janka\Documents\Arduino\hardware\espressif\esp32\libraries\FS\src" "C:\Users\janka\AppData\Local\Temp\arduino_build_542757\sketch\files.c" -o "C:\Users\janka\AppData\Local\Temp\arduino_build_542757\sketch\files.c.o"

The <memory> include is a C++-only feature, so you should rename files.c to files.cpp in order for the IDE to use g++ to compile.

@jankalfus
Copy link
Author

I don't, the file name is files.cpp. In the sketch file, I only have #include "files.hpp". I have no idea why it tries to compile files.c.

@cmaglie
Copy link
Member

cmaglie commented Dec 24, 2017

maybe it's a stray file, did you rename it? try to close and reopen the IDE

@jankalfus
Copy link
Author

jankalfus commented Dec 24, 2017

Restarting the IDE helped! It looks like it's working now. Thank you so much!

It's weird I had to restart it though. Is there some logic behind that? Do I have to restart it every time I make a change? Is there a clean build command? I don't seem to be able to find one.

@per1234 per1234 added conclusion: off topic Off topic for this repository topic: code Related to content of the project itself type: imperfection Perceived defect in any part of project labels Oct 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conclusion: off topic Off topic for this repository topic: code Related to content of the project itself type: imperfection Perceived defect in any part of project
Projects
None yet
Development

No branches or pull requests

3 participants