Library manager/Linker issues

I’m getting a linker error after moving files around. I have this library installed, and it’s declared in the platformio.ini file.

I have tried:

  • Uninstalling the platformIO extension
  • deleting the .pio folder
  • deleting the %USERPROFILE%.platformio directory

Any suggestions? (let me know if you need more info - file layout etc)

```
In file included from lib/core/lib/CoreManager/CoreManager.cpp:13:
include/board_config.h:12:10: fatal error: Adafruit_NeoPixel.h: No such file or directory
```

[env:esp32-c3-supermini]
monitor_filters = esp32_exception_decoder
platform = espressif32
board = esp32-c3-devkitc-02
framework = arduino
board_build.flash_size = 4MB
board_build.partitions = default.csv
monitor_speed = 115200
lib_compat_mode = strict
lib_deps = 
	adafruit/Adafruit NeoPixel@^1.15.1
	ayushsharma82/ElegantOTA@^3.1.6
	https://github.com/gr-butler/autoinc-semver
	knolleary/PubSubClient@^2.8
	bblanchon/ArduinoJson@^7.4.2
	Vector
build_flags = 
    -I include
	-DMONITOR_SPEED=115200
	-DBOARD_ESP32C3_SUPERMINI=1
extra_scripts = 
	pre:pre_extra_script.py
	post:post_build_script.py

If a library (“core”) can’t find its dependency (“Adafruit NeoPixel”), then the first thing you should try is testing all lib_ldf_mode values.

Spoke too soon - sorry, forgot I’d checked out master to see if the bug would follow me.

Tried all of them and the issue remains.

So you’re saying, even with

lib_ldf_mode = deep+

The “core” library doesn’t find the Neopixel library?

What’s the exact dependency graph when you do a verbose compile? (PIO CLIpio run -v -j1 -e esp32-c3-supermini)

I’ve no idea what the issue is, but I did a clean, deleted .pio and restarted vscode. Then built and we’re good again.

I’ve had this once or twice before - there seems to be a stale cache somewhere. If I ever work out the sequence to reliably repeat this then I’ll post it.

Thanks for the help, at least I’ve learned a few more interesting and useful commands!