I sólo gd2 instalados utilizando los puertos mac (sudo instalar gd2), que instalan las bibliotecas en los siguientes lugares:biblioteca de configuración incluyen caminos en C++
/opt/local/include/gd.h
/opt/local/lib/libgd.dylib (link)
/opt/local/lib/libgd.la
/opt/local/lib/libgd.a
Aquí está mi archivo de maquillaje también:
dev: main.o
g++ -L/opt/local/lib -I/opt/local/include -lgd -lpng -lz -ljpeg -lfreetype -lm main.o -o heatmap
main.o: main.cpp
g++ -c main.cpp
Así que cuando creo mi C++ aplicación que añadir '# include 'gd.h'', que lanza:
main.cpp:4:16: error: gd.h: No such file or directory
Si fijo gd.h como una ruta absoluta (Como arriba) (no es una solución, pero tenía curiosidad), me meten:
g++ -L/opt/local/include -L/opt/local/lib main.o -o heatmap
Undefined symbols:
"_gdImagePng", referenced from:
_main in main.o
"_gdImageLine", referenced from:
_main in main.o
"_gdImageColorAllocate", referenced from:
_main in main.o
_main in main.o
"_gdImageDestroy", referenced from:
_main in main.o
"_gdImageCreate", referenced from:
_main in main.o
"_gdImageJpeg", referenced from:
_main in main.o
ld: symbol(s) not found
Por lo tanto, entiendo que esto significa que ld no pueda encontrar las librerías que necesita (por lo tanto tratar de darle insinúa con el " -L "valores). Entonces, después de dar a g ++ las sugerencias -L y la ruta absoluta en #include, puedo hacer que funcione, pero no creo que tenga que hacer esto, ¿cómo puedo hacer g ++/ld buscar en los lugares correctos para las bibliotecas? ?
Drew J. Sonne.
PS. usando: - OSX 10.6.2 - gcc versión 4.2.1 (Apple Inc. construir 5646) (punto 1)
EDIT: Ok, así que después de gd teniendo en cuenta stfanB y la respuesta de Michael, he recompilado en un directorio local (libraries
) y por lo tanto, he cambiado esa primera línea de mi Makefile (¡Sin duda echa un vistazo a cmake) a g++ -L./libraries/lib -I./libraries/include -lgd -lpng -lz -ljpeg -lfreetype -lm main.o -o heatmap
Pero sigo teniendo main.cpp:3:16: error: gd.h: No such file or directory
EDIT: Gracias a todos por las respuestas , aquí está mi makefile final (de trabajo) para cualquier otra persona que quiera una respuesta:
dev: main.o
g++ -I./libraries/include -L./libraries/lib -lgd -lpng -lz -ljpeg -lfreetype -lm main.o -o heatmap
main.o: main.cpp
g++ -I./libraries/include -c main.cpp
He estado usando JamPlus últimamente y me gusta bastante. –