PlatformIO user-defined library, error on included library

I’m using PlatformIO with the rp2040 and arduino framework. I’m trying to rewrite a little part of the FastLED library, on my project because it can’t be used on rp2040. But i got stucked for a week on this import error. So i include the crgb.h file into the palette_crgb.h file and every thing is works fine but when i include this header file in his cc file, the compiler throws a ton of error, keep in mind that every thing works if i use only the header file. I also have found this problem for every cpp file that includes their own header file. Evenmore the vsc intellsense is kind of broken. Thank you in advance for the help.

Please upload the exact project that has compiler errors.

These are the errors:
Compiling .pio\build\nanorp2040connect\lib186\neopixel_led\palette_crgb.cpp.o
In file included from lib\neopixel_led\palette_crgb.h:4,
from lib\neopixel_led\palette_crgb.cpp:1:
lib\neopixel_led\random.h:7:5: error: ‘uint16_t’ does not name a type
7 | uint16_t rand_16_seed;
| ^~~~~~~~
lib\neopixel_led\random.h:9:12: error: ‘uint8_t’ does not name a type
9 | inline uint8_t Random_8_Bit() {
| ^~~~~~~
lib\neopixel_led\random.h:14:12: error: ‘uint8_t’ does not name a type
14 | inline uint8_t Random_8_Bit(uint8_t max) {
| ^~~~~~~
lib\neopixel_led\random.h:19:12: error: ‘uint8_t’ does not name a type
19 | inline uint8_t Random_8_Bit(uint8_t min, uint8_t max) {
| ^~~~~~~
lib\neopixel_led\random.h:24:12: error: ‘uint16_t’ does not name a type
24 | inline uint16_t Random_16_Bit() {
| ^~~~~~~~
lib\neopixel_led\random.h:29:12: error: ‘uint16_t’ does not name a type
29 | inline uint16_t Random_16_Bit(uint16_t max) {
| ^~~~~~~~
lib\neopixel_led\random.h:34:12: error: ‘uint16_t’ does not name a type
34 | inline uint16_t Random_16_Bit(uint16_t min, uint16_t max) {
| ^~~~~~~~
*** [.pio\build\nanorp2040connect\lib186\neopixel_led\palette_crgb.cpp.o] Error 1
========================================================================================================== [FAILED] Took 1.81 seconds ==========================================================================================================

  • The terminal process “C:\Users\39391.platformio\penv\Scripts\platformio.exe ‘run’” terminated with exit code: 1.

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

  • Executing task: C:\Users\39391.platformio\penv\Scripts\platformio.exe run

Processing nanorp2040connect (platform: raspberrypi; board: nanorp2040connect; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via -v, --verbose option
CONFIGURATION: Redirecting...
PLATFORM: Raspberry Pi RP2040 (1.8.0) > Arduino Nano RP2040 Connect
HARDWARE: RP2040 133MHz, 264KB RAM, 2MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, jlink, raspberrypi-swd)
PACKAGES:

  • framework-arduino-mbed @ 3.5.4
  • tool-rp2040tools @ 1.0.2
  • toolchain-gccarmnoneeabi @ 1.90201.191206 (9.2.1)
    LDF: Library Dependency Finder → Library Dependency Finder (LDF) — PlatformIO latest documentation
    LDF Modes: Finder ~ chain, Compatibility ~ soft
    Found 40 compatible libraries
    Scanning dependencies…
    Dependency Graph
    |-- Adafruit NeoPixel @ 1.11.0
    |-- neopixel_led
    Building in release mode
    Compiling .pio\build\nanorp2040connect\lib186\neopixel_led\palette_crgb.cpp.o
    In file included from lib\neopixel_led\crgb.h:4,
    from lib\neopixel_led\palette_crgb.h:4,
    from lib\neopixel_led\palette_crgb.cpp:1:
    lib\neopixel_led\math_led.h:7:12: error: ‘uint8_t’ does not name a type
    7 | inline uint8_t AddByteSaturating0xff(uint8_t a, uint8_t b) {
    | ^~~~~~~
    lib\neopixel_led\math_led.h:15:12: error: ‘uint8_t’ does not name a type
    15 | inline uint8_t AddByteSaturating0xf7(uint8_t a, uint8_t b) {
    | ^~~~~~~
    lib\neopixel_led\math_led.h:23:12: error: ‘uint8_t’ does not name a type
    23 | inline uint8_t SubByteSaturating0x00(uint8_t a, uint8_t b) {
    | ^~~~~~~
    lib\neopixel_led\math_led.h:30:12: error: ‘uint8_t’ does not name a type
    30 | inline uint8_t MulByteSaturating0xff(uint8_t a, uint8_t b) {
    | ^~~~~~~
    In file included from lib\neopixel_led\crgb.h:5,
    from lib\neopixel_led\palette_crgb.h:4,
    from lib\neopixel_led\palette_crgb.cpp:1:
    lib\neopixel_led\scale_led.h:6:51: error: variable or field ‘ScaleColorComponentsWithThreshold’ declared void
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:6:51: error: ‘uint8_t’ was not declared in this scope
    lib\neopixel_led\scale_led.h:6:60: error: ‘red’ was not declared in this scope
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~
    lib\neopixel_led\scale_led.h:6:65: error: ‘uint8_t’ was not declared in this scope
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:6:74: error: ‘green’ was not declared in this scope
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~
    lib\neopixel_led\scale_led.h:6:81: error: ‘uint8_t’ was not declared in this scope
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:6:90: error: ‘blue’ was not declared in this scope
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~
    lib\neopixel_led\scale_led.h:6:96: error: ‘uint8_t’ was not declared in this scope
    6 | inline void ScaleColorComponentsWithThreshold(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:14:38: error: variable or field ‘ScaleColorComponents’ declared void
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:14:38: error: ‘uint8_t’ was not declared in this scope
    lib\neopixel_led\scale_led.h:14:47: error: ‘red’ was not declared in this scope
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~
    lib\neopixel_led\scale_led.h:14:52: error: ‘uint8_t’ was not declared in this scope
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:14:61: error: ‘green’ was not declared in this scope
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~
    lib\neopixel_led\scale_led.h:14:68: error: ‘uint8_t’ was not declared in this scope
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:14:77: error: ‘blue’ was not declared in this scope
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~
    lib\neopixel_led\scale_led.h:14:83: error: ‘uint8_t’ was not declared in this scope
    14 | inline void ScaleColorComponents(uint8_t& red, uint8_t& green, uint8_t& blue, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:22:12: error: ‘uint8_t’ does not name a type
    22 | inline uint8_t ScaleColorComponent(uint8_t color_component, uint8_t scale) {
    | ^~~~~~~
    lib\neopixel_led\scale_led.h:26:12: error: ‘uint8_t’ does not name a type
    26 | inline uint8_t ScaleColorComponentWithThreshold(uint8_t color_component, uint8_t scale) {
    | ^~~~~~~
    In file included from lib\neopixel_led\palette_crgb.h:4,
    from lib\neopixel_led\palette_crgb.cpp:1:
    lib\neopixel_led\crgb.h:164:24: error: expected ‘)’ before ‘input_red’
    164 | inline Crgb(uint8_t input_red, uint8_t input_green, uint8_t input_blue)
    | ~ ^~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:167:25: error: expected ‘)’ before ‘color’
    167 | inline Crgb(uint32_t color)
    | ~ ^~~~~~
    | )
    lib\neopixel_led\crgb.h:175:28: error: declaration of ‘operator=’ as non-function
    175 | inline Crgb& operator=(uint32_t color_code) {
    | ^~~~~~~~
    lib\neopixel_led\crgb.h:175:26: error: expected ‘;’ at end of member declaration
    175 | inline Crgb& operator=(uint32_t color_code) {
    | ^
    | ;
    lib\neopixel_led\crgb.h:175:36: error: expected ‘)’ before ‘color_code’
    175 | inline Crgb& operator=(uint32_t color_code) {
    | ~ ^~~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:196:30: error: declaration of ‘operator/=’ as non-function
    196 | inline Crgb& operator/= (uint8_t d) {
    | ^~~~~~~
    lib\neopixel_led\crgb.h:196:26: error: expected ‘;’ at end of member declaration
    196 | inline Crgb& operator/= (uint8_t d) {
    | ^~
    | ;
    lib\neopixel_led\crgb.h:196:37: error: expected ‘)’ before ‘d’
    196 | inline Crgb& operator/= (uint8_t d) {
    | ~ ^~
    | )
    lib\neopixel_led\crgb.h:203:31: error: declaration of ‘operator>>=’ as non-function
    203 | inline Crgb& operator>>= (uint8_t d) {
    | ^~~~~~~
    lib\neopixel_led\crgb.h:203:26: error: expected ‘;’ at end of member declaration
    203 | inline Crgb& operator>>= (uint8_t d) {
    | ^~~
    | ;
    lib\neopixel_led\crgb.h:203:38: error: expected ‘)’ before ‘d’
    203 | inline Crgb& operator>>= (uint8_t d) {
    | ~ ^~
    | )
    lib\neopixel_led\crgb.h:210:30: error: declaration of ‘operator*=’ as non-function
    210 | inline Crgb& operator*= (uint8_t d) {
    | ^~~~~~~
    lib\neopixel_led\crgb.h:210:26: error: expected ‘;’ at end of member declaration
    210 | inline Crgb& operator*= (uint8_t d) {
    | ^~
    | ;
    lib\neopixel_led\crgb.h:210:37: error: expected ‘)’ before ‘d’
    210 | inline Crgb& operator*= (uint8_t d) {
    | ~ ^~
    | )
    lib\neopixel_led\crgb.h:217:30: error: declaration of ‘operator%=’ as non-function
    217 | inline Crgb& operator%= (uint8_t scaledown) {
    | ^~~~~~~
    lib\neopixel_led\crgb.h:217:26: error: expected ‘;’ at end of member declaration
    217 | inline Crgb& operator%= (uint8_t scaledown) {
    | ^~
    | ;
    lib\neopixel_led\crgb.h:217:37: error: expected ‘)’ before ‘scaledown’
    217 | inline Crgb& operator%= (uint8_t scaledown) {
    | ~ ^~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:249:5: error: ‘SetFromRgb’ declared as an ‘inline’ field
    249 | inline Crgb& SetFromRgb(uint8_t input_red, uint8_t input_green, uint8_t input_blue) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:249:18: error: expected ‘;’ at end of member declaration
    249 | inline Crgb& SetFromRgb(uint8_t input_red, uint8_t input_green, uint8_t input_blue) {
    | ^~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:249:36: error: expected ‘)’ before ‘input_red’
    249 | inline Crgb& SetFromRgb(uint8_t input_red, uint8_t input_green, uint8_t input_blue) {
    | ~ ^~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:256:5: error: ‘SetFromColorCode’ declared as an ‘inline’ field
    256 | inline Crgb& SetFromColorCode(uint32_t color_code) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:256:18: error: expected ‘;’ at end of member declaration
    256 | inline Crgb& SetFromColorCode(uint32_t color_code) {
    | ^~~~~~~~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:256:43: error: expected ‘)’ before ‘color_code’
    256 | inline Crgb& SetFromColorCode(uint32_t color_code) {
    | ~ ^~~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:263:5: error: ‘AddByteToRgb’ declared as an ‘inline’ field
    263 | inline Crgb& AddByteToRgb(uint8_t byte_to_add) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:263:18: error: expected ‘;’ at end of member declaration
    263 | inline Crgb& AddByteToRgb(uint8_t byte_to_add) {
    | ^~~~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:263:38: error: expected ‘)’ before ‘byte_to_add’
    263 | inline Crgb& AddByteToRgb(uint8_t byte_to_add) {
    | ~ ^~~~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:270:5: error: ‘SubByteFromRgb’ declared as an ‘inline’ field
    270 | inline Crgb& SubByteFromRgb(uint8_t byte_to_sub) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:270:18: error: expected ‘;’ at end of member declaration
    270 | inline Crgb& SubByteFromRgb(uint8_t byte_to_sub) {
    | ^~~~~~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:270:40: error: expected ‘)’ before ‘byte_to_sub’
    270 | inline Crgb& SubByteFromRgb(uint8_t byte_to_sub) {
    | ~ ^~~~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:277:5: error: ‘FadeLightBy’ declared as an ‘inline’ field
    277 | inline Crgb& FadeLightBy(uint8_t fade_by) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:277:18: error: expected ‘;’ at end of member declaration
    277 | inline Crgb& FadeLightBy(uint8_t fade_by) {
    | ^~~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:277:37: error: expected ‘)’ before ‘fade_by’
    277 | inline Crgb& FadeLightBy(uint8_t fade_by) {
    | ~ ^~~~~~~~
    | )
    lib\neopixel_led\crgb.h:282:5: error: ‘FadeToBlackBy’ declared as an ‘inline’ field
    282 | inline Crgb& FadeToBlackBy(uint8_t fade_by) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:282:18: error: expected ‘;’ at end of member declaration
    282 | inline Crgb& FadeToBlackBy(uint8_t fade_by) {
    | ^~~~~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:282:39: error: expected ‘)’ before ‘fade_by’
    282 | inline Crgb& FadeToBlackBy(uint8_t fade_by) {
    | ~ ^~~~~~~~
    | )
    lib\neopixel_led\crgb.h:287:5: error: ‘ScaleBy’ declared as an ‘inline’ field
    287 | inline Crgb& ScaleBy(uint8_t scaledown) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:287:18: error: expected ‘;’ at end of member declaration
    287 | inline Crgb& ScaleBy(uint8_t scaledown) {
    | ^~~~~~~
    | ;
    lib\neopixel_led\crgb.h:287:33: error: expected ‘)’ before ‘scaledown’
    287 | inline Crgb& ScaleBy(uint8_t scaledown) {
    | ~ ^~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:297:5: error: ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleBy(neopixel_led::Crgb&)’ conflicts with a previous declaration
    297 | }
    | ^
    lib\neopixel_led\crgb.h:287:18: note: previous declaration ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleBy’
    287 | inline Crgb& ScaleBy(uint8_t scaledown) {
    | ^~~~~~~
    lib\neopixel_led\crgb.h:299:5: error: ‘ScaleNewObjectBy’ declared as an ‘inline’ field
    299 | inline Crgb& ScaleNewObjectBy(uint8_t scaledown) {
    | ^~~~~~
    lib\neopixel_led\crgb.h:299:18: error: expected ‘;’ at end of member declaration
    299 | inline Crgb& ScaleNewObjectBy(uint8_t scaledown) {
    | ^~~~~~~~~~~~~~~~
    | ;
    lib\neopixel_led\crgb.h:299:42: error: expected ‘)’ before ‘scaledown’
    299 | inline Crgb& ScaleNewObjectBy(uint8_t scaledown) {
    | ~ ^~~~~~~~~~
    | )
    lib\neopixel_led\crgb.h:311:5: error: ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleNewObjectBy(neopixel_led::Crgb&)’ conflicts with a previous declaration
    311 | }
    | ^
    lib\neopixel_led\crgb.h:299:18: note: previous declaration ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleNewObjectBy’
    299 | inline Crgb& ScaleNewObjectBy(uint8_t scaledown) {
    | ^~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:313:5: error: ‘uint8_t’ does not name a type
    313 | uint8_t red;
    | ^~~~~~~
    lib\neopixel_led\crgb.h:314:5: error: ‘uint8_t’ does not name a type
    314 | uint8_t green;
    | ^~~~~~~
    lib\neopixel_led\crgb.h:315:5: error: ‘uint8_t’ does not name a type
    315 | uint8_t blue;
    | ^~~~~~~
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb& neopixel_led::Crgb::operator+=(const neopixel_led::Crgb&)’:
    lib\neopixel_led\crgb.h:183:7: error: ‘red’ was not declared in this scope; did you mean ‘Red’?
    183 | red = math_led::AddByteSaturating0xff(red, other.red);
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:183:23: error: ‘AddByteSaturating0xff’ is not a member of ‘neopixel_led::math_led’
    183 | red = math_led::AddByteSaturating0xff(red, other.red);
    | ^~~~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:183:56: error: ‘const struct neopixel_led::Crgb’ has no member named ‘red’; did you mean ‘Red’?
    183 | red = math_led::AddByteSaturating0xff(red, other.red);
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:184:7: error: ‘green’ was not declared in this scope; did you mean ‘Green’?
    184 | green = math_led::AddByteSaturating0xff(green, other.green);
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:184:25: error: ‘AddByteSaturating0xff’ is not a member of ‘neopixel_led::math_led’
    184 | green = math_led::AddByteSaturating0xff(green, other.green);
    | ^~~~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:184:60: error: ‘const struct neopixel_led::Crgb’ has no member named ‘green’; did you mean ‘Green’?
    184 | green = math_led::AddByteSaturating0xff(green, other.green);
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:185:7: error: ‘blue’ was not declared in this scope; did you mean ‘Blue’?
    185 | blue = math_led::AddByteSaturating0xff(blue, other.blue);
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h:185:24: error: ‘AddByteSaturating0xff’ is not a member of ‘neopixel_led::math_led’
    185 | blue = math_led::AddByteSaturating0xff(blue, other.blue);
    | ^~~~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:185:58: error: ‘const struct neopixel_led::Crgb’ has no member named ‘blue’; did you mean ‘Blue’?
    185 | blue = math_led::AddByteSaturating0xff(blue, other.blue);
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb& neopixel_led::Crgb::operator-=(const neopixel_led::Crgb&)’:
    lib\neopixel_led\crgb.h:190:7: error: ‘red’ was not declared in this scope; did you mean ‘Red’?
    190 | red = math_led::SubByteSaturating0x00(red, other.red);
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:190:23: error: ‘SubByteSaturating0x00’ is not a member of ‘neopixel_led::math_led’
    190 | red = math_led::SubByteSaturating0x00(red, other.red);
    | ^~~~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:190:56: error: ‘const struct neopixel_led::Crgb’ has no member named ‘red’; did you mean ‘Red’?
    190 | red = math_led::SubByteSaturating0x00(red, other.red);
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:191:7: error: ‘green’ was not declared in this scope; did you mean ‘Green’?
    191 | green = math_led::SubByteSaturating0x00(green, other.green);
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:191:25: error: ‘SubByteSaturating0x00’ is not a member of ‘neopixel_led::math_led’
    191 | green = math_led::SubByteSaturating0x00(green, other.green);
    | ^~~~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:191:60: error: ‘const struct neopixel_led::Crgb’ has no member named ‘green’; did you mean ‘Green’?
    191 | green = math_led::SubByteSaturating0x00(green, other.green);
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:192:7: error: ‘blue’ was not declared in this scope; did you mean ‘Blue’?
    192 | blue = math_led::SubByteSaturating0x00(blue, other.blue);
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h:192:24: error: ‘SubByteSaturating0x00’ is not a member of ‘neopixel_led::math_led’
    192 | blue = math_led::SubByteSaturating0x00(blue, other.blue);
    | ^~~~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:192:58: error: ‘const struct neopixel_led::Crgb’ has no member named ‘blue’; did you mean ‘Blue’?
    192 | blue = math_led::SubByteSaturating0x00(blue, other.blue);
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb& neopixel_led::Crgb::operator–()’:
    lib\neopixel_led\crgb.h:223:23: error: no match for call to ‘(neopixel_led::Crgb) (int)’
    223 | SubByteFromRgb(1);
    | ^
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb& neopixel_led::Crgb::operator++()’:
    lib\neopixel_led\crgb.h:228:21: error: no match for call to ‘(neopixel_led::Crgb) (int)’
    228 | AddByteToRgb(1);
    | ^
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb neopixel_led::Crgb::operator–(int)’:
    lib\neopixel_led\crgb.h:234:23: error: no match for call to ‘(neopixel_led::Crgb) (int)’
    234 | SubByteFromRgb(1);
    | ^
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb neopixel_led::Crgb::operator++(int)’:
    lib\neopixel_led\crgb.h:240:21: error: no match for call to ‘(neopixel_led::Crgb) (int)’
    240 | AddByteToRgb(1);
    | ^
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb::operator bool() const’:
    lib\neopixel_led\crgb.h:245:14: error: ‘red’ was not declared in this scope; did you mean ‘Red’?
    245 | return red || green || blue;
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:245:21: error: ‘green’ was not declared in this scope; did you mean ‘Green’?
    245 | return red || green || blue;
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:245:30: error: ‘blue’ was not declared in this scope; did you mean ‘Blue’?
    245 | return red || green || blue;
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleBy(neopixel_led::Crgb&)’:
    lib\neopixel_led\crgb.h:293:7: error: ‘red’ was not declared in this scope; did you mean ‘Red’?
    293 | red = scale_led::ScaleColorComponent(red, scaledown.red);
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:293:24: error: ‘ScaleColorComponent’ is not a member of ‘neopixel_led::scale_led’
    293 | red = scale_led::ScaleColorComponent(red, scaledown.red);
    | ^~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:293:59: error: ‘struct neopixel_led::Crgb’ has no member named ‘red’; did you mean ‘Red’?
    293 | red = scale_led::ScaleColorComponent(red, scaledown.red);
    | ^~~
    | Red
    lib\neopixel_led\crgb.h:294:7: error: ‘green’ was not declared in this scope; did you mean ‘Green’?
    294 | green = scale_led::ScaleColorComponent(green, scaledown.green);
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:294:26: error: ‘ScaleColorComponent’ is not a member of ‘neopixel_led::scale_led’
    294 | green = scale_led::ScaleColorComponent(green, scaledown.green);
    | ^~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:294:63: error: ‘struct neopixel_led::Crgb’ has no member named ‘green’; did you mean ‘Green’?
    294 | green = scale_led::ScaleColorComponent(green, scaledown.green);
    | ^~~~~
    | Green
    lib\neopixel_led\crgb.h:295:7: error: ‘blue’ was not declared in this scope; did you mean ‘Blue’?
    295 | blue = scale_led::ScaleColorComponent(blue, scaledown.blue);
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h:295:25: error: ‘ScaleColorComponent’ is not a member of ‘neopixel_led::scale_led’
    295 | blue = scale_led::ScaleColorComponent(blue, scaledown.blue);
    | ^~~~~~~~~~~~~~~~~~~
    lib\neopixel_led\crgb.h:295:61: error: ‘struct neopixel_led::Crgb’ has no member named ‘blue’; did you mean ‘Blue’?
    295 | blue = scale_led::ScaleColorComponent(blue, scaledown.blue);
    | ^~~~
    | Blue
    lib\neopixel_led\crgb.h: In member function ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleNewObjectBy(neopixel_led::Crgb&)’:
    lib\neopixel_led\crgb.h:308:29: error: no match for call to ‘(neopixel_led::Crgb) (neopixel_led::Crgb&)’
    308 | temp.ScaleBy(scaledown);
    | ^
    lib\neopixel_led\crgb.h:309:15: error: use of deleted function ‘neopixel_led::Crgb& neopixel_led::Crgb::operator=(const neopixel_led::Crgb&)’
    309 | *this = temp;
    | ^~~~
    lib\neopixel_led\crgb.h:173:18: note: ‘neopixel_led::Crgb& neopixel_led::Crgb::operator=(const neopixel_led::Crgb&)’ is implicitly deleted because the default definition would be ill-formed:
    173 | inline Crgb& operator=(const Crgb& other) = default;
    | ^~~~~~~~
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::SetFromRgb’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::SetFromColorCode’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::AddByteToRgb’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::SubByteFromRgb’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::FadeLightBy’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::FadeToBlackBy’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleBy’, can’t use default assignment operator
    lib\neopixel_led\crgb.h:173:18: error: non-static reference member ‘neopixel_led::Crgb& neopixel_led::Crgb::ScaleNewObjectBy’, can’t use default assignment operator
    *** [.pio\build\nanorp2040connect\lib186\neopixel_led\palette_crgb.cpp.o] Error 1

If you need the whole code base i can upload it on github.

Yes, please upload that.

here is it: GitHub - MRn0b0dy0/Neopixel_led; i am really greatful if you can help me with that, i’ve been stucked for a week.

So why does the code just start using uint8_t like it’s always available without #include <stdint.h>?

It took me literally 2 minutes to fix this. Just merge PR https://github.com/MRn0b0dy0/Neopixel_led/pull/1.

OMG i can’t belive, can you explain me what i was doing wrong. thank you again

See

Just inspect the code diff of the PR to see what changed.

Yes thank you again. Have a great day

(post deleted by author)

I’m unfortunatly still having problem with linking user defined library.