toolchecker

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
MPC823
Erleuchteter
Erleuchteter
Beiträge: 448
Registriert: Samstag 26. November 2005, 00:35

toolchecker

Beitrag von MPC823 »

Das toolchecker.sh script hat bei mir eine fehlerhafte Ausgabe bei den Abfragen der Tools die nicht installiert sind.


Bsp :

Code: Alles auswählen

cvs:                      1.12.13
./toolchecker.sh: line 21: --version: command not found
autoconf >= 2.57a:
das liegt darin das "which" bei der Pfadabfrage der Tools nichts in die Variable schreibt wenn die Application nicht vorhanden ist.

Code: Alles auswählen

CVS=`which cvs`
damit klappt dann bei mir die If Schleife nicht den

Code: Alles auswählen

if ( test -e autoconf ) then



ist dann immer erfüllt


Ich habe das script nun abgeändert und schreibe eine Wert in die Variable wenn diese leer ist somit hat dann "test" was zum auswerten

Code: Alles auswählen

: ${AUTOCONF:=not_installed}
Bei der Ausgabe habe ich noch imm Falle das etwas nicht installiert ist und es eine Versionsabhängigkeit gibt diese der Ausgabe noch hinzugefügt


hier das ganze script :

Code: Alles auswählen

#! /bin/bash

CUT=`which cut`
GREP=`which grep`

echo ""
echo ""

### cvs ###
CVS=`which cvs`
: ${CVS:=not_installed}
if ( test -e $CVS ) then
	echo -e "cvs:                      "`$CVS --version | $GREP Concurrent | $CUT -f5 -d " "`
	else
	echo -e "\033[37;41mcvs nicht installiert\033[37;40m"
fi;

