Hi, I've been exploring Paul D's midi++ library. I'm trying to compile
a test driver roughly equivalent to the miditrace which is
provided. Compilation goes fine, but linking is a problem. I get:
midi++/libmidipp.a(fd_midiport.o)(.text+0x557): In function
`MIDI::FD_MidiPort::list_devices()':
/home/avan/src/ardour-cvs/libs/midi++/fd_midiport.cc:95: undefined
reference to `PathScanner::operator()(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&, bool, bool, long)'
So FD_MidiPort::list_devices () has
{
PathScanner scanner;
return scanner (*midi_dirpath, *midi_filename_pattern, false, true);
}
The first two arguments are strings.
The PathScanner is part of libpbd and has the overloaded operator:
vector<string *> *operator() (const string &dirpath,
const string ®exp,
bool match_fullpath = true,
bool return_fullpath = true,
long limit = -1);
which AFAICT should match the call in list_devices(). I'm using
gcc (GCC) 3.2.1 20021207 (Gentoo Linux 3.2.1-20021207)
and I suspect this may be the problem. Any help would be appreciated.
--ant
Show replies by date