where is the "Preprocessor Include Paths" in my eclipse IDE ?

mkseven32
Posts: 32
Joined: Mon Apr 23, 2018 1:21 am

where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby mkseven32 » Sat Apr 28, 2018 6:46 am

Hi
as the Build and Flash with Eclipse IDE guide shows

Navigate to “C/C++ General” -> “Preprocessor Include Paths” property page:

but there is not any item about “Preprocessor Include Paths” in my eclipse IDE, does any body knows why?
Attachments
2018-04-28_144231.png
2018-04-28_144231.png (41.9 KiB) Viewed 9626 times

mkseven32
Posts: 32
Joined: Mon Apr 23, 2018 1:21 am

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby mkseven32 » Sat Apr 28, 2018 7:21 am

that is caused by the version of eclipse , the lastest one could be OK

my version of eclipse is
Version: Indigo Service Release 2
Build id: 20120216-1857

it does have this item. it needs to update the lastest one

gdx9902
Posts: 2
Joined: Thu Mar 18, 2021 6:24 am

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby gdx9902 » Thu Mar 18, 2021 6:32 am

I have the exact same issue.

I am using Eclipse IDE:
Version: 2020-12 (4.18.0)
Build id: 20201210-1552

and the Preprocessor Include paths menu item is no where to be found.

Attached is a screen shot of my menu.

Can anyone help?
Attachments
screenshot.png
screenshot.png (84.94 KiB) Viewed 8328 times

zliudr
Posts: 360
Joined: Thu Oct 03, 2019 5:15 am

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby zliudr » Thu Mar 18, 2021 4:38 pm

Mine is all latest with V4.3 beta-1. It's under C/C++->Build->Environment.

gdx9902
Posts: 2
Joined: Thu Mar 18, 2021 6:24 am

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby gdx9902 » Fri Mar 19, 2021 3:57 pm

Thank you very much for your reply.

I tried to look for the version you have, but I can't seem to find it on the eclipse website.
Could you perhaps please share a link so I can also get the latest beta version?

zliudr
Posts: 360
Joined: Thu Oct 03, 2019 5:15 am

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby zliudr » Sun Mar 21, 2021 4:22 am

Here is mine:

Eclipse IDE:
Version: 2020-12 (4.18.0)
Build id: 20201210-1552
Screenshot 2021-03-20 232049.png
Screenshot 2021-03-20 232049.png (30.73 KiB) Viewed 8225 times

User avatar
mbratch
Posts: 303
Joined: Fri Jun 11, 2021 1:51 pm

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby mbratch » Sun Jun 20, 2021 12:56 am

Has this question been resolved? I have the same issue. I installed the Eclipse IDE per the instructions at the Espressif website. I also did an update of Eclipse from the Eclipse menu. I'm currently running Version: 2021-03 (4.19.0).

From what I can tell, the ESP-IDF plugin(s) do something special with the IDE and provide some of their own menus (for example, under Help). Some other menu items don't match, such as the project properties. Like others, I cannot find any configuration dialog page that allows me to set the library path or pre-processor defines. I'm getting errors in the IDE that it can't find simple includes, like "freertos/FreeRTOS.h".

Lagunax
Posts: 21
Joined: Mon Sep 09, 2019 8:24 pm

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby Lagunax » Fri Apr 01, 2022 8:57 am

Hi, same now with latest Eclipse
Eclipse IDE for C/C++ Developers (includes Incubating components)

Version: 2022-03 (4.23.0)
Build id: 20220310-1457

tried:
Go to project properties (right button on project -> Properties OR menu-File-Properties)
Go to "Project Natures"
Add
"CDT Builder project"
confirm all questions
press "Apply and close"
also i added "Scanner configuration nature" because both of them exists in C++ type projects.

in result path option added but errors occurred

still trying

upd. stopped tries. because after building projects all paths added automatically to folder and all included files are shown without errors. No need any additional natures or whatever else. Just make first build.

upd. Now searching how to add another folder to "include"-path (arduino-esp)
upd. Finaly i got it

creating new project. going to project folder. running next

Code: Select all

mkdir -p components && \
cd components && \
git clone https://github.com/espressif/arduino-esp32.git arduino && \
cd arduino && \
git submodule update --init --recursive && \
cd ../.. && \
idf.py menuconfig
Go to the section Arduino Configuration --->

For usage of app_main() function - Turn off Autostart Arduino setup and loop on boot

For usage of setup() and loop() functions - Turn on Autostart Arduino setup and loop on boot
copy any files and folders from project you need to make and run first build.

taken from here https://docs.espressif.com/projects/ard ... onent.html

but need to install all carefully. i reinstalled several times to get it clean.

all new projects mast run commands above to include arduino (or in linux you can try to make softlink to arduino folder to not download it)
Attachments
eclipse-esp32.png
eclipse-esp32.png (223.31 KiB) Viewed 6172 times
Last edited by Lagunax on Fri Apr 01, 2022 11:44 pm, edited 2 times in total.

User avatar
mbratch
Posts: 303
Joined: Fri Jun 11, 2021 1:51 pm

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby mbratch » Fri Apr 01, 2022 5:52 pm

The build process has always worked well for me. It finds the includes and libraries for ESP-IDF and my own software just fine.

The indexing in Eclipse for ESP-IDF is a big mess. Sometimes it works great, sometimes it flags all sorts of random things (not everything) as errors on the screen. Not only does it flag some ESP-IDF includes as not found (again, not all of them) but some (not all) of my own header files or classes. Again, it builds fine. But the indexing and reindexing, and cleaning and reindexing, and rebuilding, etc, yield mixed results as far as errors shown in the source on the screen. I basically have to ignore most of it, but I lose the hover/right-click context information that is so useful in Eclipse. When it gets bad enough, I bounce over to Visual Studio Code and use the Espressif plugin there, although it has its own issues intermittently crashing and the context information it provides in source is not as useful.

