Malditos tabuladores!<div><br></div><div>Sip, a mi me ha pasado alguna vez también. El make es un poco exquisito con esas cosas...</div><div><br></div><div>Bueno, por lo menos ya está listo.</div><div><br></div><div>Ánimo!<br>
<br><div class="gmail_quote">2010/10/14  <span dir="ltr">&lt;<a href="mailto:franciscomiguel.rivas@urjc.es">franciscomiguel.rivas@urjc.es</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Buenas,<br>
<br>
no, estoy en un ordena de un laboratorio de Alcorcón...<br>
<br>
pues no se que ha pasao.. pero ya funciona.. debe de tener algo raro mi Makefile.. y por mas que lo miro no se que es.. he copiado el que me has mandado y lo he modificado para mi fichero y ahora si que compila..<br>
<br>
<br>
Valeeeee no me lo puedo creer.. acabo de hacer un diff entre los dos Makefiles ya que parecían iguales y me estaba empezando a desquiciar:<div class="im"><br>
<br>
        libtool --mode=link g++ -g -O -o naobody naobody.o $(LDADD) $(LDFLAGS)<br>
        libtool --mode=link g++ -g -O -o naobody naobody.o $(LDADD) $(LDFLAGS)<br>
<br></div>
¿parece igual, no? pues va a ser que no.. el primero tiene un tabulador (el que funiona) y el de abajo tiene espacios... esto pasa por copy-paste desde un mail.. jejeje<br>
<br>
<br>
Muchas gracias por todo..!!!!!<div class="im"><br>
<br>
<br>
<br>
&quot;David Lobato&quot; &lt;<a href="mailto:dav.lobato@gmail.com" target="_blank">dav.lobato@gmail.com</a>&gt; escribió:<br>
<br>
</div><div><div></div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Pues no termino de verlo. Estás compilando en una máquina del laboratorio?<br>
<br>
Te envio en privado el componente calibrator que estoy compilando con un<br>
Makefile del estilo, a ver si eres capaz de compilarlo.<br>
<br>
También se me ocurre que cambies el orden de los argumentos en el comando de<br>
libtool:<br>
<br>
libtool --mode=link g++ -g -O $(LDADD) $(LDFLAGS) -o naobody naobody.o<br>
<br>
<br>
2010/10/14 &lt;<a href="mailto:franciscomiguel.rivas@urjc.es" target="_blank">franciscomiguel.rivas@urjc.es</a>&gt;<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Te adjunto el Makefile tal cual para que lo veas por si hay alguna chorrada<br>
que esta dando......<br>
<br>
salida del env:<br>
ORBIT_SOCKETDIR=/tmp/orbit-frivas<br>
SSH_AGENT_PID=1584<br>
TERM=xterm<br>
SHELL=/bin/bash<br>
<br>
XDG_SESSION_COOKIE=8df90306f501eebbb36e92044c4047f2-1287055111.185023-1408569302<br>
WINDOWID=23068676<br>
OLDPWD=/home/frivas/svn/jderobot/jderobot/branches/5.0/src/components<br>
GNOME_KEYRING_CONTROL=/tmp/keyring-jHHqzn<br>
GTK_MODULES=canberra-gtk-module<br>
USER=frivas<br>
<br>
LS_COLORS=rs=0:di=01;34:ln=01;36:hl=44;37:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.og<br>

