Boost::iostreams::device::file_descriptor* not implemented?
Hi,
I can't seem to get file_descriptor* family of classes to work. I've
reduced my code to the following (actually I want to write to sockets):
#include
::close < boost ::iostreams ::file_descriptor_sink>(boost::iostreams::file_descriptor_sink&, std::_Ios_Openmode)in ccuxOs9P.o "boost::iostreams::file_descriptor::write(char const*, int)", referenced from: int boost ::iostreams ::detail ::write_device_impl < boost ::iostreams ::output
::write < boost ::iostreams ::file_descriptor_sink>(boost::iostreams::file_descriptor_sink&, boost ::iostreams ::char_type_ofboost::iostreams::file_descriptor_sink::type const*, int)in ccuxOs9P.o "boost::iostreams::file_descriptor::seek(long long, std::_Ios_Seekdir)", referenced from: std::fpos<__mbstate_t> boost ::iostreams ::detail ::seek_device_impl < boost ::iostreams ::any_tag
::seek < boost ::iostreams ::file_descriptor_sink>(boost::iostreams::file_descriptor_sink&, long long, std::_Ios_Seekdir, std::_Ios_Openmode)in ccuxOs9P.o ld: symbol(s) not found collect2: ld returned 1 exit status What am I missing here? TIA, Greg -- Greg Slodkowicz Building 208, Room 012a Center for Biological Sequence Analysis Department of Systems Biology Technical University of Denmark
Grzegorz Slodkowicz wrote:
Hi,
I can't seem to get file_descriptor* family of classes to work.
[snip]
Here's what happens when I try to compile (under Mac OS X):
erato:bioinf jergosh$ g++ -I/usr/local/boost_1_39_0 -o fdboost fdboost.cpp Undefined symbols: "boost::iostreams::file_descriptor::file_descriptor(int, bool)", referenced from:
[snip]
ld: symbol(s) not found collect2: ld returned 1 exit status
What am I missing here?
A part of the implementation of the file_descriptors is not header-only, see libs/iostreams/src/file_descriptor.cpp. You thus have to build the iostreams lib and link it.
participants (2)
-
Eric MALENFANT
-
Grzegorz Slodkowicz