tom1983 - 2013-07-01

I got a major problem with compiling a c++ programm on a raspberry pi.

My Programm compiles just fine on ubuntu with the same version ov boost and g++ as i am using on the pi. the pi is using wheezy.
Somehow i can't compile it on the pi. Help is much much apprechiated.

In member function ‘void serialCommunication::open(const string&, unsigned int, boost::asio::serial_port_base::parity, boost::asio::serial_port_base::character_size, boost::asio::serial_port_base::flow_control, boost::asio::serial_port_base::stop_bits)’:
/home/pi/GuardServer/src/serialCommunication.cpp:69:109: error: no matches converting function ‘run’ to type ‘long unsigned int (class boost::asio::io_service::*)()’
In file included from /usr/include/boost/asio/io_service.hpp:769:0,
from /usr/include/boost/asio/basic_io_object.hpp:19,
from /usr/include/boost/asio/basic_socket.hpp:19,
from /usr/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/include/boost/asio.hpp:20,
from /home/pi/GuardServer/src/serialCommunication.h:14,
from /home/pi/GuardServer/src/serialCommunication.cpp:1:
/usr/include/boost/asio/impl/io_service.ipp:64:13: error: candidates are: std::size_t boost::asio::io_service::run(boost::system::error_code&)
/usr/include/boost/asio/impl/io_service.ipp:56:13: error: std::size_t boost::asio::io_service::run()

As far as I am able to Interpret the above error the error happens somewhere in the underneath code snipped.

boost::thread t(boost::bind((unsigned long int (boost::asio::io_service::*)())&boost::asio::io_service::run, &pimpl->io));

pimpl->backgroundThread.swap(t);
setErrorStatus(false);//If we get here, no error
pimpl->open=true; //Port is now open

Thanks a lot in advance

Best regards thomas