janlksrckts
Posts: 6
Joined: Thu Feb 02, 2023 8:53 am

Re: where is the "Preprocessor Include Paths" in my eclipse IDE ?

Postby janlksrckts » Mon Apr 17, 2023 1:24 pm

I also have this very same problem; no "Preprocessor Include Paths" property page.
Why is this still an issue 5 years after mkseven32 posted this question?

I installed and tried the Windows installers for Espressif-IDE 2.8.1, Espressif-IDE 2.9.1 and the online installer "esp-idf-tools-setup-online-2.21" (The latter complained it could not find Java 11 although JDK 11 is installed, but not a JRE 11).
Neither the install for 2.8.1 and 2.9.1 has a "Preprocessor Include Paths" property page.
The specific problem I'm having is that after #include <string> for C++ code the compiler gives a lot of template errors for std::string.
And yes, #include <string> is in an extern "C" block:
#ifdef __cplusplus
extern "C" {
#endif

#include <string>
....
}

Already spent hours on this, also uninstalled and reinstalled Espressif-IDE several times.
How do I fix this?

Excerpt from build log file:

ccache C:\Espressif\tools\xtensa-esp32s2-elf\esp-2022r1-11.2.0\xtensa-esp32s2-elf\bin\xtensa-esp32s2-elf-g++.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DUNITY_INCLUDE_CONFIG_H -IC:/_PRJ/rhinometer/cpp/USB_comm/build/config -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/newlib/platform_include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/freertos/FreeRTOS-Kernel/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/freertos/esp_additions/include/freertos -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/freertos/esp_additions/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_hw_support/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_hw_support/include/soc -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_hw_support/include/soc/esp32s2 -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_hw_support/port/esp32s2/. -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_hw_support/port/esp32s2/private_include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/heap/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/log/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/soc/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/soc/esp32s2/. -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/soc/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/hal/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/hal/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/hal/platform_port/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_rom/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_rom/include/esp32s2 -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_rom/esp32s2 -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_common/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_system/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_system/port/soc -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_system/port/include/private -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/xtensa/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/xtensa/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/lwip/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/lwip/include/apps -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/lwip/include/apps/sntp -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/lwip/lwip/src/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/lwip/port/esp32/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/lwip/port/esp32/include/arch -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_ringbuf/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/efuse/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/efuse/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/driver/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/driver/deprecated -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/driver/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_pm/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/mbedtls/port/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/mbedtls/mbedtls/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/mbedtls/mbedtls/library -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/mbedtls/esp_crt_bundle/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_app_format/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/bootloader_support/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/bootloader_support/bootloader_flash/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_partition/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/app_update/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/spi_flash/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/pthread/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_timer/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/app_trace/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_event/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/nvs_flash/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_phy/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_phy/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/vfs/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_netif/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/wpa_supplicant/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/wpa_supplicant/port/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/wpa_supplicant/esp_supplicant/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_wifi/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/unity/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/unity/unity/src -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/cmock/CMock/src -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/console -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/http_parser -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp-tls -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp-tls/esp-tls-crypto -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_adc/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_adc/interface -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_adc/esp32s2/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_adc/deprecated/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_eth/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_gdbstub/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_gdbstub/xtensa -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_gdbstub/esp32s2 -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_hid/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/tcp_transport/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_http_client/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_http_server/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_https_ota/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_lcd/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_lcd/interface -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/protobuf-c/protobuf-c -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/protocomm/include/common -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/protocomm/include/security -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/protocomm/include/transports -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_local_ctrl/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/esp_psram/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/espcoredump/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/espcoredump/include/port/xtensa -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/wear_levelling/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/sdmmc/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/fatfs/diskio -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/fatfs/vfs -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/fatfs/src -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/idf_test/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/idf_test/include/esp32s2 -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/ieee802154/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/json/cJSON -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/mqtt/esp-mqtt/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/perfmon/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/spiffs/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/touch_element/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/ulp/ulp_common/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/ulp/ulp_common/include/esp32s2 -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/usb/include -IC:/Espressif/frameworks/esp-idf-v5.0.1/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -O2 -fmacro-prefix-map=C:/_PRJ/rhinometer/cpp/USB_comm=. -fmacro-prefix-map=C:/Espressif/frameworks/esp-idf-v5.0.1=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu++20 -fexceptions -fno-rtti -D_GNU_SOURCE -DIDF_VER=\"v5.0.1-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/main.cpp.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\main.cpp.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/main.cpp.obj -c C:/_PRJ/rhinometer/cpp/USB_comm/main/main.cpp
In file included from c:\espressif\tools\xtensa-esp32s2-elf\esp-2022r1-11.2.0\xtensa-esp32s2-elf\xtensa-esp32s2-elf\include\c++\11.2.0\bits\stringfwd.h:40,
from c:\espressif\tools\xtensa-esp32s2-elf\esp-2022r1-11.2.0\xtensa-esp32s2-elf\xtensa-esp32s2-elf\include\c++\11.2.0\string:39,
from C:/_PRJ/rhinometer/cpp/USB_comm/main/datalink.h:35,
from C:/_PRJ/rhinometer/cpp/USB_comm/main/rhinometer.h:17,
from C:/_PRJ/rhinometer/cpp/USB_comm/main/main.cpp:7:
c:\espressif\tools\xtensa-esp32s2-elf\esp-2022r1-11.2.0\xtensa-esp32s2-elf\xtensa-esp32s2-elf\include\c++\11.2.0\bits\memoryfwd.h:63:3: error: template with C linkage
63 | template<typename>
| ^~~~~~~~

Who is online

Users browsing this forum: ESP_Roland and 60 guests