Autor Tema: Problema al compilar updater script de driftnet 1.1.5-1  (Leído 5432 veces)

0 Usuarios y 1 Visitante están viendo este tema.

trax69

  • Visitante
Problema al compilar updater script de driftnet 1.1.5-1
« en: 14-10-2015, 13:16 (Miércoles) »
Hola, como llevo mucho tiempo oxidado con linux y lo deje de lado hace mucho tiempo estoy intentando retomarlo.

Viendo las plantillas y casi todos los post de USUARIONUEVO sobre el hilo updaters me empapado bien he usado la plantilla de tal modo que creo que la he conseguido a adaptar pero al momento de compilar me da fallos en los "make" y no continua con el script o algo debo de haber echo mal. no quiero que me lo terminen me gusta aprender. Estuve leyendo que algunos errores los cuales me salen son "normales" pego el código del script updater (que aun me falta por terminar de fijo) y las ultimas lineas donde me da error los make. Según el readme dice que tengo que usar ./configure (que funciona) make y/o make install .

Código: [Seleccionar]
SCRIPT_VERSION=20151014

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
f_variables(){
. /opt/wifislax-updaters/Funciones/funciones_updater
}
############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=driftnet
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=https://launchpad.net/debian/+source/driftnet/1.1.5-1
VERSION=`curl -s $WEB | grep .tar.gz | cut -d _ -f3 | cut -d t -f-1 | sed "s/.$//g"`
EXTENSION=tar.gz
SOURCES=$PRGNAM"_"$VERSION.$EXTENSION
DOWNLOAD=https://launchpad.net/debian/+archive/primary/+files/$SOURCES
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $SOURCES ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
/tmp/build/driftnet/driftnet-1.1.5/configure
  make  || exit 1
  make install || exit 1
cd ..
}

###################################
## BLOQUE PRINCIPAL DE EJECUCION ##
###################################
# Si se cierra el script inesperadamente, ejecutar la funcion de limpieza
trap f_exitmode SIGHUP SIGINT

#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Creamos directorio de trabajo
f_directorioTemporal
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
#F_dependencias
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del paquete
f_versionInstalada
#Si no existe el fichero se descargara
f_download
#Preparamos entorno
f_preparar
#Descomprimir fichero descargado y compilamos
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales" > /root/Desktop/$$_updater

