[Jderobot-dev] Primer Componente con jde Robot

Oscar Garcia oscar.robotica en linaresdigital.com
Sab Feb 16 09:42:09 CET 2013


El 16/02/13 00:19, jgandia escribió:
> c++ ‑I. ‑I$ICE_HOME/include ‑c Printer.cpp Server.cpp


Estás cometiendo EXACTAMENTE el mismo error que antes:
0000000    2b63    202b    80e2    4991    202e    80e2    4991 4924
           c   +   +     342 200 221   I   .     342 200 221   I $   I
0000020    4543    485f    4d4f    2f45    6e69    6c63    6475 2065
           C   E   _   H   O   M   E   /   i   n   c   l   u   d e
0000040    80e2    6391    5020    6972    746e    7265    632e 7070
         342 200 221   c       P   r   i   n   t   e   r   .   c p   p
0000060    5320    7265    6576    2e72    7063    0a70
               S   e   r   v   e   r   .   c   p   p  \n

En vez de poner un -I (guión i mayúscula) estás poniendo un guión 
especial UTF-8 \342 \200 \221, así que lo interpreta como el nombre de 
un archivo, por eso dice "archivo o directorio no encontrado", no llega 
a entender que es una opción para incluir una ruta de búsqueda de includes.

Con el primer -I. estás agregando el directorio actual a dicha lista, 
por lo que el #include <Printer.h> te funcionará (si hubieras puesto 
#include "Printer.h" no hubiera sido necesario esa opción, por ponerte 
un ejemplo).

En el segundo -I, el de $ICE_HOME, supongo que tendrás que rellenar la 
variable de entorno de la siguiente manera (bash):

    redstar en greystar:~$ export ICE_HOME="/usr/include"
    redstar en greystar:~$ ls -Al $ICE_HOME/Ice/Ice.h
    -rw-r--r-- 1 root root 1188 jun 15  2011 /usr/include/Ice/Ice.h


Con eso arreglas el #include <Ice/Ice.h> y depende de dónde lo tengas 
instalado. Si lo has instalado mediante repositorio oficial de Ubuntu 
(supongo que también Debian), es lo que te he puesto, si no (lo has 
instalado desde las fuentes, por ejemplo) debes buscarlo, por ejemplo, 
con esta línea:

    redstar en greystar:~$ find /usr/ -iname "Ice.h"
    /usr/include/Ice/Ice.h
    /usr/include/X11/ICE/ICE.h
    redstar en greystar:~$ find $HOME -iname "Ice.h"


Normalmente suele ponerse en /usr/local/include si compilas desde las 
fuentes, o quizá puedes haberlo dejado en una instalación de usuario 
local (por eso la segunda línea busca dentro de directorio "HOME" del 
usuario).

Recuerda, procura no copiar/pegar cosas de páginas web y, si lo haces, 
acuérdate de comprobar si los caracteres son correctos con la 
herramienta "od".

Un saludo.




More information about the Jde-developers mailing list