x=0<br>
<br>
1;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:<br>
SSH_AUTH_SOCK=/tmp/keyring-jHHqzn/ssh<br>
DEFAULTS_PATH=/usr/share/gconf/gnome.default.path<br>
SESSION_MANAGER=local/ao-dep2-I167-02:@<br>
/tmp/.ICE-unix/1550,unix/ao-dep2-I167-02:/tmp/.ICE-unix/1550<br>
USERNAME=frivas<br>
XDG_CONFIG_DIRS=/etc/xdg/xdg-gnome:/etc/xdg<br>
DESKTOP_SESSION=gnome<br>
<br>
PATH=/home/frivas/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games<br>
PWD=/home/frivas/svn/jderobot/jderobot/branches/5.0/src/components/naobody<br>
GDM_KEYBOARD_LAYOUT=es<br>
LANG=es_ES.UTF-8<br>
GNOME_KEYRING_PID=1534<br>
MANDATORY_PATH=/usr/share/gconf/gnome.mandatory.path<br>
GDM_LANG=es_ES.UTF-8<br>
GDMSESSION=gnome<br>
SPEECHD_PORT=7560<br>
SHLVL=1<br>
HOME=/home/frivas<br>
GNOME_DESKTOP_SESSION_ID=this-is-deprecated<br>
LOGNAME=frivas<br>
XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/<br>
<br>
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-Ytw5aVxSlx,guid=7a457ed4d2960b49238d58474cb6e707<br>
LESSOPEN=| /usr/bin/lesspipe %s<br>
DISPLAY=:0.0<br>
LESSCLOSE=/usr/bin/lesspipe %s %s<br>
XAUTHORITY=/var/run/gdm/auth-for-frivas-M30vmh/database<br>
COLORTERM=gnome-terminal<br>
_=/usr/bin/env<br>
<br>
<br>
<br>
Es ubuntu la 10.04<br>
<br>
<br>
<br>
Muchas gracias por tu ayuda!!!<br>
<br>
<br>
<br>
&quot;David Lobato&quot; &lt;<a href="mailto:dav.lobato@gmail.com" target="_blank">dav.lobato@gmail.com</a>&gt; escribió:<br>
<br>
 Si compilo algo parecido tengo la siguiente salida:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
g++ -I /home/dlobatol/workspace/jderobot/build/include/jderobot<br>
`pkg-config<br>
--cflags opencv` `pkg-config --cflags gtkmm-2.4 libglademm-2.4<br>
gthread-2.0`<br>
 -c -o calibrator.o calibrator.cpp<br>
g++ -I /home/dlobatol/workspace/jderobot/build/include/jderobot<br>
`pkg-config<br>
--cflags opencv` `pkg-config --cflags gtkmm-2.4 libglademm-2.4<br>
gthread-2.0`<br>
 -c -o view.o view.cpp<br>
g++ -I /home/dlobatol/workspace/jderobot/build/include/jderobot<br>
`pkg-config<br>
--cflags opencv` `pkg-config --cflags gtkmm-2.4 libglademm-2.4<br>
gthread-2.0`<br>
 -c -o controller.o controller.cpp<br>
libtool --mode=link g++ -g -O -o calibrator calibrator.o view.o<br>
controller.o<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotIce.la<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotUtil.la<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/<br>
<a href="http://libcolorspacesmm.la/home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotInterfaces.la" target="_blank">libcolorspacesmm.la/home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotInterfaces.la</a><br>

/home/dlobatol/workspace/jderobot/build/lib/jderobot/<a href="http://libprogeo.la" target="_blank">libprogeo.la</a><br>
`pkg-config<br>
--libs gtkmm-2.4 libglademm-2.4 gthread-2.0` `pkg-config --libs<br>
opencv` -lgsl -lgslcblas<br>
libtool: link: g++ -g -O -o calibrator calibrator.o view.o controller.o<br>
-pthread<br>
 /home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotIce.so<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotUtil.so<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/libcolorspacesmm.so<br>
<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/libJderobotInterfaces.so<br>
/home/dlobatol/workspace/jderobot/build/lib/jderobot/libprogeo.so<br>
/usr/lib/<br>
<a href="http://libglademm-2.4.so" target="_blank">libglademm-2.4.so</a> /usr/lib/<a href="http://libgtkmm-2.4.so" target="_blank">libgtkmm-2.4.so</a> /usr/lib/<br>
<a href="http://libglade-2.0.so/usr/lib/" target="_blank">libglade-2.0.so/usr/lib/</a><br>
<a href="http://libatkmm-1.6.so" target="_blank">libatkmm-1.6.so</a> /usr/lib/<a href="http://libgdkmm-2.4.so" target="_blank">libgdkmm-2.4.so</a> /usr/lib/<a href="http://libgiomm-2.4.so/usr/lib/" target="_blank">libgiomm-2.4.so/usr/lib/</a><br>

<a href="http://libpangomm-1.4.so" target="_blank">libpangomm-1.4.so</a> /usr/lib/<a href="http://libglibmm-2.4.so" target="_blank">libglibmm-2.4.so</a> /usr/lib/<br>
<a href="http://libcairomm-1.0.so/usr/lib/" target="_blank">libcairomm-1.0.so/usr/lib/</a><br>
<a href="http://libsigc-2.0.so" target="_blank">libsigc-2.0.so</a> /usr/lib/<a href="http://libgtk-x11-2.0.so" target="_blank">libgtk-x11-2.0.so</a> /usr/lib/libxml2.so /usr/lib/<br>
<a href="http://libgdk-x11-2.0.so" target="_blank">libgdk-x11-2.0.so</a> /usr/lib/<a href="http://libatk-1.0.so" target="_blank">libatk-1.0.so</a> /usr/lib/<a href="http://libgio-2.0.so" target="_blank">libgio-2.0.so</a> /usr/lib/<br>

