IOoo
IOoo copied to clipboard
... SPI::SharedResources&)' is implicitly deleted because the default definition would be ill-formed
I'm running into the following problem when I try to compile. Here's the output of my uname -a if it helps. I'm running a Wheezy release, with an updated 3.8 real time kernel.
Linux bbb-rs02 4.1.34-bone-rt-r24 #1 PREEMPT RT Thu Oct 13 04:12:45 UTC 2016 armv7l GNU/Linux
Any ideas how to fix? Alternately, I only need GPIO functionality. Is there any way to split only that out to bypass this error?
Thanks for any help! Dave
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/bash /root/devel/3rdparty/IOoo/IOoo/missing --run autoheader)
rm -f stamp-h1
touch config.h.in
cd . && /bin/bash ./config.status config.h
config.status: creating config.h
config.status: config.h is unchanged
make all-recursive
make[1]: Entering directory `/root/devel/3rdparty/IOoo/IOoo'
Making all in src
make[2]: Entering directory `/root/devel/3rdparty/IOoo/IOoo/src'
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_HW_PLATFORM_BEAGLEBONE -D_KERNEL_VERSION=\"0.0\" -DDEBUG_LEVEL=0 -g -O2 -std=gnu++11 -MT I2C.lo -MD -MP -MF .deps/I2C.Tpo -c -o I2C.lo I2C.cpp
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_HW_PLATFORM_BEAGLEBONE -D_KERNEL_VERSION=\"0.0\" -DDEBUG_LEVEL=0 -g -O2 -std=gnu++11 -MT I2C.lo -MD -MP -MF .deps/I2C.Tpo -c I2C.cpp -fPIC -DPIC -o .libs/I2C.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_HW_PLATFORM_BEAGLEBONE -D_KERNEL_VERSION=\"0.0\" -DDEBUG_LEVEL=0 -g -O2 -std=gnu++11 -MT I2C.lo -MD -MP -MF .deps/I2C.Tpo -c I2C.cpp -o I2C.o >/dev/null 2>&1
mv -f .deps/I2C.Tpo .deps/I2C.Plo
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_HW_PLATFORM_BEAGLEBONE -D_KERNEL_VERSION=\"0.0\" -DDEBUG_LEVEL=0 -g -O2 -std=gnu++11 -MT SPI.lo -MD -MP -MF .deps/SPI.Tpo -c -o SPI.lo SPI.cpp
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_HW_PLATFORM_BEAGLEBONE -D_KERNEL_VERSION=\"0.0\" -DDEBUG_LEVEL=0 -g -O2 -std=gnu++11 -MT SPI.lo -MD -MP -MF .deps/SPI.Tpo -c SPI.cpp -fPIC -DPIC -o .libs/SPI.o
In file included from /usr/include/c++/4.7/utility:72:0,
from /usr/include/c++/4.7/tuple:38,
from /usr/include/c++/4.7/mutex:39,
from ../include/SPI.h:11,
from SPI.cpp:8:
/usr/include/c++/4.7/bits/stl_pair.h: In instantiation of 'constexpr std::pair<_T1, _T2>::pair(const _T1&, const _T2&) [with _T1 = const int; _T2 = SPI::SharedResources]':
/usr/include/c++/4.7/bits/stl_map.h:458:11: required from 'std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = int; _Tp = SPI::SharedResources; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, SPI::SharedResources> >; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = SPI::SharedResources; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = int]'
SPI.cpp:54:54: required from here
/usr/include/c++/4.7/bits/stl_pair.h:105:31: error: use of deleted function 'SPI::SharedResources::SharedResources(const SPI::SharedResources&)'
In file included from SPI.cpp:8:0:
../include/SPI.h:30:10: note: 'SPI::SharedResources::SharedResources(const SPI::SharedResources&)' is implicitly deleted because the default definition would be ill-formed:
../include/SPI.h:30:10: error: use of deleted function 'std::recursive_mutex::recursive_mutex(const std::recursive_mutex&)'
In file included from ../include/SPI.h:11:0,
from SPI.cpp:8:
/usr/include/c++/4.7/mutex:204:5: error: declared here
make[2]: *** [SPI.lo] Error 1
make[2]: Leaving directory `/root/devel/3rdparty/IOoo/IOoo/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/devel/3rdparty/IOoo/IOoo'
make: *** [all] Error 2