### autoconf >= 2.57a ###
AUTOCONF=`which autoconf`
: ${AUTOCONF:=not_installed}
#echo $AUTOCONF
if ( test -e autoconf ) then
	echo "autoconf >= 2.57a:        "`$AUTOCONF --version | $GREP "autoconf " | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mautoconf nicht installiert, bitte Version  >= 2.57a installieren\033[37;40m"
fi;

### automake >= 1.7 ###
AUTOMAKE=`which automake`
: ${AUTOMAKE:=not_installed}
if ( test -e  automake ) then
	echo "automake >= 1.8:          "`$AUTOMAKE --version | $GREP "automake " | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mautomake nicht installiert, bitte Version  >= 1.8 installieren\033[37;40m"
fi;

### libtool >= 1.4.2 ###
LIBTOOL=`which libtool`
: ${LIBTOOL:=not_installed}
if ( test -e libtool ) then
	echo "libtool >= 1.4.2:         "`$LIBTOOL --version | $GREP "libtool)" | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mlibtool nicht installiert, bitte Version  >= 1.4.2 installieren\033[37;40m"
fi;

### gettext >= 0.12.1 ###
GETTEXT=`which gettext`
: ${GETTEXT:=not_installed}
if ( test -e gettext ) then
	echo "gettext >= 0.12.1:        "`$GETTEXT --version | $GREP gettext | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mgettext nicht installiert, bitte Version  >= 0.12.1 installieren\033[37;40m"
fi;

### make >= 3.79 ###
MAKE=`which make`
: ${MAKE:=not_installed}
if ( test -e make ) then
	echo "make >= 3.79:             "`$MAKE --version | $GREP Make | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41mmake nicht installiert, bitte Version  >= 3.79 installieren\033[37;40m"
fi;

### makeinfo (texinfo) ###
MAKEINFO=`which makeinfo`
: ${MAKEINFO:=not_installed}
if ( test -e makeinfo ) then
	echo "makeinfo:                 "`$MAKEINFO --version | $GREP makeinfo | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mmakeinfo nicht installiert\033[37;40m"
fi;

### tar ###
TAR=`which tar`
: ${TAR:=not_installed}
if ( test -e $TAR ) then
	echo "tar:                      "`$TAR --version | $GREP tar | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mtar nicht installiert\033[37;40m"
fi;

### bunzip2 (bzip2) ###
BUNZIP2=`which bunzip2`
: ${BUNZIP2:=not_installed}
if ( test -e $BUNZIP2 ) then
	echo "bunzip2:                  "`bunzip2 --help 2> btmp; $GREP Version < btmp | $CUT -c 50-54; rm btmp`
	else
	echo -e "\033[37;41mbunzip2 nicht installiert\033[37;40m"
fi;

### gunzip (gzip) ###
GUNZIP=`which gunzip`
: ${GUNZIP:=not_installed}
if ( test -e $GUNZIP ) then
	echo "gunzip:                   "`$GUNZIP --version | $GREP gunzip | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41mgunzip nicht installiert\033[37;40m"
fi;

### patch ###
PATCH=`which patch`
: ${PATCH:=not_installed}
if ( test -e $PATCH ) then
	echo "patch:                    "`$PATCH --version | $GREP "patch " | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41mpatch nicht installiert\033[37;40m"
fi;

### infocmp (ncurses-bin / ncurses-devel) ###
INFOCMP=`which infocmp`
: ${INFOCMP:=not_installed}
if ( test -e $INFOCMP ) then
	echo "infocmp:                  "`$INFOCMP -V | $GREP ncurses | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41minfocmp nicht installiert\033[37;40m"
fi;

### gcc 2.95 or >= 3.0 ###
GCC=`which gcc`
: ${GCC:=not_installed}
if ( test -e $GCC ) then
	echo "gcc 2.95 or >= 3.0:       "`$GCC --version | $GREP gcc | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41mgcc nicht installiert, bitte Version  2.95 or >= 3.0 installieren\033[37;40m"
fi;

### g++ 2.95 or >= 3.0 ###
CCC=`which g++`
: ${CCC:=not_installed}
if ( test -e $CCC ) then
	echo "g++ 2.95 or >= 3.0:       "`$CCC --version | $GREP g++ | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41mg++ nicht installiert, bitte Version  2.95 or >= 3.0 installieren\033[37;40m"
fi;

### flex ###
FLEX=`which flex`
: ${FLEX:=not_installed}
if ( test -e $FLEX ) then
	echo "flex:                     "`$FLEX --version | $GREP flex | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41mflex nicht installiert\033[37;40m"
fi;

### bison ###
BISON=`which bison`
: ${BISON:=not_installed}
if ( test -e $BISON ) then
	echo "bison:                    "`$BISON --version | $GREP Bison | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mbison nicht installiert\033[37;40m"
fi;

### pkg-config ###
PKGCONFIG=`which pkg-config`
: ${PKGCONFIG:=not_installed}
if ( test -e $PKGCONFIG ) then
	echo "pkg-config:               "`$PKGCONFIG --version | $GREP .`
	else
	echo -e "\033[37;41mpkg-config nicht installiert\033[37;40m"
fi;

### wget ###
WGET=`which wget`
: ${WGET:=not_installed}
if ( test -e $WGET ) then
	echo "wget:                     "`$WGET --version | $GREP Wget | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41wget nicht installiert\033[37;40m"
fi;

echo ""
echo ""#! /bin/bash

CUT=`which cut`
GREP=`which grep`

echo ""
echo ""

### cvs ###
CVS=`which cvs`
: ${CVS:=not_installed}
if ( test -e $CVS ) then
	echo -e "cvs:                      "`$CVS --version | $GREP Concurrent | $CUT -f5 -d " "`
	else
	echo -e "\033[37;41mcvs nicht installiert\033[37;40m"
fi;

### autoconf >= 2.57a ###
AUTOCONF=`which autoconf`
: ${AUTOCONF:=not_installed}
#echo $AUTOCONF
if ( test -e autoconf ) then
	echo "autoconf >= 2.57a:        "`$AUTOCONF --version | $GREP "autoconf " | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mautoconf nicht installiert, bitte Version  >= 2.57a installieren\033[37;40m"
fi;

### automake >= 1.7 ###
AUTOMAKE=`which automake`
: ${AUTOMAKE:=not_installed}
if ( test -e  automake ) then
	echo "automake >= 1.8:          "`$AUTOMAKE --version | $GREP "automake " | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mautomake nicht installiert, bitte Version  >= 1.8 installieren\033[37;40m"
fi;

### libtool >= 1.4.2 ###
LIBTOOL=`which libtool`
: ${LIBTOOL:=not_installed}
if ( test -e libtool ) then
	echo "libtool >= 1.4.2:         "`$LIBTOOL --version | $GREP "libtool)" | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mlibtool nicht installiert, bitte Version  >= 1.4.2 installieren\033[37;40m"
fi;

### gettext >= 0.12.1 ###
GETTEXT=`which gettext`
: ${GETTEXT:=not_installed}
if ( test -e gettext ) then
	echo "gettext >= 0.12.1:        "`$GETTEXT --version | $GREP gettext | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mgettext nicht installiert, bitte Version  >= 0.12.1 installieren\033[37;40m"
fi;

### make >= 3.79 ###
MAKE=`which make`
: ${MAKE:=not_installed}
if ( test -e make ) then
	echo "make >= 3.79:             "`$MAKE --version | $GREP Make | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41mmake nicht installiert, bitte Version  >= 3.79 installieren\033[37;40m"
fi;

### makeinfo (texinfo) ###
MAKEINFO=`which makeinfo`
: ${MAKEINFO:=not_installed}
if ( test -e makeinfo ) then
	echo "makeinfo:                 "`$MAKEINFO --version | $GREP makeinfo | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mmakeinfo nicht installiert\033[37;40m"
fi;

### tar ###
TAR=`which tar`
: ${TAR:=not_installed}
if ( test -e $TAR ) then
	echo "tar:                      "`$TAR --version | $GREP tar | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mtar nicht installiert\033[37;40m"
fi;

### bunzip2 (bzip2) ###
BUNZIP2=`which bunzip2`
: ${BUNZIP2:=not_installed}
if ( test -e $BUNZIP2 ) then
	echo "bunzip2:                  "`bunzip2 --help 2> btmp; $GREP Version < btmp | $CUT -c 50-54; rm btmp`
	else
	echo -e "\033[37;41mbunzip2 nicht installiert\033[37;40m"
fi;

### gunzip (gzip) ###
GUNZIP=`which gunzip`
: ${GUNZIP:=not_installed}
if ( test -e $GUNZIP ) then
	echo "gunzip:                   "`$GUNZIP --version | $GREP gunzip | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41mgunzip nicht installiert\033[37;40m"
fi;

### patch ###
PATCH=`which patch`
: ${PATCH:=not_installed}
if ( test -e $PATCH ) then
	echo "patch:                    "`$PATCH --version | $GREP "patch " | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41mpatch nicht installiert\033[37;40m"
fi;

### infocmp (ncurses-bin / ncurses-devel) ###
INFOCMP=`which infocmp`
: ${INFOCMP:=not_installed}
if ( test -e $INFOCMP ) then
	echo "infocmp:                  "`$INFOCMP -V | $GREP ncurses | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41minfocmp nicht installiert\033[37;40m"
fi;

### gcc 2.95 or >= 3.0 ###
GCC=`which gcc`
: ${GCC:=not_installed}
if ( test -e $GCC ) then
	echo "gcc 2.95 or >= 3.0:       "`$GCC --version | $GREP gcc | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41mgcc nicht installiert, bitte Version  2.95 or >= 3.0 installieren\033[37;40m"
fi;

### g++ 2.95 or >= 3.0 ###
CCC=`which g++`
: ${CCC:=not_installed}
if ( test -e $CCC ) then
	echo "g++ 2.95 or >= 3.0:       "`$CCC --version | $GREP g++ | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41mg++ nicht installiert, bitte Version  2.95 or >= 3.0 installieren\033[37;40m"
fi;

### flex ###
FLEX=`which flex`
: ${FLEX:=not_installed}
if ( test -e $FLEX ) then
	echo "flex:                     "`$FLEX --version | $GREP flex | $CUT -f2 -d " "`
	else
	echo -e "\033[37;41mflex nicht installiert\033[37;40m"
fi;

### bison ###
BISON=`which bison`
: ${BISON:=not_installed}
if ( test -e $BISON ) then
	echo "bison:                    "`$BISON --version | $GREP Bison | $CUT -f4 -d " "`
	else
	echo -e "\033[37;41mbison nicht installiert\033[37;40m"
fi;

### pkg-config ###
PKGCONFIG=`which pkg-config`
: ${PKGCONFIG:=not_installed}
if ( test -e $PKGCONFIG ) then
	echo "pkg-config:               "`$PKGCONFIG --version | $GREP .`
	else
	echo -e "\033[37;41mpkg-config nicht installiert\033[37;40m"
fi;

### wget ###
WGET=`which wget`
: ${WGET:=not_installed}
if ( test -e $WGET ) then
	echo "wget:                     "`$WGET --version | $GREP Wget | $CUT -f3 -d " "`
	else
	echo -e "\033[37;41wget nicht installiert\033[37;40m"
fi;

echo ""
echo ""

Martin
MPC823
Erleuchteter
Erleuchteter
Beiträge: 448
Registriert: Samstag 26. November 2005, 00:35

Re: toolchecker

Beitrag von MPC823 »

Also erst hatte ich das bison Package installiert dann habe ich folgende Fehlermeldung bekommen

Code: Alles auswählen

updated lufs-0.9.7/config/config.guess
updated lufs-0.9.7/config/config.sub
cd lufs-0.9.7 && \
                AR=powerpc-tuxbox-linux-gnu-ar AS=powerpc-tuxbox-linux-gnu-as CC=powerpc-tuxbox-linux-gnu-gcc CXX=powerpc-tuxbox-linux-gnu-g++ NM=powerpc-tuxbox-linux-gnu-nm RANLIB=powerpc-tuxbox-linux-gnu-ranlib CFLAGS="-pipe -Os" CXXFLAGS="-pipe -Os" LDFLAGS="-Wl,-O1" PKG_CONFIG_PATH=/home/martin/tux/dbox2/cdkroot/lib/pkgconfig \
                aclocal && \
                libtoolize --force --install && \
                autoconf && \
                ./configure \
                        --build=powerpc-unknown-linux-gnu \
                        --host=powerpc-tuxbox-linux-gnu \
                        --prefix=/home/martin/tux/dbox2/cdkflash/root \
                        --exec_prefix=/home/martin/tux/dbox2/cdkflash/root \
                        --disable-kernel-support && \
                make all install
libtoolize: unrecognized option `--install'
Try `libtoolize --help' for more information.
make[1]: *** [/home/martin/tux/dbox2/cdkflash/root/bin/lufsd] Fehler 1
make[1]: Leaving directory `/home/martin/tux/tuxbox/cdk'
make: *** [/home/martin/tux/dbox2/cdkflash/root] Fehler 2
Nach dem installieren von bison++ war der Fehler erst mal weg . Sollten man das toolcheckersript erweitern auf die Abfrage ob bison++ installiert ist ?

Dann hatte ich noch das Problem das die zlib1g-dev nicht Installiert ist

evt sollte man noch ins Script die Abfrage einfügen.

Code: Alles auswählen

zlib1g=/usr/share/doc/zlib1g-dev
if ( test -d $zlib1g ) then
	echo "zlib1g-dev ist installiert"
	else
	echo -e "\033[37;41mzlib1g-dev nicht installiert\033[37;40m"
fi;
Nachfolgend noch den Inhalt den man einfach in eine Datei "packages4tuxbox" kopiert . Diese dann zum Beispiel einfach in den Synaptics Paketmanager läd und dann sollte man (hoffentlich) alles haben was man zum Bauen braucht

Code: Alles auswählen

automake1.8		install
pkg-config		install
linux-kernel-headers		install
bison++		install
g++-4.1		install
autoconf		install
g++		install
gcc-4.1		install
libssp0		install
libstdc++6-4.1-dev		install
libtool		install
gettext		install
gcc		install
autotools-dev		install
flex		install
libc6-dev		install
zlib1g-dev		install
Martin
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: toolchecker

Beitrag von rhabarber1848 »

MPC823 hat geschrieben:libtoolize: unrecognized option `--install'
Mit dem aktuellen CVS?

Eine komplette Paketliste für Debian gibt es hier:
http://forum.tuxbox-cvs.sourceforge.net ... 04#p364804
MPC823
Erleuchteter
Erleuchteter
Beiträge: 448
Registriert: Samstag 26. November 2005, 00:35

Re: toolchecker

Beitrag von MPC823 »

Das Bauproblem war mit dem aktuellen CVS.

Beim toolchecker habe ich aber mit wohl einer Veralteten Version gearbeitet. Jedoch werden bei der neuen Version auch nicht alle Pakete abgefragt.

Mein BuildPC ist ein PowerApfel und dort scheinen sich ein paar Sachen anders zu verhalten beim gleichen Debian Release als bei einem x86.

Was ich bisher noch nicht so richtig kapiert habe ist das manchmal das script vom toolchecker geht und die Sachen richtig anzeigt and manchmal nicht und das obwohl man beim aufrufen des scripts wohl keinen Fehler machen kann und ich weder was installiert noch deinstalliert habe.


Martin
doc
Contributor
Beiträge: 1623
Registriert: Donnerstag 10. Januar 2002, 20:03

Re: toolchecker

Beitrag von doc »

zlib1g wird zum Bau von squashfs benötigt, ob dies nun unbedingt auf dem Hostsystem vorhanden sein muss oder nicht darüber kann man streiten. Ich persönlich bin der Meinung das man so wenig wie nötig vom Hostsystem abhängig sein sollte und bei nicht vorhanden sein eben als User im CDK für fehlende Header/Libs zuständig ist. Nicht auf jedem System will ich diverse Sachen auf dem System haben.

Auf einen root Server wo man z.B. Nightly Builds erstellen will sollte man sich schon genau überlegen ob man unbedingt einen GCC braucht der sowieso wohl nie benötigt wird, es aber einen Einbrecher erleichtert mal eben seine Tools selbst zu bauen.

Klar dies ist ein etwas extremes Beispiel. Aber bei jeder Crossbuilderei muss man überlegen ob der einfach scheinende Weg der Richtige ist.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: toolchecker

Beitrag von rhabarber1848 »

MPC823 hat geschrieben:Mein BuildPC ist ein PowerApfel und dort scheinen sich ein paar Sachen anders zu verhalten beim gleichen Debian Release als bei einem x86.
Welche libtool-Version ist auf dem host vorhanden?
MPC823
Erleuchteter
Erleuchteter
Beiträge: 448
Registriert: Samstag 26. November 2005, 00:35

Re: toolchecker

Beitrag von MPC823 »

Welche libtool-Version ist auf dem host vorhanden?

bei mir ist die v 1.5.22-4 drauf

Ich hatte auch noch im meinem buildscript ..... newmake mit drin. Da das ja quasi in der alten Form


Nunja da macht man mal ein paar Jahre nix mehr und schon ist alles anders :D


Gruss Martin