Closed johncblacker closed 2 years ago
I have a quick question for you...do you have the ARDUCAM 32S board manager version 1.0.0 installed or did you find a later version?
Looks like the Arducam library does not support that ESP32 board.
You would need to contact Arducam to sort that out.
Not an issue with the SX12xx library
I'm wanting to get the subject sketch to compile and run on the Arducam esp32s uno psram board, primarily because it already has an SD card on the board. However, I'm getting compile errors that appear related to esp32 xtensa tools functions. Here's my compile output: <<<<<<<<<<<<<<<<<< compile output log >>>>>>>>>>>>>>>>>>>>>>>> In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:39:0, from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:55, from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:79, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\array:115:26: error: macro "swap" requires 3 arguments, but only 1 given swap(array& other) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\array:116:72: error: macro "swap" requires 3 arguments, but only 2 given noexcept(noexcept(swap(std::declval<_Tp&>(), std::declval<_Tp&>()))) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\array:274:56: error: macro "swap" passed 4 arguments, but takes just 3 swap(array<_Tp, _Nm>& one, array<_Tp, _Nm>& two) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\array:275:39: error: macro "swap" requires 3 arguments, but only 1 given noexcept(noexcept(one.swap(two))) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\array:276:23: error: macro "swap" requires 3 arguments, but only 1 given { one.swap(two); } ^ In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:55:0, from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:79, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:328:31: error: macro "swap" requires 3 arguments, but only 2 given std::declval<_Head&>())) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:332:36: error: macro "swap" requires 3 arguments, but only 2 given swap(_M_head(this), _M_head(__in)); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:454:76: error: macro "swap" requires 3 arguments, but only 2 given noexcept(noexcept(swap(std::declval<_Head&>(), std::declval<_Head&>()))) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:457:36: error: macro "swap" requires 3 arguments, but only 2 given swap(_M_head(this), _M_head(__in)); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:580:23: error: macro "swap" requires 3 arguments, but only 1 given swap(tuple& in) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:590:23: error: macro "swap" requires 3 arguments, but only 1 given void swap(tuple&) noexcept { / no-op / } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:740:23: error: macro "swap" requires 3 arguments, but only 1 given swap(tuple& in) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:1132:60: error: macro "swap" requires 3 arguments, but only 2 given swap(tuple<_Elements...>& x, tuple<_Elements...>& y) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:1133:35: error: macro "swap" requires 3 arguments, but only 1 given noexcept(noexcept(x.swap(y))) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\tuple:1134:19: error: macro "swap" requires 3 arguments, but only 1 given { x.swap(y); } ^ In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:79:0, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2035:16: error: macro "swap" requires 3 arguments, but only 1 given x.swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2075:26: error: macro "swap" requires 3 arguments, but only 1 given function(__x).swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2093:37: error: macro "swap" requires 3 arguments, but only 1 given function(std::move(x)).swap(*this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2136:52: error: macro "swap" requires 3 arguments, but only 1 given function(std::forward<_Functor>(f)).swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2145:28: error: macro "swap" requires 3 arguments, but only 1 given function(__f).swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2158:30: error: macro "swap" requires 3 arguments, but only 1 given void swap(function& x) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2160:38: error: macro "swap" requires 3 arguments, but only 2 given std::swap(_M_functor, __x._M_functor); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2161:38: error: macro "swap" requires 3 arguments, but only 2 given std::swap(_M_manager, x._M_manager); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2162:38: error: macro "swap" requires 3 arguments, but only 2 given std::swap(_M_invoker, x._M_invoker); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2373:70: error: macro "swap" requires 3 arguments, but only 2 given swap(function<_Res(_Args...)>& x, function<_Res(_Args...)>& y) ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\functional:2374:19: error: macro "swap" requires 3 arguments, but only 1 given { x.swap(y); } ^ In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:81:0, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:342:29: error: macro "swap" requires 3 arguments, but only 2 given swap(std::get<0>(_M_t), __p); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:349:27: error: macro "swap" requires 3 arguments, but only 1 given swap(unique_ptr& u) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:352:21: error: macro "swap" requires 3 arguments, but only 2 given swap(_M_t, u._M_t); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:579:29: error: macro "swap" requires 3 arguments, but only 2 given swap(std::get<0>(_M_t), p); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:591:27: error: macro "swap" requires 3 arguments, but only 1 given swap(unique_ptr& u) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:594:21: error: macro "swap" requires 3 arguments, but only 2 given swap(_M_t, u._M_t); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:618:28: error: macro "swap" passed 4 arguments, but takes just 3 unique_ptr<_Tp, _Dp>& y) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\unique_ptr.h:619:19: error: macro "swap" requires 3 arguments, but only 1 given { x.swap(y); } ^ In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr.h:52:0, from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:82, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:992:43: error: macro "swap" requires 3 arguments, but only 1 given shared_ptr(std::move(r)).swap(*this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1000:41: error: macro "swap" requires 3 arguments, but only 1 given __shared_ptr(std::move(r)).swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1008:43: error: macro "swap" requires 3 arguments, but only 1 given __shared_ptr(std::move(__r)).swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1016:43: error: macro "swap" requires 3 arguments, but only 1 given shared_ptr(std::move(__r)).swap(*this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1022:34: error: macro "swap" requires 3 arguments, but only 1 given { shared_ptr().swap(this); } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1030:32: error: macro "swap" requires 3 arguments, but only 1 given __shared_ptr(__p).swap(this); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1036:37: error: macro "swap" requires 3 arguments, but only 1 given { shared_ptr(p, d).swap(*this); } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1041:60: error: macro "swap" requires 3 arguments, but only 1 given { shared_ptr(p, d, std::move(a)).swap(*this); } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1074:43: error: macro "swap" requires 3 arguments, but only 2 given swap(__shared_ptr<_Tp, _Lp>& other) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1076:34: error: macro "swap" requires 3 arguments, but only 2 given std::swap(_M_ptr, other._M_ptr); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1299:66: error: macro "swap" passed 4 arguments, but takes just 3 swap(__shared_ptr<_Tp, _Lp>& a, shared_ptr<_Tp, _Lp>& __b) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1300:19: error: macro "swap" requires 3 arguments, but only 1 given { a.swap(b); } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1454:32: error: macro "swap" requires 3 arguments, but only 1 given { weak_ptr().swap(*this); } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1457:27: error: macro "swap" requires 3 arguments, but only 1 given swap(weak_ptr& s) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1459:30: error: macro "swap" requires 3 arguments, but only 2 given std::swap(_M_ptr, s._M_ptr); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1484:62: error: macro "swap" passed 4 arguments, but takes just 3 swap(__weak_ptr<_Tp, _Lp>& a, weak_ptr<_Tp, _Lp>& __b) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_base.h:1485:19: error: macro "swap" requires 3 arguments, but only 1 given { a.swap(b); } ^ In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:82:0, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr.h:440:52: error: macro "swap" requires 3 arguments, but only 2 given swap(shared_ptr<_Tp>& a, shared_ptr<_Tp>& b) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr.h:441:19: error: macro "swap" requires 3 arguments, but only 1 given { a.swap(b); } ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr.h:533:48: error: macro "swap" requires 3 arguments, but only 2 given swap(weak_ptr<_Tp>& a, weak_ptr<_Tp>& b) noexcept ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr.h:534:19: error: macro "swap" requires 3 arguments, but only 1 given { a.swap(b); } ^ In file included from c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\memory:83:0, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\FS\src/FS.h:24, from C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD\src/SD.h:17, from C:\Users\jobla\Documents\Arduino\libraries\SX12XX-LoRa-master\src/DTSDlibrary.h:15, from C:\Users\jobla\Documents\Arduino\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera\JB-ARDUCAM-UNO-ESP32S-PSRAM-238_StuartCAM_LoRa_Remote_Camera.ino:48: c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_atomic.h:138:20: error: macro "swap" requires 3 arguments, but only 1 given p->swap(r); // use swap so that **__p not destroyed while lock held ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_atomic.h:153:20: error: macro "swap" requires 3 arguments, but only 1 given p->swap(r); // use swap so that **p not destroyed while lock held ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_atomic.h:175:20: error: macro "swap" requires 3 arguments, but only 1 given p->swap(r); ^ c:\users\jobla\appdata\local\arduino15\packages\arducam_esp32s\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\bits\shared_ptr_atomic.h:194:20: error: macro "swap" requires 3 arguments, but only 1 given p->swap(r); ^ Multiple libraries were found for "ArduCAM.h" Used: C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\ArduCAM Not used: C:\Users\jobla\Documents\Arduino\libraries\ArduCAM Multiple libraries were found for "SD.h" Used: C:\Users\jobla\AppData\Local\Arduino15\packages\ArduCAM_ESP32S\hardware\esp32\1.0.0\libraries\SD Not used: C:\Program Files (x86)\Arduino\libraries\SD exit status 1 <<<<<<<<<<<<<<<<<<<< end of log for compile >>>>>>>>>>>>>>>>>>>>>>>>>>>> I have successfully run an ARDUCAM example sketch using this board without error, but it has "#include SD_MMC.h. So, I tried modifying your DTSDlibrary.h by adding another #ifdef for SDMMC and included SD_MMC.h, but I see that SD_MMC.h includes FS.h which is where the errors emanate from. So, I can't figure out why the same error(s) wouldn't show up with your code, say on a DUE which includes SD.h that also includes FS.h. But, of course, the SD.h library on the DUE or plain Arduino platform would be getting different versions of SD.h and FS.h. But, when compiling the original ARDUCAM example script, which is using the ESP32 platform, I would have expected the same errors to occur, but they don't. Any ideas about this problem.