Ich habe High und Low für die Antwort auf dieses Problem gesucht. Ich benutze Boost 1.48 und das Programm ist extrem einfach, da ich es auf seine einfachste Form heruntergebrochen habe, um dieses Problem zu lösen.g ++ undefinierter Verweis auf `boost :: system :: system_category() '
#include <boost/filesystem.hpp>
int main(int argc, char **argv) {
return 0;
}
Die g ++ von meinem Makefile ausgeführt Befehl lautet wie folgt:
g++ -m32 -Wall -o mapnik-test -L/usr/lib -I/usr/include -I/usr/include/freetype2 -lpthread -lboost_system mapnik-test.cpp
Die vollständige Liste der Fehler bei der Verknüpfung wird wie folgt:
/tmp/ccIbmuee.o: In function `__static_initialization_and_destruction_0(int, int)':
mapnik-test.cpp:(.text+0x49): undefined reference to `boost::system::generic_category()'
mapnik-test.cpp:(.text+0x53): undefined reference to `boost::system::generic_category()'
mapnik-test.cpp:(.text+0x5d): undefined reference to `boost::system::system_category()'
collect2: ld returned 1 exit status
make: *** [mapnik-test] Error 1
Ich habe leiden viele Menschen gefunden von Das gleiche Problem, aber in den meisten Fällen bestand die Lösung darin, die Bibliothek boost_system im LDFLAGS bereitzustellen. Wie Sie in der g ++ - Befehlszeile sehen können, habe ich dies bereits angegeben. Ich habe sogar versucht, die Bibliothek libboost_system.a ohne Erfolg zu verlinken. Bin ich die einzige Person mit dieser Beschwerde?