esp32

2024-05-312451
AI 快速预览详细 收起
本文解决了在使用 ESP32-A2DP 库时遇到的编译错误。具体报错信息为 'max' 未声明。通过将 `max` 替换为 `std::max`,可以解决这个问题。文章详细解析了根因并提供了具体的解决方案,帮助用户快速解决编译错误,节省调试时间。
有不有好心人帮我看看,我已经打包上传了,报错的我实在看不懂

In file included from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSinkQueued.h:3,                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSinkQueued.cpp:2:
c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h: In member function 'virtual void BluetoothA2DPSink::set_avrc_rn_play_pos_callback(void (*)(uint32_t), uint32_t)':
c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h:233:30: error: 'max' was not declared in this scope
  233 |     this->notif_interval_s = max(notif_interval,(uint32_t)1);
      |                              ^~~
c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h:233:30: note: suggested alternatives:
In file included from c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\algorithm:61,
                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\SoundData.h:19,
                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPCommon.h:58,
                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h:17:
c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\bits\stl_algo.h:5756:5: note:   'std::max'
5756 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\algorithm:63:
c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\bits\ranges_algo.h:3011:29: note:   'std::ranges::max'
3011 |   inline constexpr __max_fn max{};
      |                             ^~~
In file included from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.cpp:16:
c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h: In member function 'virtual void BluetoothA2DPSink::set_avrc_rn_play_pos_callback(void (*)(uint32_t), uint32_t)':
c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h:233:30: error: 'max' was not declared in this scope
  233 |     this->notif_interval_s = max(notif_interval,(uint32_t)1);
      |                              ^~~
c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h:233:30: note: suggested alternatives:
In file included from c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\algorithm:61,
                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\SoundData.h:19,
                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPCommon.h:58,
                 from c:\Users\Lenovo\Documents\Arduino\libraries\ESP32-A2DP-main\src\BluetoothA2DPSink.h:17:
c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\bits\stl_algo.h:5756:5: note:   'std::max'
5756 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
In file included from c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\algorithm:63:
c:\users\lenovo\appdata\local\arduino15\packages\esp32\tools\xtensa-esp32-elf-gcc\esp-12.2.0_20230208\xtensa-esp32-elf\include\c++\12.2.0\bits\ranges_algo.h:3011:29: note:   'std::ranges::max'
3011 |   inline constexpr __max_fn max{};
      |                             ^~~

exit status 1

Compilation error: exit status 1

sketch_may31a.ino

397 Bytes, 下载次数: 3296

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(2)
小叶子12138
小叶子12138
作者
源代码是从这里找的
https://gitcode.com/pschatzmann/ESP32-A2DP?utm_source=csdn_github_accelerator&isLogin=1
是跟着CSDN上一步一步学的https://blog.csdn.net/donghaodonghaodo/article/details/133635414
YeezB
YeezB
你的库不是Arduino官方库管理里面搜得到的。别人想帮你排查问题都还要自己找对应的库。
如果是编译问题,你需要把你编译过程中所有需要的“轮子”都提供在论坛里面。
如果原始代码也不是你写的,你需要把源代码在哪里找到的也提供出来。
这样能节省大家的时间
- 没有更多了 -