Passi: 1.
spinta sudo port
Il file spinta installato in/opt/local/boost, file di libreria sono in/opt/local/lib
2. uso XCode per creare C++ progetto
Come faccio a costruire programma semplice spinta su Mac OS (Lion)
#include <iostream>
#include <boost/asio.hpp>
int main() {
return 0;
}
3. set XCode per scoprire spinta
in "Build Settings" -> "HEADER_SEARCH_PATHS"
in entrambi i percorsi di debug e release aggiungi/opt/local/include
4. "Impostazioni di compilazione" -> "LIBRARY_SEARCH_PATHS" -> aggiungi/opt/local/lib sia per il debug che per il rilascio.
5. build program and failed.
Messaggi di errore,
Undefined symbols for architecture x86_64:
"boost::system::generic_category()", referenced from:
___cxx_global_var_init1 in main.o
___cxx_global_var_init2 in main.o
"boost::system::system_category()", referenced from:
___cxx_global_var_init3 in main.o
boost::asio::error::get_system_category() in main.o
"boost::asio::error::get_netdb_category()", referenced from:
___cxx_global_var_init5 in main.o <br>
"boost::asio::error::get_addrinfo_category()", referenced from:
___cxx_global_var_init6 in main.o <br>
"boost::asio::error::get_misc_category()", referenced from:
___cxx_global_var_init7 in main.o <br>
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Mi sbaglio nella procedura?
Questo sembra essere più come una domanda su come linkare correttamente una libreria in un progetto. Il percorso non è sufficiente, ma è necessario specificare anche la libreria. – lpapp