Hello, I am using boost 1.44 and trying to create shared memory and utilizing the segment manager with a interprocess map. I continually get a compile error when call the segment manager construct call. I can’t figure out what the problem is. I have tried copy/paste example but continue to get the same error. “/usr/local/boost_1_44_0/boost/interprocess/detail/named_proxy.hpp:123:131: error: no matching function for call to ‘forward(std::less<int>()&)’ Below is the snippet of code: string driver_share = _cc.share_name + "_drivers"; using namespace boost::interprocess; //Clean up before creating shared memory shared_memory_object::remove(driver_share.c_str()); managed_shared_memory segment(create_only, driver_share.c_str(),65536); typedef boost::process::pid_type key_type; typedef boost::posix_time::ptime value_type; typedef std::pair<key_type, value_type> pair_type; typedef boost::interprocess::allocator<pair_type, managed_shared_memory::segment_manager> mem_allocator; typedef boost::interprocess::map<key_type, value_type, std::less<key_type>, mem_allocator> driver_map; const mem_allocator alloc_instance(segment.get_segment_manager()); driver_map *dmap = segment.construct<driver_map>("DriverMap")( std::less<int>(), alloc_instance); My include files are as follows: #include <boost/thread/thread.hpp> #include <boost/date_time/posix_time/posix_time_types.hpp> #include <boost/interprocess/managed_shared_memory.hpp> #include <boost/process/all.hpp> #include <boost/interprocess/allocators/allocator.hpp> #include <boost/interprocess/containers/map.hpp> #include <map> #include <functional> #include <iostream> using namespace boost; using namespace boost::posix_time; using namespace std; IF you know of any reason why I get this error that would be great………I will continue to read the boost documentation. Regards
carla
Carla Strembicke
Software Developer
SUBNET Solutions Inc.
www.SUBNET.com
Making Substations More Intelligent
T: 403.270.8885
F: 403.270.9631
#100, 4639 Manhattan Road SE, Calgary, Alberta, Canada; T2G 4B3
CONFIDENTIAL INFORMATION NOTICE: The information contained in this e-mail is privileged, confidential and intended solely for the use of the addressee named above. If the reader of this e-mail is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this e-mail is strictly prohibited. If you received this in error, please contact the sender and destroy all copies of this e-mail. Thank you.