chmod 777 /root/Desktop/*updater


el error al compilar es este -->


Código: [Seleccionar]
driftnet Version 1.1.5

 Prefix: '/usr/local'
 Compiler: 'gcc -O2 -g -DDEBUG'

 Package features:
   - enable display: yes
   - enable debug: yes

 Now type:
   - 'make' to build the package
   - 'make install' to install everything

--------------------------------------------------
Making all in src
make[1]: se ingresa al directorio `/tmp/build/driftnet/src'
make  all-recursive
make[2]: se ingresa al directorio `/tmp/build/driftnet/src'
Making all in media
make[3]: se ingresa al directorio `/tmp/build/driftnet/src/media'
  CC       media.o
  CC       image.o
  CC       audio.o
  CC       mpeghdr.o
  CC       playaudio.o
  CC       http.o
  AR       libmedia.a
make[3]: se sale del directorio `/tmp/build/driftnet/src/media'
Making all in display
make[3]: se ingresa al directorio `/tmp/build/driftnet/src/display'
  CC       display.o
  CC       img.o
  CC       gif.o
/tmp/build/driftnet/driftnet-1.1.5/src/display/gif.c: En la función ‘gif_abort_load’:
/tmp/build/driftnet/driftnet-1.1.5/src/display/gif.c:50:5: error: faltan argumentos para la función ‘DGifCloseFile’
     DGifCloseFile((GifFileType*)I->us);
     ^
In file included from /tmp/build/driftnet/driftnet-1.1.5/src/display/gif.c:18:0:
/usr/include/gif_lib.h:183:9: nota: se declara aquí
     int DGifCloseFile(GifFileType * GifFile, int *ErrorCode);
         ^
/tmp/build/driftnet/driftnet-1.1.5/src/display/gif.c: En la función ‘gif_load_img’:
/tmp/build/driftnet/driftnet-1.1.5/src/display/gif.c:128:5: error: faltan argumentos para la función ‘DGifCloseFile’
     DGifCloseFile(g);
     ^
In file included from /tmp/build/driftnet/driftnet-1.1.5/src/display/gif.c:18:0:
/usr/include/gif_lib.h:183:9: nota: se declara aquí
     int DGifCloseFile(GifFileType * GifFile, int *ErrorCode);
         ^
make[3]: *** [gif.o] Error 1
make[3]: se sale del directorio `/tmp/build/driftnet/src/display'
make[2]: *** [all-recursive] Error 1
make[2]: se sale del directorio `/tmp/build/driftnet/src'
make[1]: *** [all] Error 2
make[1]: se sale del directorio `/tmp/build/driftnet/src'
make: *** [all-recursive] Error 1


Nota: se que esta linea "/tmp/build/driftnet/driftnet-1.1.5/configure" tengo que cambiarla ya que si cambia de versión no funcionara el script la deje así por que aun no lo terminé haha.

Mi idea era ir revisando versiones de programas y viendo cuales pueden actualizarse por que la versión de driftnet por ejemplo es antigua y han sacado nuevas o como por ejemplo crear una de Orange del script que hizo 1camaron1 aunque creo que no hay sources en sitios webs como github ni nada de eso. Esque he estado probando con mi Livebox hahaha


« Última modificación: 14-10-2015, 13:22 (Miércoles) por trax69 »

Fr3dY

  • Visitante
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #1 en: 14-10-2015, 14:46 (Miércoles) »
Pues parece que hay alguna incompatibilidad con la librería encargada de manipular los GIF, según veo en https://github.com/deiv/driftnet necesitas:

- libpcap
- libjpeg
- libungif
- libpng

No se si libungif viene de serie en Wifislax, ahora mismo no puedo mirarlo. Si no, puedes intentar compilarla (http://directory.fsf.org/wiki/Libungif).



Saludos,

trax69

  • Visitante
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #2 en: 14-10-2015, 16:30 (Miércoles) »
Ahora que lo dices me fijé que hacia falta ciertas librerias pero no me acorde de echarles un vistazo XD... fallo tonto mio... Voy a ver si puedo echar un vistazo y ver si están esas librerias y como solucionarlo. Muachas gracias por que se me pasó completamente por alto el revisar si las librerias estaban >.<

Es raro... las 3 librerias estan añadidas a wifislax...

Código: [Seleccionar]
wifislax lib # ls | grep libpcap
libpcap.a
libpcap.so
libpcap.so.0.8
libpcap.so.1
libpcap.so.1.7.4
wifislax lib # ls | grep libjpeg
libjpeg.la
libjpeg.so
libjpeg.so.62
libjpeg.so.62.1.0
libjpeg.so.8
libjpeg.so.8.0.1
wifislax lib # ls | grep libungif
libungif.so
libungif.so.7
wifislax lib # ls | grep libpng
libpng.la
libpng.so
libpng.so.14
libpng14.la
libpng14.so.14
libpng14.so.14.12.0
libpng16.la
libpng16.so
libpng16.so.16
libpng16.so.16.16.0
« Última modificación: 14-10-2015, 17:07 (Miércoles) por trax69 »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14453
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #3 en: 15-10-2015, 02:12 (Jueves) »
https://raw.githubusercontent.com/BlackArch/blackarch/master/packages/driftnet/gif.patch


tambien te digo que la plantilla que estas usando ya esta obsoleta.


el generador de plantillas actual es este..


Código: [Seleccionar]
#!/bin/sh

echo "#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=$(date +%Y%m%d)

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
f_variables(){
. /opt/wifislax-updaters/Funciones/funciones_updater
}

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=
echo -ne "'"\033]2;${PRGNAM}_updater\007"'"
WEB=
VERSION=
EXTENSION=
SOURCES=
DOWNLOAD=
}

# Comprobar dependencias
#F_dependencias(){

#}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "'"$VERDE"'"Configurando ..."'"$CIERRE"'"
sleep 1



echo ""
echo "'"$VERDE"'"Compilando ..."'"$CIERRE"'"
sleep 1


}

###################################
## BLOQUE PRINCIPAL DE EJECUCION ##
###################################
# Si se cierra el script inesperadamente, ejecutar la funcion de limpieza
trap f_exitmode SIGHUP SIGINT

#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Creamos directorio de trabajo
f_directorioTemporal
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del paquete
f_versionInstalada
#Compronar dependencias
#F_dependencias
#Si no existe el fichero se descargara
f_download
#Preparamos entorno
f_preparar
#Descomprimir fichero descargado y compilamos
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales" > /root/Desktop/$$_updater

chmod 777 /root/Desktop/*updater
« Última modificación: 15-10-2015, 09:27 (Jueves) por USUARIONUEVO »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14453
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #4 en: 15-10-2015, 02:18 (Jueves) »
en realidad mirando tu script , solo te sobra esto


Código: [Seleccionar]
# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $SOURCES ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DOWNLOAD
fi
}


ya no se usa F_download ...


uff, la vuelvo a mirar y has hecho un pequeño megamix  ;D


en la iso abres consola..escribes

base_updater

y te genera en escritorio una platilla ...

el script que te he puesto es el codigo actualizado para base_updater , que esta en

/opt/wifislax-scripts/ base_updater   o   /usr/bin/base_updater
« Última modificación: 15-10-2015, 02:20 (Jueves) por USUARIONUEVO »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14453
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #5 en: 15-10-2015, 02:41 (Jueves) »
te falta poco , para pillar como va esto de los updaters , con un poco de practica , lo dominaras.


dejo el updater  ;)



Código: [Seleccionar]
#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20151015

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
f_variables(){
. /opt/wifislax-updaters/Funciones/funciones_updater
}

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=driftnet
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=https://github.com/deiv/$PRGNAM/releases
VERSION=`curl -s $WEB | grep tar.gz | head -1 | cut -d / -f6 | cut -d t -f1 | sed 's/.$//g'`
SRCNAM=$PRGNAM-upstream-$VERSION
EXTENSION=tar.gz
SOURCES=$PRGNAM-upstream-$VERSION.$EXTENSION
DOWNLOAD=https://github.com/deiv/driftnet/archive/upstream/$VERSION.$EXTENSION
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Configurando ..."$CIERRE"
autoreconf -fi
sleep 1
if [ $VERSION = 1.1.5 ]; then
echo 'diff -Naur driftnet-upstream-1.1.5.orig/src/display/gif.c driftnet-upstream-1.1.5/src/display/gif.c
--- driftnet-upstream-1.1.5.orig/src/display/gif.c 2014-10-28 11:28:46.084689763 -0400
+++ driftnet-upstream-1.1.5/src/display/gif.c 2014-10-28 11:32:07.601599279 -0400
@@ -32,6 +32,13 @@
     g = I->us = DGifOpenFileHandle(fileno(I->fp));
 #endif
 
+#if (GIFLIB_MAJOR > 5) || ((GIFLIB_MAJOR == 5) && (GIFLIB_MINOR >= 1))
+# define GIF_CLOSE_FILE(g)  DGifCloseFile(g, NULL);
+#else
+# define GIF_CLOSE_FILE(g)  DGifCloseFile(g);
+#endif
+
+
     if (!I->us) {
         I->err = IE_HDRFORMAT;
         return 0;
@@ -47,7 +54,11 @@
  * Abort loading a GIF file after the header is done.
  */
 int gif_abort_load(img I) {
-    DGifCloseFile((GifFileType*)I->us);
+#if (GIFLIB_MAJOR > 5) || ((GIFLIB_MAJOR == 5) && (GIFLIB_MINOR >= 1))
+    DGifCloseFile(((GifFileType*)I->us), NULL);
+#else
+    DGifCloseFile(((GifFileType*)I->us);
+#endif
     return 1;
 }
 
@@ -125,7 +136,7 @@
     ret = 1;
 fail:
 
-    DGifCloseFile(g);
+    GIF_CLOSE_FILE(g);
 
     return ret;
 }

