PlatformIO Community

Teensy3.6 micro-ros compiling error due to NativeEthernet library

I tried to create a simple Micro-Ros node that is a publisher on Teensy3.6 using micro_ros_arduino library as a dependency as it is mentioned in all the tutorials.
While compiling the code, there is an error that is thrown

"Compiling .pio\build\teensy36\libc62\NativeEthernet\NativeMdns.cpp.o
C:\Users\varug\.platformio\packages\framework-arduinoteensy\libraries\NativeEthernet\src\NativeEthernet.cpp: In static member function 'static int EthernetClass::begin(uint8_t*, long unsigned int, long unsigned int)':
C:\Users\varug\.platformio\packages\framework-arduinoteensy\libraries\NativeEthernet\src\NativeEthernet.cpp:126:30: error: 'FNET_CPU_ETH0_IF' was not declared in this scope
           if(fnet_netif_init(FNET_CPU_ETH0_IF, mac, 6) != FNET_ERR){
                              ^
C:\Users\varug\.platformio\packages\framework-arduinoteensy\libraries\NativeEthernet\src\NativeEthernet.cpp: In static member function 'static void EthernetClass::begin(uint8_t*, IPAddress, IPAddress, IPAddress, IPAddress)':
C:\Users\varug\.platformio\packages\framework-arduinoteensy\libraries\NativeEthernet\src\NativeEthernet.cpp:258:30: error: 'FNET_CPU_ETH0_IF' was not declared in this scope
           if(fnet_netif_init(FNET_CPU_ETH0_IF, mac, 6) != FNET_ERR){
                              ^
*** [.pio\build\teensy36\libc62\NativeEthernet\NativeEthernet.cpp.o] Error 1
Compiling .pio\build\teensy36\libc62\NativeEthernet\Nativesocket.cpp.o"

This error is not occurring if I use teensy 4.1 as the platform board, but it comes for teensy3.6
This error also comes when I try to compile the example code given on the micro-ros tutorial.

The library found in C:\Users\<user>\.platformio\packages\framework-arduinoteensy\libraries\NativeEthernet per its library.json is

{
  "name": "NativeEthernet",
  "keywords": "http, web, server, ethernet",
  "description": "Native Ethernet Library for Teensy 4.1",
  "repository":
  {
    "type": "git",
    "url": "https://github.com/vjmuzik/NativeEthernet.git"
  },
  "frameworks": "arduino",
  "platforms": "teensy"
}

which explicitly states

Native Ethernet Library For Teensy 4.1

in the repo.

That repo however is a fork of https://github.com/PaulStoffregen/Ethernet which claims compatiblity with Teensy 3.6.

I can only suggest you try to ignore the built-in library and inject a dependency to the more general library. For that, add

; ignore Teensy 4.1-only lib
lib_ignore = NativeEthernet
; grab more general lib from Github
lib_deps = 
   https://github.com/PaulStoffregen/Ethernet/archive/refs/heads/master.zip

to the platformio.ini.