fabio-d / esp32-tuntap

ESP32 as a wireless dongle
GNU General Public License v3.0
101 stars 12 forks source link

error in compilation #1

Open ganq76 opened 1 month ago

ganq76 commented 1 month ago

Thank you for your project. I want to compile with Windows 11 but I have an error in compilation after 'idf.py build'

C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:35:8: error: 'RingbufHandle_t' does not name a type; did you mean 'intr_handle_t'? 35 | static RingbufHandle_t wifiToSerial, serialToWifi; | ^~~~~~~~~~~~~~~ | intr_handle_t C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp: In function 'void wifiTxTask(void*)': C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:79:58: error: 'serialToWifi' was not declared in this scope 79 | char *buffer = (char*)xRingbufferReceive(serialToWifi, &len, portMAX_DELAY); | ^~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:79:39: error: 'xRingbufferReceive' was not declared in this scope; did you mean 'xStreamBufferReceive'? 79 | char *buffer = (char*)xRingbufferReceive(serialToWifi, &len, portMAX_DELAY); | ^~~~~~~~~~~~~~~~~~ | xStreamBufferReceive C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:108:17: error: 'vRingbufferReturnItem' was not declared in this scope 108 | vRingbufferReturnItem(serialToWifi, buffer); | ^~~~~~~~~~~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp: In function 'esp_err_t wifiRxCallback(void*, uint16_t, void*)': C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:115:25: error: 'wifiToSerial' was not declared in this scope 115 | xRingbufferSend(wifiToSerial, buffer, len, 0); | ^~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:115:9: error: 'xRingbufferSend' was not declared in this scope; did you mean 'xStreamBufferSend'? 115 | xRingbufferSend(wifiToSerial, buffer, len, 0); | ^~~~~~~~~~~~~~~ | xStreamBufferSend C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp: In function 'u8_t onRawInput(void*, raw_pcb*, pbuf*, const ip_addr_t*)': C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:123:36: error: 'wifiToSerial' was not declared in this scope 123 | if (xRingbufferSendAcquire(wifiToSerial, &item, p->tot_len, 0)) | ^~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:123:13: error: 'xRingbufferSendAcquire' was not declared in this scope 123 | if (xRingbufferSendAcquire(wifiToSerial, &item, p->tot_len, 0)) | ^~~~~~~~~~~~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:126:17: error: 'xRingbufferSendComplete' was not declared in this scope 126 | xRingbufferSendComplete(wifiToSerial, item); | ^~~~~~~~~~~~~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp: In function 'void uartTxTask(void*)': C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:255:58: error: 'wifiToSerial' was not declared in this scope 255 | char *buffer = (char*)xRingbufferReceive(wifiToSerial, &len, portMAX_DELAY); | ^~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:255:39: error: 'xRingbufferReceive' was not declared in this scope; did you mean 'xStreamBufferReceive'? 255 | char *buffer = (char*)xRingbufferReceive(wifiToSerial, &len, portMAX_DELAY); | ^~~~~~~~~~~~~~~~~~ | xStreamBufferReceive C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:273:17: error: 'vRingbufferReturnItem' was not declared in this scope 273 | vRingbufferReturnItem(wifiToSerial, buffer); | ^~~~~~~~~~~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp: In function 'void uartRxTask(void*)': C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:306:41: error: 'serialToWifi' was not declared in this scope 306 | xRingbufferSend(serialToWifi, &buffer[4], len, 0); | ^~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:306:25: error: 'xRingbufferSend' was not declared in this scope; did you mean 'xStreamBufferSend'? 306 | xRingbufferSend(serialToWifi, &buffer[4], len, 0); | ^~~~~~~~~~~~~~~ | xStreamBufferSend C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp: In function 'void app_main()': C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:360:9: error: 'wifiToSerial' was not declared in this scope 360 | wifiToSerial = xRingbufferCreate(1024 * 32, RINGBUF_TYPE_NOSPLIT); | ^~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:360:53: error: 'RINGBUF_TYPE_NOSPLIT' was not declared in this scope 360 | wifiToSerial = xRingbufferCreate(1024 * 32, RINGBUF_TYPE_NOSPLIT); | ^~~~~~~~~~~~~~~~~~~~ C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:360:24: error: 'xRingbufferCreate' was not declared in this scope; did you mean 'xStreamBufferCreate'? 360 | wifiToSerial = xRingbufferCreate(1024 * 32, RINGBUF_TYPE_NOSPLIT); | ^~~~~~~~~~~~~~~~~ | xStreamBufferCreate C:/Espressif/frameworks/esp-idf-v5.3.1/esp32-tuntap/firmware/main/main.cpp:361:9: error: 'serialToWifi' was not declared in this scope 361 | serialToWifi = xRingbufferCreate(1024 * 16, RINGBUF_TYPE_NOSPLIT); | ^~~~~~~~~~~~ ninja: build stopped: subcommand failed.

Can you help me ?

rena2019 commented 1 day ago

Try with IDF v4.3 instead of v5.3.1. I faced the same issue while compiling under Ubuntu and switched to the older version