2010-03-22 11 views
9

Tengo problemas con las bibliotecas de Poco. Necesito una solución simple para facilitar la compilación. ¿Hay algún archivo pkg-config para que la biblioteca Poco lo use en nuestros archivos make? O alguna solución alternativa?Cómo vincular la biblioteca Poco (bibliotecas) a nuestro programa en el entorno Unix

Actualmente uso Ubuntu GNU/Linux.

Estoy tratando de utilizar las bibliotecas de Poco en mi aplicación, pero no sé cómo vincular las bibliotecas Poco a ella. De hecho, no sé cuántas bibliotecas se deben vincular con la aplicación. Quiero saber si hay una manera fácil de hacerlo, como el uso de pkg-config archivos, como lo hacemos con gtkmm, por ejemplo:

g++ prog.cc `pkg-config --gtkmm-2.4 --libs --cflags` -o prog 

y el programa pkg-config añade librerías y ficheros de cabecera al nuestro comando.

+0

¿Tiene problemas para compilar Poco o sus programas con Poco? – Duck

+0

Problemas con programas con poco. – sepisoad

+0

@SepDev - No has dado mucho para seguir. Más simple que qué? ¿Qué estás haciendo actualmente? Puede volver a editar su pregunta para proporcionar más información. – Duck

Respuesta

12

No creo que Poco venga con ningún archivo ".pc" preempaquetado, pero debería poder crear uno propio fácilmente y pegarlo en el directorio lib/pkgconfig en su sistema si prefiere ese método.

no saber exactamente donde se ha instalado en su sistema Poco lo que puede que tenga que hacer un "hallazgo" para localizar sus archivos. Para compilar, debe especificar el directorio del encabezado poco, el directorio de la biblioteca poco y las bibliotecas individuales poco. Así que algo como:

g++ -I<path-to-poco-include-dir> -o prog prog.cpp -L<path-to-poco-lib-dir> -l<some-poco-lib> -l<another-poco-lib> 

Por ejemplo:

g++ -I/usr/local/Poco/include -o prog prog.cpp -L/usr/local/Poco/lib -lPocoFoundation -lPocoNet -lPocoNetSSL -lPocoUtil -lPocoXML 

Hay 20 o más archivos diferente Poco .so por lo que, obviamente, tiene que vincular las apropiadas. Poco hace que esto sea bastante fácil ya que los nombres de la biblioteca se ajustan a las secciones de documentación, p. cosas de utilidad están en libPocoUtil.so. Si también compiló versiones de depuración de las bibliotecas, terminarán en 'd' - p. Ej. libPocoUtild.so

Una vez más, una vez que encuentre todos sus archivos es posible que prefiera para crear su propia poco.pc ya que debe tener la información que necesita para crearlo.

0

en Ubuntu 16.04 primero tendrá que instalar bibliotecas Poco consecuencia, lo que se hace de la siguiente manera:

sudo apt install libpoco-dev 

entonces tendrá que añadir las instrucciones adecuadas al enlazador, que dependerá de la includes que tiene, por ejemplo, si se ha utilizado

#include <Poco/Net/MailMessage.h> 

tendrá los siguientes interruptores:

-lPocoNet -lPocoFoundation 

ej:

g++ main.cpp -Wall -std=c++11 -o pocotest -lPocoNet -lPocoFoundation 
Cuestiones relacionadas