' > gif.patch
patch -p1 -i gif.patch || exit 1
fi

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
./configure --prefix=/usr
make || exit 1
make install DESTDIR=$PKG
}

###################################
## BLOQUE PRINCIPAL DE EJECUCION ##
###################################
# Si se cierra el script inesperadamente, ejecutar la funcion de limpieza
trap f_exitmode SIGHUP SIGINT

#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Creamos directorio de trabajo
f_directorioTemporal
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del paquete
f_versionInstalada
#Si no existe el fichero se descargara
f_download
#Preparamos entorno
f_preparar
#Descomprimir fichero descargado y compilamos
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
« Última modificación: 15-10-2015, 09:28 (Jueves) por USUARIONUEVO »

trax69

  • Visitante
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #6 en: 15-10-2015, 13:13 (Jueves) »
Hahaha me falta un poco bastante ya dije que estoy oxidado y lo poco que conseguí fue ensallo y error, ensallo y error pero ese ensayo y error me dejó de valer en el compilado por que ya leyendo y googleando no era capaz de saber por que me daba esos errores.

Me voy a mirar el script detenidamente y sobre la plantilla no sabia que la actualizasteis cogí la del Hilo creo recordar y si.. luego hice un mix con algunas partes de las antiguas hahaha

Muchas gracias y voy a intentar hacer updaters para cosas mas sencillas primero hahaha que no requiera dependencias o librerias >.<

