Estaba tratando de instalar un paquete para el sistema operativo robótico (ROS). Y sigo adelante y escribo sudo apt-get install <package>
Después de la instalación, veo una lista de archivos en /opt/share
carpetas, que son los paquetes que quiero.
Pero si entro en src
, el código fuente (archivos .cpp) no está allí.
Puedo ver el código fuente si voy a las páginas de github del desarrollador, pero ¿cómo es que el paquete se instala sin usar el código fuente? ¿Cómo puedo descargar el código fuente e instalar el paquete usando apt-get install
? comando?
Respuesta aceptada:
Por defecto apt-get install
no descarga los códigos fuente de los paquetes. Hay un apt-get
específico opción para hacer lo que es source
.
Desde man apt-get
:
source
source hace que apt-get obtenga los paquetes fuente. APT examinará los paquetes disponibles para decidir qué paquete fuente
buscar. Luego buscará y descargará en el directorio actual la versión disponible más reciente de ese paquete fuente
respetando la versión predeterminada, configurada con la opción APT::Default-Release, la opción -t o por paquete con la
sintaxis pkg/release, si es posible.
Los paquetes fuente se rastrean por separado de los paquetes binarios a través de las líneas deb-src en el archivo sources.list(5). Esto significa
que deberá agregar una línea de este tipo para cada repositorio del que desee obtener fuentes; de lo contrario, probablemente obtendrá
versiones de origen incorrectas (demasiado antiguas/demasiado nuevas) o ninguna.
Entonces, la sintaxis para descargar el paquete fuente de algo al directorio actual sería (no es necesario ser root
):
apt-get source <package_name>
También tenga en cuenta que como man
páginas dice que necesita tener el deb-src
repositorios habilitados para todos los deb
regulares repositorios de los que desea realizar un seguimiento de los paquetes fuente. La forma más sencilla de hacerlo sería simplemente agregar -src
al deb
inicial del repositorio original cadena:
deb http://archive.ubuntu.com/ubuntu/ trusty main restricted
deb-src http://archive.ubuntu.com/ubuntu/ trusty main restricted
En una nota diferente, es posible que haya revisado el /usr/src
directorio que es el lugar designado para todas las fuentes del kernel.