<a href="http://libpangoft2-1.0.so" target="_blank">libpangoft2-1.0.so</a> /usr/lib/<a href="http://libgdk_pixbuf-2.0.so" target="_blank">libgdk_pixbuf-2.0.so</a> -lm /usr/lib/<br>
<a href="http://libpangocairo-1.0.so" target="_blank">libpangocairo-1.0.so</a> /usr/lib/libcairo.so<br>
/usr/lib/<a href="http://libpango-1.0.so/usr/lib/libfreetype.so" target="_blank">libpango-1.0.so/usr/lib/libfreetype.so</a> -lfontconfig /usr/lib/<br>
<a href="http://libgobject-2.0.so" target="_blank">libgobject-2.0.so</a> /usr/lib/<a href="http://libgmodule-2.0.so" target="_blank">libgmodule-2.0.so</a> /usr/lib/libgthread-2.0.so-lrt<br>
/usr/lib/<a href="http://libglib-2.0.so" target="_blank">libglib-2.0.so</a> -lcv -lhighgui -lcvaux -lml -lcxcore -lgsl<br>
-lgslcblas -pthread -Wl,-rpath<br>
-Wl,/home/dlobatol/workspace/jderobot/build/lib/jderobot -Wl,-rpath<br>
-Wl,/home/dlobatol/workspace/jderobot/build/lib/jderobot<br>
<br>
<br>
Si te fijas se usa g++ tanto para compilar como para enlazar. En tu salida<br>
sin embargo al enlazar usa cc. No entiendo porque.<br>
<br>
Donde estás compilado? Que distribución? Podrías poner la salida del<br>
comando<br>
env para ver tus variables de entorno.<br>
<br>
<br>
<br>
2010/10/14 &lt;<a href="mailto:franciscomiguel.rivas@urjc.es" target="_blank">franciscomiguel.rivas@urjc.es</a>&gt;<br>
<br>
 Ahí va:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
g++<br>
-I/home/frivas/svn/jderobot/jderobot/branches/5.0/build//include/jderobot<br>
-I/usr/include/gearbox/ `pkg-config --cflags opencv` `pkg-config --cflags<br>
gtkmm-2.4 libglademm-2.4 gthread-2.0`   -c -o naobody.o naobody.cpp<br>
<br>
cc `pkg-config --libs gtkmm-2.4 libglademm-2.4 gthread-2.0` `pkg-config<br>
--libs opencv` -lgsl -lgslcblas  naobody.o   -o naobody<br>
naobody.o: In function `main&#39;:<br>
naobody.cpp:(.text+0x11c): undefined reference to<br>
`jderobotice::Application::Application(jderobotice::Component&amp;)&#39;<br>
naobody.cpp:(.text+0x137): undefined reference to<br>
`jderobotice::Application::jderobotMain(int, char**)&#39;<br>
naobody.o: In function `__static_initialization_and_destruction_0(int,<br>
int)&#39;:<br>
naobody.cpp:(.text+0x1f9): undefined reference to<br>
`IceInternal::FactoryTable::FactoryTable()&#39;<br>
naobody.cpp:(.text+0x1fe): undefined reference to<br>
`IceInternal::FactoryTable::~FactoryTable()&#39;<br>
naobody.cpp:(.text+0x227): undefined reference to<br>
`Ice::AdapterNotFoundException::~AdapterNotFoundException()&#39;<br>
naobody.cpp:(.text+0x250): undefined reference to<br>
`jderobot::JderobotException::~JderobotException()&#39;<br>
naobody.cpp:(.text+0x279): undefined reference to<br>
`IceStorm::LinkExists::~LinkExists()&#39;<br>
naobody.o: In function `IceUtil::Shared::~Shared()&#39;:<br>
<br>
<br>
<br>
<br>
&quot;David Lobato&quot; &lt;<a href="mailto:dav.lobato@gmail.com" target="_blank">dav.lobato@gmail.com</a>&gt; escribió:<br>
<br>
 Quiero ver la salida completa. Cárgate el .o y haz el make otra vez para<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