trax69

  • Visitante
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #7 en: 15-10-2015, 13:42 (Jueves) »
Mi idea es dentro de mis posibilidades ir haciendo updaters de las herramientas de wifislax que hay algunas que me fijé están desactualizadas y compartirlas para que las vayáis añadiendo para posteriores versiones. habrá algún momento que los haga como churros y no os haga perder el tiempo mirando por que no van hahaha.
« Última modificación: 15-10-2015, 13:48 (Jueves) por trax69 »

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2383
  • Prácticas precisas precisan práctica
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #8 en: 15-10-2015, 14:43 (Jueves) »
Gracias trax69  ;)

La verdad es que hace falta gente que colabore haciendo updaters, porque como dices, hay un montón de herramientas de wifislax que no tienen un updater y por tanto no nos enteramos cuando hay nuevas versiones.

Somos pocos colaborando en el desarrollo, yo siempre estoy liado arreglando algún script, usuarionuevo está siempre liado arreglando algo del sistema, vk no se le ve el pelo últimamente, y 5.1 también está perdido.

Así que si quieres colaborar, me parece perfecto  >:(

En la distro tenemos paquetes de slackware y paquetes compilados por nosotros. Los de slackware siempre están actualizados porque se actualizan desde el repositorio, pero los nuestros solo se actualizan si existe un updater.

Para ver los paquetes que necesitan updater puedes ejecutar esto:

Código: [Seleccionar]
ls /var/log/packages | grep "sw$"

y te saldrá un listado de todos los paquetes de wifislax, pues todos esos deberían tener un updater para que el sistema pueda estar siempre actualizado, y hay muchos que no tienen updater.

Saludos!

La luz cree que viaja más rápido que cualquier otra cosa, pero se equivoca; da lo mismo lo rápido que pueda viajar, porque al final, la luz descubre que la oscuridad ha llegado antes que ella, y la está esperando.

trax69

  • Visitante
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #9 en: 15-10-2015, 14:49 (Jueves) »
No pensé que fueran tantos  :-\ hahaha. Pues dentro de mis posibilidades iré mirando y mirando he intentaré colaborar aportando los updaters. ¿Entiendo que una vez tenga el script y lo reviséis lo añadís a github o como hago para que lo vayais añadiendo >.< ?

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2383
  • Prácticas precisas precisan práctica
Re: Problema al compilar updater script de driftnet 1.1.5-1
« Respuesta #10 en: 15-10-2015, 15:10 (Jueves) »
Los puedes postear aquí: https://foro.seguridadwireless.net/colaboracion-y-desarrollo-de-nuestras-lives/wifislax-updaters-hilo-2/ ahí es donde se ponen los updaters nuevos que se van haciendo, y de ese hilo pasan a github.

Antes de hacer alguno, asegúrate de que no exista. Para saber si existen o no, puedes usar el buscador de updaters: https://foro.seguridadwireless.net/colaboracion-y-desarrollo-de-nuestras-lives/buscador-de-updaters/

La luz cree que viaja más rápido que cualquier otra cosa, pero se equivoca; da lo mismo lo rápido que pueda viajar, porque al final, la luz descubre que la oscuridad ha llegado antes que ella, y la está esperando.