arduino - 如何解决 Arduino 代码 ESP32 Board + PS4 控制器中的此错误
问题描述
在此错误消息的末尾有“退出状态1”
为板 ESP32 开发模块编译错误。
有人可以解释一下它的含义(原因)以及如何解决它吗?
Arduino: 1.8.13 (Windows 10), Board: "ESP32 Dev Module, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi/BT), QIO, 80MHz, 4MB (32Mb), 921600 , 没有任何”
编译内核...使用预编译内核:C:\Users\Zero\AppData\Local\Temp\arduino_cache_137710\core\core_faddaac1d69e7dde1f9d30f3045a530a.a 将所有内容链接在一起...“C:\Users\Zero\AppData\Local\Arduino15\packages \esp32\tools\xtensa-esp32-elf-gcc\1.22.0-97-gc752ad5-5.2.0/bin/xtensa-esp32-elf-gcc" -nostdlib "-LC:\Users\Zero\AppData\Local\ Arduino15\packages\esp32\hardware\esp32\1.0.6/tools/sdk/lib" "-LC:\Users\Zero\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6/tools/sdk /ld" -T esp32_out.ld -T esp32.project.ld -T esp32.rom.ld -T esp32.peripherals.ld -T esp32.rom.libgcc.ld -T esp32.rom.spiram_incompatible_fns.ld -u esp_app_desc -u ld_include_panic_highint_hdl -u call_user_start_cpu0 -Wl,--gc-sections -Wl,-static -Wl,--undefined=uxTopUsedPriority -u __cxa_guard_dummy -u __cxx_fatal_exception -Wl,--start-group "C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\sketch\Pokus_o_Arduino_PS4_a_GPIO-23_50Hz_1000-2000us_do_ODrivu.ino.cpp.o" "C:\Users\Zero\AppData\Local\Temp\arduino_build_197658 \libraries\ESP32Servo\ESP32PWM.cpp.o" "C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\ESP32Servo.cpp.o" "C:\Users\Zero\AppData\Local\Temp \arduino_build_197658\libraries\ESP32Servo\ESP32Tone.cpp.o" "C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\analogWrite.cpp.o"\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\ESP32Servo.cpp.o" "C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\ESP32Tone.cpp.o" " C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\analogWrite.cpp.o"\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\ESP32Servo.cpp.o" "C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\ESP32Tone.cpp.o" " C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\ESP32Servo\analogWrite.cpp.o"
“C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4.co”
“C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co”
“C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_parser.co”
“C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_spp.co”
“C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\PS4Controller.cpp.o”
“C:\Users\Zero\AppData\Local\Temp\arduino_cache_137710\core\core_faddaac1d69e7dde1f9d30f3045a530a.a”-lgcc -lesp_websocket_client -lwpa2 -ldetection -lesp_https_server -lwps -lhal -lconsole -lpe -lsoc -lsdmmc -lpthread -llog -lesp_http_client -ljson -lmesh -lesp32-camera -lnet80211 -lwpa_supplicant -lc -lmqtt -lcxx -lesp_https_ota -lulp -lefuse -lpp -lmdns -lbt -lwpa -lspiffs -lheap -limage_util -lunity -lrtc -lmbedtls -lface_recognition -lnghttp -ljsmn -lpenssl -lcore -lfatfs -lm -lprotocomm -lsmartconfig -lxtensa-debug-module -ldl -lesp_event -lesp-tls -lfd -lespcoredump -lesp_http_server -lfr -lsmartconfig_ack -lwear_levelling -ltcp_transport -llwip -lphy -lvfs -lcoap -lesp32 -llibsodium -lbootloader_support -ldriver -lcoexist -lasio -lod -lmicro-ecc -lesp_ringbuf -ldetection_cat_face -lapp_update -lespnow -lface_detection -lapp_trace -lnewlib -lbtdm_app -lwifi_provisioning -lfreertos -lfreemodbus -lethernet -lnvs_flash -lspi_flash -lc_nano-lexpat -lfb_gfx -lprotobuf -c -lesp_adc_cal -ltcpip_adapter -lstdc++ -Wl,--end-group -Wl,-EL -o
“C:\Users\Zero\AppData\Local\Temp\arduino_build_197658/Pokus_o_Arduino_PS4_a_GPIO-23_50Hz_1000-2000us_do_ODrivu.ino.elf”
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:(.literal.gapInitService+0x1c):未定义对“GAP_ConnOpen”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:(.literal.gapEventHandle+0xc):未定义对“GAP_ConnGetL2CAPCid”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:(.literal.gapEventHandle+0x10):未定义对“GAP_ConnBTRead”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:(.literal.gapSendHid+0x14):未定义对“GAP_ConnBTWrite”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:在函数“gapInitService”中:
C:\Users\Zero\Documents\Arduino\libraries\PS4-esp32-master-AED3\src/ps4_gap.c:48:未定义对“GAP_ConnOpen”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:在函数“gapUpdateConnected”中:
C:\Users\Zero\Documents\Arduino\libraries\PS4-esp32-master-AED3\src/ps4_gap.c:48:未定义对“GAP_ConnGetL2CAPCid”的引用
C:\Users\Zero\Documents\Arduino\libraries\PS4-esp32-master-AED3\src/ps4_gap.c:48:未定义对“GAP_ConnGetL2CAPCid”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:在函数“gapEventHandle”中:
C:\Users\Zero\Documents\Arduino\libraries\PS4-esp32-master-AED3\src/ps4_gap.c:48:未定义对“GAP_ConnBTRead”的引用
C:\Users\Zero\AppData\Local\Temp\arduino_build_197658\libraries\PS4-esp32-master-AED3\ps4_gap.co:在函数“gapSendHid”中:
C:\Users\Zero\Documents\Arduino\libraries\PS4-esp32-master-AED3\src/ps4_gap.c:88: undefined reference to `GAP_ConnBTWrite' collect2.exe: error: ld returned 1 exit status
在文件夹中使用版本 0.9.0 的库 ESP32Servo:C:\Users\Zero\Documents\Arduino\libraries\ESP32Servo
在文件夹中使用版本 2.0 的库 PS4-esp32-master-AED3:C:\Users\Zero\Documents\Arduino\libraries\PS4-esp32-master-AED3
退出状态 1
为板 ESP32 开发模块编译错误。
解决方案
你的 Arduino IDE 是什么版本的?我在使用 1.5.x 版本时已经遇到了这个错误,所以我重新安装了 1.6.x 版本并编译了代码。
这种链接器 (ld) 错误通常意味着函数已声明(可能在头文件中)但实际上并未定义(通常在 .cpp 文件中完成)。这可能是因为该库没有正确和完整地安装。
推荐阅读
- java - 将 UTC 时间字符串转换为 UTC 毫秒
- javascript - 在命名空间打字稿中合并接口
- php - Blade laravel 接收自定义错误信息数组(数组到字符串的转换)
- azure-devops - 将 azure board 从一个组织转移到另一个组织
- discord - Discord.js V11 系统统计命令
- javascript - 反应:useCallback - useCallback 与空依赖数组 VS 根本不使用 useCallback
- mysql - 如果它不存在,则从另一列替换值
- debugging - 为什么我可以在符号地址处中断,而不是指定地址?
- vba - 当电子邮件在 Outlook 中标记为完成时自动发送回复
- python - `if` 语句的冗余条件