que<br>
se compile el .cpp<br>
<br>
<br>
<br>
2010/10/14 &lt;<a href="mailto:franciscomiguel.rivas@urjc.es" target="_blank">franciscomiguel.rivas@urjc.es</a>&gt;<br>
<br>
 Buenas,<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
si si, si hago todo eso.. algo se me esta escapando. Te mando los<br>
pasos:<br>
pwd<br>
/home/frivas/svn/jderobot/jderobot/branches/5.0<br>
<br>
./configure --prefix=`pwd`/build --disable-component-recordingserver<br>
SLICEDIR=/usr/share/Ice-3.3.1/slice/<br>
make<br>
make install<br>
<br>
<br>
me meto en la carpeta donde esta mi componente y ejecuto el make.<br>
<br>
JDEROBOTDIR=/home/frivas/svn/jderobot/jderobot/branches/5.0/build/ make<br>
<br>
<br>
<br>
cc `pkg-config --libs gtkmm-2.4 libglademm-2.4 gthread-2.0` `pkg-config<br>
--libs opencv` -lgsl -lgslcblas  naobody.o   -o naobody<br>
naobody.o: In function `main&#39;:<br>
naobody.cpp:(.text+0x11c): undefined reference to<br>
`jderobotice::Application::Application(jderobotice::Component&amp;)&#39;<br>
naobody.cpp:(.text+0x137): undefined reference to<br>
`jderobotice::Application::jderobotMain(int, char**)&#39;<br>
naobody.o: In function `__static_initialization_and_destruction_0(int,<br>
int)&#39;:<br>
naobody.cpp:(.text+0x1f9): undefined reference to<br>
`IceInternal::FactoryTable::FactoryTable()&#39;<br>
naobody.cpp:(.text+0x1fe): undefined reference to<br>
`IceInternal::FactoryTable::~FactoryTable()&#39;<br>
naobody.cpp:(.text+0x227): undefined reference to<br>
`Ice::AdapterNotFoundException::~AdapterNotFoundException()&#39;<br>
naobody.cpp:(.text+0x250): undefined reference to<br>
`jderobot::JderobotException::~JderobotException()&#39;<br>
naobody.cpp:(.text+0x279): undefined reference to<br>
`IceStorm::LinkExists::~LinkExists()&#39;<br>
<br>
........<br>
<br>
No veo donde esta el fallo...<br>
<br>
<br>
<br>
&quot;David Lobato&quot; &lt;<a href="mailto:dav.lobato@gmail.com" target="_blank">dav.lobato@gmail.com</a>&gt; escribió:<br>
<br>
 Ojo, que JDEROBOTDIR debe apuntar al directorio de instalación y no al<br>
<br>
 directorio fuente. Es decir, a aquel directorio en el que al hacer<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
make<br>
install va todo.<br>
<br>
Por ejemplo si hicimos un configure con:<br>
<br>
$&gt; pwd<br>
/home/dlobato/worspace/jderobot<br>
$&gt; ./configure --prefix=`pwd`/build<br>
<br>
entonces JDEROBOTDIR=/home/dlobato/worspace/jderobot/build<br>
<br>
<br>
2010/10/14 &lt;<a href="mailto:franciscomiguel.rivas@urjc.es" target="_blank">franciscomiguel.rivas@urjc.es</a>&gt;<br>
<br>
 Buenas,<br>
<br>
 si, tengo a JDEROBOTDIR apuntado al directorio de instalación de JDE<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
he<br>
usado:<br>
<br>
JDEROBOTDIR=&lt;path&gt; make (JDEROBOTDIR=/home/frivas/jde-5.0/ make)<br>
<br>
pero lo había probado de las tres formas y nada<br>
<br>
<br>
alguna otra idea?<br>
<br>
<br>
<br>
&quot;David Lobato&quot; &lt;<a href="mailto:dav.lobato@gmail.com" target="_blank">dav.lobato@gmail.com</a>&gt; escribió:<br>
<br>
 Hola Francisco,<br>
<br>
<br>
 recuerda que tienes que declarar la variable JDEROBOTDIR con el<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
directorio<br>
donde instalaste jderobot.<br>
<br>
Puedes hacerlo de tres maneras:<br>
<br>
 1. Definirla directamente en el Makefile JDEROBOTDIR=&lt;path&gt;<br>
 2. Definirla como variable de entorno<br>
 3. Pasarsela al make al ejecuralo: $&gt; JDEROBOTDIR=&lt;path&gt; make<br>
<br>
<br>
Espero que eso solucione los problemas.<br>
<br>
Un saludo,<br>
David.<br>
<br>
2010/10/13 &lt;<a href="mailto:franciscomiguel.rivas@urjc.es" target="_blank">franciscomiguel.rivas@urjc.es</a>&gt;<br>
<br>
 Buenas,<br>
<br>
 estoy intentando compilar un componente que estoy haciendo, al<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
intentarlo<br>
compilar desde el Makefile me salen una lista de dependencias que<br>
no<br>
están<br>
definidas...<br>
<br>
Mi Makefile:<br>
<br>
CXXFLAGS = -I$(JDEROBOTDIR)/include/jderobot<br>
-I/usr/local/include/gearbox/<br>
`pkg-config --cflags opencv` `pkg-config --cflags gtkmm-2.4<br>
libglademm-2.4<br>
gthread-2.0`<br>
<br>
LDFLAGS = `pkg-config --libs gtkmm-2.4 libglademm-2.4 gthread-2.0`<br>
`pkg-config --libs opencv` -lgsl -lgslcblas<br>
LDADD = $(JDEROBOTDIR)/lib/jderobot/libJderobotIce.la \<br>
   $(JDEROBOTDIR)/lib/jderobot/libJderobotUtil.la \<br>
   $(JDEROBOTDIR)/lib/jderobot/<a href="http://libcolorspacesmm.la" target="_blank">libcolorspacesmm.la</a> \<br>
   $(JDEROBOTDIR)/lib/jderobot/libJderobotInterfaces.la \<br>
   $(JDEROBOTDIR)/lib/jderobot/<a href="http://libprogeo.la" target="_blank">libprogeo.la</a><br>
<br>
naobody: naobody.o<br>
   libtool --mode=link g++ -g -O -o naobody naobody.o $(LDADD)<br>
$(LDFLAGS)<br>
<br>
clean:<br>
   rm -rf *.o<br>
<br>
Errores:<br>
cc `pkg-config --libs gtkmm-2.4 libglademm-2.4 gthread-2.0`<br>
`pkg-config<br>
--libs opencv` -lgsl -lgslcblas  naobody.o   -o naobody<br>
naobody.o: In function `main&#39;:<br>
naobody.cpp:(.text+0x11c): undefined reference to<br>
`jderobotice::Application::Application(jderobotice::Component&amp;)&#39;<br>
naobody.cpp:(.text+0x137): undefined reference to<br>
`jderobotice::Application::jderobotMain(int, char**)&#39;<br>
naobody.o: In function<br>
`__static_initialization_and_destruction_0(int,<br>
int)&#39;:<br>
naobody.cpp:(.text+0x1f9): undefined reference to<br>
`IceInternal::FactoryTable::FactoryTable()&#39;<br>
naobody.cpp:(.text+0x1fe): undefined reference to<br>
`IceInternal::FactoryTable::~FactoryTable()&#39;<br>
naobody.cpp:(.text+0x227): undefined reference to<br>
`Ice::AdapterNotFoundException::~AdapterNotFoundException()&#39;<br>
naobody.cpp:(.text+0x250): undefined reference to<br>
`jderobot::JderobotException::~JderobotException()&#39;<br>
naobody.cpp:(.text+0x279): undefined reference to<br>
`IceStorm::LinkExists::~LinkExists()&#39;<br>
<br>
¿veis algo que pueda faltar?<br>
<br>
Si lo compilo desde autotools en la cadena de jde no tengo<br>
problemas..<br>
pero<br>
como mas adelante necesitaré usar librerías que no están dentro de<br>
la<br>
cadena<br>
(naoqi) necesito compilarlo desde un Makefile,<br>
<br>
¿alguna idea?<br>
<br>
Gracias de antemano,<br>
Fran<br>
<br>
<br>
&quot;David Lobato&quot; &lt;<a href="mailto:dav.lobato@gmail.com" target="_blank">dav.lobato@gmail.com</a>&gt; escribió:<br>
<br>
<br>
 Hola,<br>
<br>
<br>
 Os adjunto un ejemplo de Makefile para compilar un componente para<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
jderobot<br>
sin tener que añadirlo al arbol de jderobot. De esta manera en los<br>
inicios<br>
de los componentes que vayamos desarrollando no tenemos que<br>
complicarnos<br>
la<br>
vida con configures o <a href="http://makefiles.am" target="_blank">makefiles.am</a><br>
<br>
La idea es que una vez instalado jderobot en nuestro sistema<br>
podemos<br>
enlazar<br>
con sus librerías, al igual que lo haríamos con otros proyectos<br>
(opencv,gtk,..)<br>
<br>
El ejemplo sería así:<br>
<br>
<br>
<br>
<br>
<br>
<br>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
<br>
CXXFLAGS = -I $(JDEROBOTDIR)/include/jderobot `pkg-config --cflags<br>
opencv`<br>
`pkg-config --cflags gtkmm-2.4 libglademm-2.4 gthread-2.0`<br>
LDFLAGS = `pkg-config --libs gtkmm-2.4 libglademm-2.4 gthread-2.0`<br>
`pkg-config --libs opencv` -lgsl -lgslcblas<br>
LDADD = $(JDEROBOTDIR)/lib/jderobot/libJderobotIce.la \<br>
   $(JDEROBOTDIR)/lib/jderobot/libJderobotUtil.la \<br>
   $(JDEROBOTDIR)/lib/jderobot/<a href="http://libcolorspacesmm.la" target="_blank">libcolorspacesmm.la</a> \<br>
   $(JDEROBOTDIR)/lib/jderobot/libJderobotInterfaces.la \<br>
   $(JDEROBOTDIR)/lib/jderobot/<a href="http://libprogeo.la" target="_blank">libprogeo.la</a><br>
<br>
calibrator: calibrator.o view.o controller.o<br>
   libtool --mode=link g++ -g -O -o calibrator calibrator.o view.o<br>
controller.o $(LDADD) $(LDFLAGS)<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
<br>
<br>
En este ejemplo estoy compilando el componente calibrator que se<br>
crea<br>
desde<br>
los tres objetos indicados. Estos se compilan con una regla<br>
implicita<br>
de<br>
make.<br>
Para inicializar la variable JDEROBOTDIR, que es el lugar donde<br>
hemos<br>
instalado jderobot, podemos bien declarar la variable de entorno<br>
bien<br>
pasarsela a make con:<br>
<br>
$&gt; JDEROBOTDIR=path-jderobot make<br>
<br>
Y con esto generaremos el ejecutable calibrator con todas sus<br>
librerías<br>
dinámicas al alcance (no mas LDLIBRARYPATH!!)<br>
<br>
Espero que sea de ayuda,<br>
<br>
<br>
--<br>
David Lobato Bravo<br>
<br>
Universidad Rey Juan Carlos<br>
c/Tulipan s/n<br>
28933 Móstoles<br>
Madrid, Spain<br>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a><br>
<br>
<br>
<br>
<br>
<br>
<br>
</blockquote>
 --<br>
<br>
</blockquote>
David Lobato Bravo<br>
<br>
Universidad Rey Juan Carlos<br>
c/Tulipan s/n<br>
28933 Móstoles<br>
Madrid, Spain<br>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a><br>
<br>
<br>
<br>
<br>
<br>
</blockquote>
<br>
 --<br>
</blockquote>
David Lobato Bravo<br>
<br>
Universidad Rey Juan Carlos<br>
c/Tulipan s/n<br>
28933 Móstoles<br>
Madrid, Spain<br>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a><br>
<br>
<br>
<br>
<br>
</blockquote>
<br>
<br>
</blockquote>
--<br>
David Lobato Bravo<br>
<br>
Universidad Rey Juan Carlos<br>
c/Tulipan s/n<br>
28933 Móstoles<br>
Madrid, Spain<br>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a><br>
<br>
<br>
<br>
</blockquote>
<br>
<br>
</blockquote>
<br>
--<br>
David Lobato Bravo<br>
<br>
Universidad Rey Juan Carlos<br>
c/Tulipan s/n<br>
28933 Móstoles<br>
Madrid, Spain<br>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a><br>
<br>
<br>
</blockquote>
<br>
<br>
</blockquote>
<br>
<br>
--<br>
David Lobato Bravo<br>
<br>
Universidad Rey Juan Carlos<br>
c/Tulipan s/n<br>
28933 Móstoles<br>
Madrid, Spain<br>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a><br>
<br>
</blockquote>
<br>
<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div>David Lobato Bravo</div><div><br></div><div>Universidad Rey Juan Carlos</div><div>c/Tulipan s/n</div><div>28933 Móstoles</div><div>Madrid, Spain</div><div>
<a href="http://jderobot.org" target="_blank">http://jderobot.org</a></div><br>
</div>