Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/10/2008, à 23:17

tiky

Script shell et comportement anormal

Bonjour ( et oui ^^ ),

Depuis hier j'écris un script bash afin de faciliter la création d'un initramfs personnalisé. Il existe déjà un programme dénommé mkinitramfs ( apparemment disponible sous Ubuntu, pas sous Gentoo ) mais il ne répond pas à mes attentes. J'écris donc une version totalement différente.
Ce script télécharge la dernière version de busybox. Il permet d'ajouter divers binaires et bien entendu un script init personnalisé. Seulement j'observe un bogue des plus étranges que je ne parviens pas à expliquer. Tout d'abord le code ( sous licence GPLv2 ):

#!/bin/sh
# Mkinitramfs - A generator of initramfs
#
# Copyright 2008 <tiky.halbaroth AT gmail.com> 
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  
# 02110-1301, USA.

bb_tmp='/tmp/busybox'
bb_version='1.12.1'
bb_archive="/tmp/busybox-${bb_version}.tar.bz2"
bb_url="http://busybox.net/downloads/busybox-$bb_version.tar.bz2"
bb_config=''
ir_tmp='/tmp/initramfs'
lvm=false
cryptestup=false
ouput='initramfs'
init_script=''
reset=$( tput sgr0 )
log_file="/tmp/mkinitramfs.log"
usage()
{
cat << EOF
Usage: $O [OPTION]
A generator of initramfs.

    -h		    Show help message.
    -l		    Support for LVM2.
    -c		    Support for Cryptsetup ( with Luks ).
    -i <script>	    Change initial script.
    -C <config>	    Change busybox configuration.
    -o <filename>   Change output filename ( default: initramfs ).
    -v <version>    Change busybox version.

Report bugs to <tiky.halbaroth AT gmail.com>
EOF
}

success()
{
    green=$( tput setaf 2 )
    str="${green}>> $1${reset}"
    echo $str && echo $str >> "$log_file"
}

error()
{
    red=$( tput setaf 1 )
    str="${red}!!! $1${reset}"
    echo $str && echo $str >> "$log_file"
}

info()
{
    blue=$( tput setaf 4 )
    str="${blue}>> $1${reset}"
    echo $str && echo $str >> "$log_file"
}

busybox_unpack()
{
    mkdir $bb_tmp
    tar -xjpf $bb_archive -C /tmp >> "$log_file" 2>&1
    if [ $? -eq 0 ]
    then
	path="${bb_tmp}-${bb_version}"
	mv $path/* $bb_tmp
	mv $path/.??* $bb_tmp
	rmdir $path
    else
	error "Corrupted archive"
	clear
	rm -i $bb_archive
	exit 1
    fi
}

set_feature()
{
    sed -ie "s/^# $1 is not set/$1=y/" .config
}

unset_feature()
{
    sed -ie "s/^$1=y/# $1 is not set/" .config
}

busybox()
{
    if [ -f $bb_archive ]
    then
	busybox_unpack
    else
	info "busybox getting..."
	if wget -t 1 $bb_url -O $bb_archive >> "$log_file" 2>&1
	then
	    busybox_unpack
	else
	    error "busybox archive not found"
	    clear
	    exit 1
	fi
    fi
    cd $bb_tmp
    info "busybox setting..."
    if [ -z "$bb_config" ]
    then
	make defconfig >> "$log_file" 2>&1
	unset_feature CONFIG_INIT
	unset_feature CONFIG_DEBUG_INIT
	unset_feature CONFIG_FEATURE_USE_INITTAB
	unset_feature CONFIG_FEATURE_INIT_SCTTY
	unset_feature CONFIG_FEATURE_EXTRA_QUIET
	unset_feature CONFIG_FEATURE_INIT_COREDUMPS
	unset_feature CONFIG_FEATURE_INITRD
	set_feature CONFIG_STATIC
	unset_feature CONFIG_FEATURE_SHARED_BUSYBOX
	set_feature CONFIG_INSTALL_NO_USR
    else
	echo "$bb_config" > .config
    fi

    info "busybox making..."
    make >> "$log_file" 2>&1
    if [ $? -eq 0 ] 
    then
	success "busybox compiled"
	make busybox.links >> "$log_file" 2>&1
	if [ $? -eq 0 ]
	then
	    success "busybox linked"
	else
	    error "busybox link failed"
	    clear
	    exit 1
	fi
    else
	error "busybox make failed"
	clear
	exit 1
    fi
}

add_binary()
{
    info "add $1 binary"
    filename=$( which $1 )
    if [ -x $filename ]
    then
	ld=$( ldd $filename )
	if [ $? -eq 0 ]
	then
	    error "$1 isn't a static binary"
	    clear
	    exit 1
	else
	    success "$1 added"
	    cp -p $filename $ir_tmp/sbin
	fi
    else
	error "$1 not found"
    fi
}

initramfs()
{
    mkdir $ir_tmp
    ./applets/install.sh $ir_tmp --symlinks >> "$log_file" 2>&1
    if [ $? -eq 0 ]
    then
	success "busybox installed in $ir_tmp"
	cd $ir_tmp
	mkdir {proc,sys,new-root,etc,dev}

	if [ -z "$init_script" ]
	then
	    echo "$init_script" > init
	    chmod 755 init
	else
	    touch init
	    chmod 755 init
	fi

	mknod --mode=0660 dev/null c 1 3
	mknod --mode=0660 dev/console c 5 1

	if $lvm
	then
	    add_binary lvm
	    add_binary vgscan
	    add_binary vgchange
	fi

	if $cryptsetup
	then
	    add_binary cryptsetup
	fi
    else
	error "Cannot install busybox in $ir_tmp"
	exit 1
    fi
}

clear()
{
    if [ -e $bb_tmp ]
    then
	rm -Rf $bb_tmp
    fi

    if [ -e $ir_tmp ]
    then
	rm -Rf $ir_tmp
    fi
}

while getopts "hlci:C:o" option
do
    case $option in
	h)
	    usage
	    exit
	    ;;
	l)
	    info "lvm support enabled"
	    lvm=true
	    ;;
	c)
	    info "cryptsetup ( with luks ) enabled"
	    cryptsetup=true
	    ;;
	i)
	    if [ -f "$OPTARG" ]
	    then
		info "change init script to $OPTARG"
		init_script="$( cat $OPTARG )"
	    else
		error "$OPTARG not found"
		exit 1
	    fi
	    ;;
	C)
	    if [ -f "$OPTARG" ]
	    then
		info "change busybox config to $OPTARG"
		bb_config="$( cat $OPTARG )"
	    else
		error "$OPTARG not found"
		exit 1
	    fi
	    ;;
	O)
	    info "change output filename to $OPTARG"
	    ouput="$OPTARG"
	    ;;
	v)
	    info "change busybox version to $OPTARG"
	    bb_version="$OPTARG"
	    ;;
	?)
	    usage
	    exit 1
	    ;;
    esac
done

if [ -e "$log_file" ]
then
    rm -f "$log_file"
fi

clear
busybox
initramfs
clear

Le bogue se produit au niveau de la configuration de busybox avant sa compilation. 2 choix sont possibles. Soit le script configure automatiquement busybox en activant tout sauf quelques paramètres qui empêchent le démarrage du script init, soit en donnant par l'option -C son propre fichier de configuration. Le problème c'est que la compilation échoue dans le premier cas, mais si l'on prend le fichier .config généré et qu'on le donne au script avec l'option -C, la compilation réussit ! Quelques fois la compilation réussit même sans passer cet argument.
Note: le fichier .config est écrasé à la fin du script, il faut donc aller le chercher dans le dossier /tmp/busybox avant.
Un fichier log est également généré dans le dossier /tmp.
Note2: le script doit être exécuté en root pour qu'il puisse faire certaines opérations de la fonction initramfs(), mais ce n'est pas important de le lancer comme tel pour tester les autres fonctions wink

Toutes remarques, corrections ( notamment sur l'anglais, je suis très mauvais ) est bien entendu la bienvenue.
Merci d'avance.

Dernière modification par tiky (Le 25/08/2009, à 05:25)


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#2 Le 15/10/2008, à 07:04

morphoneo69

Re : Script shell et comportement anormal

J'ai testé en non root voilà ce que j'ai :


 sh test.sh 
>> busybox getting...
>> busybox setting...
>> busybox making...
>> busybox compiled
>> busybox linked
>> busybox installed in /tmp/initramfs
mknod: `dev/null': Aucun fichier ou dossier de ce type
mknod: `dev/console': Aucun fichier ou dossier de ce type
>> add cryptsetup binary
ldd: arguments de fichier manquants
Pour en savoir davantage, faites : `ldd --help'.
>> cryptsetup added
cp: opérande du fichier cible manquant après `/tmp/initramfs/sbin'
Pour en savoir davantage, faites: « cp --help ».

Hors ligne

#3 Le 15/10/2008, à 08:14

cduray

Re : Script shell et comportement anormal

Hello

Pour le ldd: arguments de fichier manquants, ça vient probablement de:

filename=$( which $1 )

--> cryptsetup ne serait pas dans le $PATH ??

Pour busybox, ton fichier /tmp/mkinitramfs.log pourrait être utile pour comprendre

C

Hors ligne

#4 Le 15/10/2008, à 11:24

tiky

Re : Script shell et comportement anormal

morphoneo69 a écrit :

J'ai testé en non root voilà ce que j'ai :


 sh test.sh 
>> busybox getting...
>> busybox setting...
>> busybox making...
>> busybox compiled
>> busybox linked
>> busybox installed in /tmp/initramfs
mknod: `dev/null': Aucun fichier ou dossier de ce type
mknod: `dev/console': Aucun fichier ou dossier de ce type
>> add cryptsetup binary
ldd: arguments de fichier manquants
Pour en savoir davantage, faites : `ldd --help'.
>> cryptsetup added
cp: opérande du fichier cible manquant après `/tmp/initramfs/sbin'
Pour en savoir davantage, faites: « cp --help ».

Le script marche chez toi. C'est normal que cryptsetup ne soit pas trouvé, il n'est pas dans $PATH, sauf si tu es root wink

Dernière modification par tiky (Le 15/10/2008, à 11:46)


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#5 Le 15/10/2008, à 11:46

tiky

Re : Script shell et comportement anormal

cduray a écrit :

Hello

Pour le ldd: arguments de fichier manquants, ça vient probablement de:

filename=$( which $1 )

--> cryptsetup ne serait pas dans le $PATH ??

Pour busybox, ton fichier /tmp/mkinitramfs.log pourrait être utile pour comprendre

C

Ce n'est pas une erreur, étant donné que le script doit être lancé en root, le dossier /sbin où se trouve cryptsetup est dans le $PATH. Il ne l'est pas si tu es un simple utilisateur. Il faut que je rajoute un teste pour savoir si l'utilisateur est root wink mais pour tester je lance en utilisateur sans privilège là. Si tu veux pas le message d'erreur, ne met pas l'option -c ( minuscule ). Par contre il y a bien une autre erreur, j'ai fait une faute de frappe sur la variable cryptsetup et le message de succès s'affiche même en cas d'échec.

Le code avec les petites corrections:

#!/bin/sh
# Mkinitramfs - A generator of initramfs
#
# Copyright 2008 Pierre Villemot <tiky.halbaroth AT gmail.com> 
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  
# 02110-1301, USA.

bb_tmp='/tmp/busybox'
bb_version='1.12.1'
bb_archive="/tmp/busybox-${bb_version}.tar.bz2"
bb_url="http://busybox.net/downloads/busybox-$bb_version.tar.bz2"
bb_config=''
ir_tmp='/tmp/initramfs'
lvm=false
cryptsetup=false
ouput='initramfs'
init_script=''
reset=$( tput sgr0 )
log_file="/tmp/mkinitramfs.log"
usage()
{
cat << EOF
Usage: $O [OPTION]
A generator of initramfs.

    -h		    Show help message.
    -l		    Support for LVM2.
    -c		    Support for Cryptsetup ( with Luks ).
    -i <script>	    Change initial script.
    -C <config>	    Change busybox configuration.
    -o <filename>   Change output filename ( default: initramfs ).
    -v <version>    Change busybox version.

Report bugs to <tiky.halbaroth AT gmail.com>
EOF
}

success()
{
    green=$( tput setaf 2 )
    str="${green}>> $1${reset}"
    echo $str && echo $str >> "$log_file"
}

error()
{
    red=$( tput setaf 1 )
    str="${red}!!! $1${reset}"
    echo $str && echo $str >> "$log_file"
}

info()
{
    blue=$( tput setaf 4 )
    str="${blue}>> $1${reset}"
    echo $str && echo $str >> "$log_file"
}

busybox_unpack()
{
    mkdir $bb_tmp
    tar -xjpf $bb_archive -C /tmp >> "$log_file" 2>&1
    if [ $? -eq 0 ]
    then
	path="${bb_tmp}-${bb_version}"
	mv $path/* $bb_tmp
	mv $path/.??* $bb_tmp
	rmdir $path
    else
	error "Corrupted archive"
	clear
	rm -i $bb_archive
	exit 1
    fi
}

set_feature()
{
    sed -ie "s/^# $1 is not set/$1=y/" .config
}

unset_feature()
{
    sed -ie "s/^$1=y/# $1 is not set/" .config
}

busybox()
{
    if [ -f $bb_archive ]
    then
	busybox_unpack
    else
	info "busybox getting..."
	if wget -t 1 $bb_url -O $bb_archive >> "$log_file" 2>&1
	then
	    busybox_unpack
	else
	    error "busybox archive not found"
	    clear
	    exit 1
	fi
    fi
    cd $bb_tmp
    info "busybox setting..."
    if [ -z "$bb_config" ]
    then
	make defconfig >> "$log_file" 2>&1
	unset_feature CONFIG_INIT
	unset_feature CONFIG_DEBUG_INIT
	unset_feature CONFIG_FEATURE_USE_INITTAB
	unset_feature CONFIG_FEATURE_INIT_SCTTY
	unset_feature CONFIG_FEATURE_EXTRA_QUIET
	unset_feature CONFIG_FEATURE_INIT_COREDUMPS
	unset_feature CONFIG_FEATURE_INITRD
	set_feature CONFIG_STATIC
	unset_feature CONFIG_FEATURE_SHARED_BUSYBOX
	set_feature CONFIG_INSTALL_NO_USR
	cp .config /home/tiky/config2
    else
	echo "$bb_config" > .config
    fi

    info "busybox making..."
    make >> "$log_file" 2>&1
    if [ $? -eq 0 ] 
    then
	success "busybox compiled"
	make busybox.links >> "$log_file" 2>&1
	if [ $? -eq 0 ]
	then
	    success "busybox linked"
	else
	    error "busybox link failed"
	    clear
	    exit 1
	fi
    else
	error "busybox make failed"
	clear
	exit 1
    fi
}

add_binary()
{
    info "add $1 binary"
    filename=$( which $1 2> /dev/null )
    if [ -x $filename ] && [ ! -z $filename ]
    then
	ld=$( ldd $filename )
	if [ $? -eq 0 ]
	then
	    error "$1 isn't a static binary"
	    clear
	    exit 1
	else
	    cp -p $filename $ir_tmp/sbin
	    success "$1 added"
	fi
    else
	error "$1 not found"
	clear 
	exit 1
    fi
}

initramfs()
{
    mkdir $ir_tmp
    ./applets/install.sh $ir_tmp --symlinks >> "$log_file" 2>&1
    if [ $? -eq 0 ]
    then
	success "busybox installed in $ir_tmp"
	cd $ir_tmp
	mkdir {proc,sys,new-root,etc,dev}

	if [ -z "$init_script" ]
	then
	    echo "$init_script" > init
	    chmod 755 init
	else
	    touch init
	    chmod 755 init
	fi

	mknod --mode=0660 dev/null c 1 3
	mknod --mode=0660 dev/console c 5 1

	if $lvm
	then
	    add_binary lvm
	    add_binary vgscan
	    add_binary vgchange
	fi

	if $cryptsetup
	then
	    add_binary cryptsetup
	fi
    else
	error "Cannot install busybox in $ir_tmp"
	exit 1
    fi
}

clear()
{
    if [ -e $bb_tmp ]
    then
	rm -Rf $bb_tmp
    fi

    if [ -e $ir_tmp ]
    then
	rm -Rf $ir_tmp
    fi
}

while getopts "hlci:C:o" option
do
    case $option in
	h)
	    usage
	    exit
	    ;;
	l)
	    info "lvm support enabled"
	    lvm=true
	    ;;
	c)
	    info "cryptsetup ( with luks ) enabled"
	    cryptsetup=true
	    ;;
	i)
	    if [ -f "$OPTARG" ]
	    then
		info "change init script to $OPTARG"
		init_script="$( cat $OPTARG )"
	    else
		error "$OPTARG not found"
		exit 1
	    fi
	    ;;
	C)
	    if [ -f "$OPTARG" ]
	    then
		info "change busybox config to $OPTARG"
		bb_config="$( cat $OPTARG )"
	    else
		error "$OPTARG not found"
		exit 1
	    fi
	    ;;
	O)
	    info "change output filename to $OPTARG"
	    ouput="$OPTARG"
	    ;;
	v)
	    info "change busybox version to $OPTARG"
	    bb_version="$OPTARG"
	    ;;
	?)
	    usage
	    exit 1
	    ;;
    esac
done

if [ -e "$log_file" ]
then
    rm -f "$log_file"
fi

clear
busybox
initramfs
clear
>> busybox getting...(B
--2008-10-15 12:27:04--  http://busybox.net/downloads/busybox-1.12.1.tar.bz2
Résolution de busybox.net... 140.211.166.42
Connexion vers busybox.net|140.211.166.42|:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: 2022321 (1,9M) [application/x-tar]
Saving to: `/tmp/busybox-1.12.1.tar.bz2'

     0K .......... .......... .......... .......... ..........  2% 59,9K 32s
    50K .......... .......... .......... .......... ..........  5%  198K 20s
   100K .......... .......... .......... .......... ..........  7%  254K 16s
   150K .......... .......... .......... .......... .......... 10%  248K 13s
   200K .......... .......... .......... .......... .......... 12%  250K 12s
   250K .......... .......... .......... .......... .......... 15%  253K 11s
   300K .......... .......... .......... .......... .......... 17%  250K 10s
   350K .......... .......... .......... .......... .......... 20%  254K 9s
   400K .......... .......... .......... .......... .......... 22%  249K 8s
   450K .......... .......... .......... .......... .......... 25%  256K 8s
   500K .......... .......... .......... .......... .......... 27%  249K 7s
   550K .......... .......... .......... .......... .......... 30%  256K 7s
   600K .......... .......... .......... .......... .......... 32%  249K 7s
   650K .......... .......... .......... .......... .......... 35%  249K 6s
   700K .......... .......... .......... .......... .......... 37%  256K 6s
   750K .......... .......... .......... .......... .......... 40%  248K 6s
   800K .......... .......... .......... .......... .......... 43%  258K 5s
   850K .......... .......... .......... .......... .......... 45%  249K 5s
   900K .......... .......... .......... .......... .......... 48%  256K 5s
   950K .......... .......... .......... .......... .......... 50%  246K 5s
  1000K .......... .......... .......... .......... .......... 53%  259K 4s
  1050K .......... .......... .......... .......... .......... 55%  250K 4s
  1100K .......... .......... .......... .......... .......... 58%  249K 4s
  1150K .......... .......... .......... .......... .......... 60%  256K 4s
  1200K .......... .......... .......... .......... .......... 63%  246K 3s
  1250K .......... .......... .......... .......... .......... 65%  259K 3s
  1300K .......... .......... .......... .......... .......... 68%  248K 3s
  1350K .......... .......... .......... .......... .......... 70%  258K 3s
  1400K .......... .......... .......... .......... .......... 73%  249K 2s
  1450K .......... .......... .......... .......... .......... 75%  256K 2s
  1500K .......... .......... .......... .......... .......... 78%  249K 2s
  1550K .......... .......... .......... .......... .......... 81%  249K 2s
  1600K .......... .......... .......... .......... .......... 83%  256K 1s
  1650K .......... .......... .......... .......... .......... 86%  249K 1s
  1700K .......... .......... .......... .......... .......... 88%  256K 1s
  1750K .......... .......... .......... .......... .......... 91%  249K 1s
  1800K .......... .......... .......... .......... .......... 93%  256K 1s
  1850K .......... .......... .......... .......... .......... 96%  249K 0s
  1900K .......... .......... .......... .......... .......... 98%  256K 0s
  1950K .......... .......... ....                            100%  254K=8,5s

2008-10-15 12:27:24 (232 KB/s) - « /tmp/busybox-1.12.1.tar.bz2 » sauvegardé [2022321/2022321]

>> busybox setting...(B
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/split-include
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kxgettext.o
  HOSTCC  scripts/kconfig/mconf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/lex.zconf.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf -d Config.in
*
* Busybox Configuration
*
*
* Busybox Settings
*
*
* General Configuration
*
Enable options for full-blown desktop systems (DESKTOP) [N/y/?] n
Provide compatible behavior for rare corner cases (bigger code) (EXTRA_COMPAT) [N/y/?] n
Assume that 1:1 char/glyph correspondence is not true (FEATURE_ASSUME_UNICODE) [N/y/?] n
Buffer allocation policy
> 1. Allocate with Malloc (FEATURE_BUFFERS_USE_MALLOC)
  2. Allocate on the Stack (FEATURE_BUFFERS_GO_ON_STACK)
  3. Allocate in the .bss section (FEATURE_BUFFERS_GO_IN_BSS)
choice[1-3?]: 1
Show terse applet usage messages (SHOW_USAGE) [Y/?] y
Show verbose applet usage messages (FEATURE_VERBOSE_USAGE) [Y/n/?] y
Store applet usage messages in compressed form (FEATURE_COMPRESS_USAGE) [Y/n/?] y
Support --install [-s] to install applet links at runtime (FEATURE_INSTALLER) [Y/n/?] y
Enable locale support (system needs locale for this to work) (LOCALE_SUPPORT) [Y/n/?] y
Support for --long-options (GETOPT_LONG) [Y/n/?] y
Use the devpts filesystem for Unix98 PTYs (FEATURE_DEVPTS) [Y/n/?] y
Clean up all memory before exiting (usually not needed) (FEATURE_CLEAN_UP) [N/y/?] n
Support writing pidfiles (FEATURE_PIDFILE) [Y/n/?] y
Support for SUID/SGID handling (FEATURE_SUID) [Y/?] y
  Runtime SUID/SGID configuration via /etc/busybox.conf (FEATURE_SUID_CONFIG) [Y/n/?] y
    Suppress warning message if /etc/busybox.conf is not readable (FEATURE_SUID_CONFIG_QUIET) [Y/n/?] y
Support NSA Security Enhanced Linux (SELINUX) [N/y/?] n
exec prefers applets (FEATURE_PREFER_APPLETS) [N/y/?] n
Path to BusyBox executable (BUSYBOX_EXEC_PATH) [/proc/self/exe] /proc/self/exe
Support for logging to syslog (FEATURE_SYSLOG) [Y/?] y
RPC support (FEATURE_HAVE_RPC) [Y/?] y
*
* Build Options
*
Build BusyBox as a static binary (no shared libs) (STATIC) [N/y/?] n
  Build BusyBox as a position independent executable (PIE) [N/y/?] n
Force NOMMU build (NOMMU) [N/y/?] n
Build shared libbusybox (BUILD_LIBBUSYBOX) [N/y/?] n
Build with Large File Support (for accessing files > 2 GB) (LFS) [Y/n/?] y
Cross Compiler prefix (CROSS_COMPILER_PREFIX) [] 
*
* Debugging Options
*
Build BusyBox with extra Debugging symbols (DEBUG) [N/y/?] n
Abort compilation on any warning (WERROR) [N/y/?] n
Additional debugging library
> 1. None (NO_DEBUG_LIB)
  2. Dmalloc (DMALLOC)
  3. Electric-fence (EFENCE)
choice[1-3?]: 1
Enable obsolete features removed before SUSv3? (INCLUDE_SUSv2) [Y/n/?] y
Uniform config file parser debugging applet: parse (PARSE) [N/y] n
*
* Installation Options
*
Don't use /usr (INSTALL_NO_USR) [N/y/?] n
Applets links
> 1. as soft-links (INSTALL_APPLET_SYMLINKS)
  2. as hard-links (INSTALL_APPLET_HARDLINKS)
  3. as script wrappers (INSTALL_APPLET_SCRIPT_WRAPPERS)
  4. not installed (INSTALL_APPLET_DONT)
choice[1-4?]: 1
BusyBox installation prefix (PREFIX) [./_install] ./_install
*
* Busybox Library Tuning
*
Minimum password length (PASSWORD_MINLEN) [6] 6
MD5: Trade Bytes for Speed (MD5_SIZE_VS_SPEED) [2] 2
Faster /proc scanning code (+100 bytes) (FEATURE_FAST_TOP) [Y/n/?] y
Support for /etc/networks (FEATURE_ETC_NETWORKS) [N/y/?] n
Command line editing (FEATURE_EDITING) [Y/n/?] y
  Maximum length of input (FEATURE_EDITING_MAX_LEN) [1024] 1024
  vi-style line editing commands (FEATURE_EDITING_VI) [N/y/?] n
  History size (FEATURE_EDITING_HISTORY) [15] 15
  History saving (FEATURE_EDITING_SAVEHISTORY) [N/y/?] n
  Tab completion (FEATURE_TAB_COMPLETION) [Y/n/?] y
    Username completion (FEATURE_USERNAME_COMPLETION) [N/y/?] n
  Fancy shell prompts (FEATURE_EDITING_FANCY_PROMPT) [N/y/?] n
Give more precise messages when copy fails (cp, mv etc) (FEATURE_VERBOSE_CP_MESSAGE) [N/y/?] n
Copy buffer size, in kilobytes (FEATURE_COPYBUF_KB) [4] 4
Use clock_gettime(CLOCK_MONOTONIC) syscall (MONOTONIC_SYSCALL) [N/y/?] n
Use ioctl names rather than hex values in error messages (IOCTL_HEX2STR_ERROR) [Y/n/?] y
Support infiniband HW (FEATURE_HWIB) [Y/n/?] y
*
* Applets
*
*
* Archival Utilities
*
Make tar, rpm, modprobe etc understand .lzma data (FEATURE_SEAMLESS_LZMA) [Y/n/?] y
Make tar, rpm, modprobe etc understand .bz2 data (FEATURE_SEAMLESS_BZ2) [Y/n/?] y
Make tar, rpm, modprobe etc understand .gz data (FEATURE_SEAMLESS_GZ) [Y/n/?] y
Make tar and gunzip understand .Z data (FEATURE_SEAMLESS_Z) [Y/n/?] y
ar (AR) [Y/n/?] y
  Support for long filenames (not need for debs) (FEATURE_AR_LONG_FILENAMES) [Y/n/?] y
bunzip2 (BUNZIP2) [Y/n/?] y
bzip2 (BZIP2) [Y/n/?] y
cpio (CPIO) [Y/n/?] y
  Support for archive creation (FEATURE_CPIO_O) [Y/n/?] y
dpkg (DPKG) [N/y/?] n
dpkg_deb (DPKG_DEB) [N/y/?] n
gunzip (GUNZIP) [Y/n/?] y
gzip (GZIP) [Y/n/?] y
rpm2cpio (RPM2CPIO) [Y/n/?] y
rpm (RPM) [Y/n/?] y
tar (TAR) [Y/n/?] y
  Enable archive creation (FEATURE_TAR_CREATE) [Y/n/?] y
  Autodetect gz/bz2 compressed tarballs (FEATURE_TAR_AUTODETECT) [Y/n/?] y
  Enable -X (exclude from) and -T (include from) options) (FEATURE_TAR_FROM) [Y/n/?] y
  Support for old tar header format (FEATURE_TAR_OLDGNU_COMPATIBILITY) [Y/n/?] y
  Enable untarring of tarballs with checksums produced by buggy Sun tar (FEATURE_TAR_OLDSUN_COMPATIBILITY) [Y/n/?] y
  Support for GNU tar extensions (long filenames) (FEATURE_TAR_GNU_EXTENSIONS) [Y/n/?] y
  Enable long options (FEATURE_TAR_LONG_OPTIONS) [Y/n/?] y
  Enable use of user and group names (FEATURE_TAR_UNAME_GNAME) [Y/n/?] y
uncompress (UNCOMPRESS) [Y/n/?] y
unlzma (UNLZMA) [Y/n/?] y
  Optimize unlzma for speed (FEATURE_LZMA_FAST) [Y/n/?] y
unzip (UNZIP) [Y/n/?] y
*
* Coreutils
*
basename (BASENAME) [Y/n/?] y
cal (CAL) [Y/n/?] y
cat (CAT) [Y/n/?] y
catv (CATV) [Y/n/?] y
chgrp (CHGRP) [Y/n/?] y
chmod (CHMOD) [Y/n/?] y
chown (CHOWN) [Y/n/?] y
chroot (CHROOT) [Y/n/?] y
cksum (CKSUM) [Y/n/?] y
comm (COMM) [Y/n/?] y
cp (CP) [Y/n/?] y
cut (CUT) [Y/n/?] y
date (DATE) [Y/n/?] y
  Enable ISO date format output (-I) (FEATURE_DATE_ISOFMT) [Y/n/?] y
dd (DD) [Y/n/?] y
  Enable DD signal handling for status reporting (FEATURE_DD_SIGNAL_HANDLING) [Y/n/?] y
  Enable ibs, obs and conv options (FEATURE_DD_IBS_OBS) [Y/n/?] y
df (DF) [Y/n/?] y
  Enable -i (inode information) (FEATURE_DF_INODE) [Y/n/?] y
dirname (DIRNAME) [Y/n/?] y
dos2unix/unix2dos (DOS2UNIX) [Y/n/?] y
du (default blocksize of 512 bytes) (DU) [Y/n/?] y
  Use a default blocksize of 1024 bytes (1K) (FEATURE_DU_DEFAULT_BLOCKSIZE_1K) [Y/n/?] y
echo (basic SuSv3 version taking no options) (ECHO) [Y/n/?] y
  Enable echo options (-n and -e) (FEATURE_FANCY_ECHO) [Y/n/?] y
env (ENV) [Y/n/?] y
  Enable long options (FEATURE_ENV_LONG_OPTIONS) [Y/n/?] y
expand (EXPAND) [Y/n/?] y
  Enable long options (FEATURE_EXPAND_LONG_OPTIONS) [Y/n/?] y
expr (EXPR) [Y/n/?] y
  Extend Posix numbers support to 64 bit (EXPR_MATH_SUPPORT_64) [Y/n/?] y
false (FALSE) [Y/n/?] y
fold (FOLD) [Y/n/?] y
head (HEAD) [Y/n/?] y
  Enable head options (-c, -q, and -v) (FEATURE_FANCY_HEAD) [Y/n/?] y
hostid (HOSTID) [Y/n/?] y
id (ID) [Y/n/?] y
install (INSTALL) [Y/n/?] y
  Enable long options (FEATURE_INSTALL_LONG_OPTIONS) [Y/n/?] y
length (LENGTH) [Y/n/?] y
ln (LN) [Y/n/?] y
logname (LOGNAME) [Y/n/?] y
ls (LS) [Y/n/?] y
  Enable filetyping options (-p and -F) (FEATURE_LS_FILETYPES) [Y/n/?] y
  Enable symlinks dereferencing (-L) (FEATURE_LS_FOLLOWLINKS) [Y/n/?] y
  Enable recursion (-R) (FEATURE_LS_RECURSIVE) [Y/n/?] y
  Sort the file names (FEATURE_LS_SORTFILES) [Y/n/?] y
  Show file timestamps (FEATURE_LS_TIMESTAMPS) [Y/n/?] y
  Show username/groupnames (FEATURE_LS_USERNAME) [Y/n/?] y
  Allow use of color to identify file types (FEATURE_LS_COLOR) [Y/n/?] y
    Produce colored ls output by default (FEATURE_LS_COLOR_IS_DEFAULT) [Y/n/?] y
md5sum (MD5SUM) [Y/n/?] y
mkdir (MKDIR) [Y/n/?] y
  Enable long options (FEATURE_MKDIR_LONG_OPTIONS) [Y/n/?] y
mkfifo (MKFIFO) [Y/n/?] y
mknod (MKNOD) [Y/n/?] y
mv (MV) [Y/n/?] y
  Enable long options (FEATURE_MV_LONG_OPTIONS) [Y/n/?] y
nice (NICE) [Y/n/?] y
nohup (NOHUP) [Y/n/?] y
od (OD) [Y/n/?] y
printenv (PRINTENV) [Y/n/?] y
printf (PRINTF) [Y/n/?] y
pwd (PWD) [Y/n/?] y
readlink (READLINK) [Y/n/?] y
  Enable canonicalization by following all symlinks (-f) (FEATURE_READLINK_FOLLOW) [Y/n/?] y
realpath (REALPATH) [Y/n/?] y
rm (RM) [Y/n/?] y
rmdir (RMDIR) [Y/n/?] y
  Enable long options (FEATURE_RMDIR_LONG_OPTIONS) [N/y/?] n
seq (SEQ) [Y/n/?] y
sha1sum (SHA1SUM) [Y/n/?] y
sleep (SLEEP) [Y/n/?] y
  Enable multiple arguments and s/m/h/d suffixes (FEATURE_FANCY_SLEEP) [Y/n/?] y
    Enable fractional arguments (FEATURE_FLOAT_SLEEP) [Y/n/?] y
sort (SORT) [Y/n/?] y
  Full SuSv3 compliant sort (support -ktcsbdfiozgM) (FEATURE_SORT_BIG) [Y/n/?] y
split (SPLIT) [Y/n/?] y
  Fancy extensions (FEATURE_SPLIT_FANCY) [Y/n/?] y
stat (STAT) [Y/n/?] y
  Enable custom formats (-c) (FEATURE_STAT_FORMAT) [Y/n/?] y
stty (STTY) [Y/n/?] y
sum (SUM) [Y/n/?] y
sync (SYNC) [Y/n/?] y
tac (TAC) [Y/n/?] y
tail (TAIL) [Y/n/?] y
  Enable extra tail options (-q, -s, and -v) (FEATURE_FANCY_TAIL) [Y/n/?] y
tee (TEE) [Y/n/?] y
  Enable block I/O (larger/faster) instead of byte I/O (FEATURE_TEE_USE_BLOCK_IO) [Y/n/?] y
test (TEST) [Y/n/?] y
  Extend test to 64 bit (FEATURE_TEST_64) [Y/n/?] y
touch (TOUCH) [Y/n/?] y
tr (TR) [Y/n/?] y
  Enable character classes (such as [:upper:]) (FEATURE_TR_CLASSES) [Y/n/?] y
  Enable equivalence classes (FEATURE_TR_EQUIV) [Y/n/?] y
true (TRUE) [Y/n/?] y
tty (TTY) [Y/n/?] y
uname (UNAME) [Y/n/?] y
unexpand (UNEXPAND) [Y/n/?] y
  Enable long options (FEATURE_UNEXPAND_LONG_OPTIONS) [Y/n/?] y
uniq (UNIQ) [Y/n/?] y
usleep (USLEEP) [Y/n/?] y
uudecode (UUDECODE) [Y/n/?] y
uuencode (UUENCODE) [Y/n/?] y
wc (WC) [Y/n/?] y
  Support very large files in wc (FEATURE_WC_LARGE) [Y/n/?] y
who (WHO) [Y/n/?] y
whoami (WHOAMI) [Y/n/?] y
yes (YES) [Y/n/?] y
*
* Common options for cp and mv
*
Preserve hard links (FEATURE_PRESERVE_HARDLINKS) [Y/n/?] y
*
* Common options for ls, more and telnet
*
Calculate terminal & column widths (FEATURE_AUTOWIDTH) [Y/n/?] y
*
* Common options for df, du, ls
*
Support for human readable output (example 13k, 23M, 235G) (FEATURE_HUMAN_READABLE) [Y/n/?] y
*
* Common options for md5sum, sha1sum
*
Enable -c, -s and -w options (FEATURE_MD5_SHA1_SUM_CHECK) [Y/n/?] y
*
* Console Utilities
*
chvt (CHVT) [Y/n/?] y
clear (CLEAR) [Y/n/?] y
deallocvt (DEALLOCVT) [Y/n/?] y
dumpkmap (DUMPKMAP) [Y/n/?] y
kbd_mode (KBD_MODE) [Y/n/?] y
loadfont (LOADFONT) [Y/n/?] y
loadkmap (LOADKMAP) [Y/n/?] y
openvt (OPENVT) [Y/n/?] y
reset (RESET) [Y/n/?] y
resize (RESIZE) [Y/n/?] y
  Print environment variables (FEATURE_RESIZE_PRINT) [Y/n/?] y
setconsole (SETCONSOLE) [Y/n/?] y
  Enable long options (FEATURE_SETCONSOLE_LONG_OPTIONS) [Y/n/?] y
setfont (SETFONT) [Y/n/?] y
setkeycodes (SETKEYCODES) [Y/n/?] y
setlogcons (SETLOGCONS) [Y/n/?] y
showkey (SHOWKEY) [Y/n/?] y
*
* Debian Utilities
*
mktemp (MKTEMP) [Y/n/?] y
pipe_progress (PIPE_PROGRESS) [Y/n/?] y
run-parts (RUN_PARTS) [Y/n/?] y
  Enable long options (FEATURE_RUN_PARTS_LONG_OPTIONS) [Y/n/?] y
  Support additional arguments (FEATURE_RUN_PARTS_FANCY) [Y/n/?] y
start-stop-daemon (START_STOP_DAEMON) [Y/n/?] y
  Support additional arguments (FEATURE_START_STOP_DAEMON_FANCY) [Y/n/?] y
  Enable long options (FEATURE_START_STOP_DAEMON_LONG_OPTIONS) [Y/n/?] y
which (WHICH) [Y/n/?] y
*
* Editors
*
awk (AWK) [Y/n/?] y
  Enable math functions (requires libm) (FEATURE_AWK_MATH) [Y/n/?] y
cmp (CMP) [Y/n/?] y
diff (DIFF) [Y/n/?] y
  Enable checks for binary files (FEATURE_DIFF_BINARY) [Y/n/?] y
  Enable directory support (FEATURE_DIFF_DIR) [Y/n/?] y
  Enable -d option to find smaller sets of changes (FEATURE_DIFF_MINIMAL) [Y/n/?] y
ed (ED) [Y/n/?] y
patch (PATCH) [Y/n/?] y
sed (SED) [Y/n/?] y
vi (VI) [Y/n/?] y
  Maximum screen width in vi (FEATURE_VI_MAX_LEN) [4096] 4096
  Allow vi to display 8-bit chars (otherwise shows dots) (FEATURE_VI_8BIT) [N/y/?] n
  Enable ":" colon commands (no "ex" mode) (FEATURE_VI_COLON) [Y/n/?] y
  Enable yank/put commands and mark cmds (FEATURE_VI_YANKMARK) [Y/n/?] y
  Enable search and replace cmds (FEATURE_VI_SEARCH) [Y/n/?] y
  Catch signals (FEATURE_VI_USE_SIGNALS) [Y/n/?] y
  Remember previous cmd and "." cmd (FEATURE_VI_DOT_CMD) [Y/n/?] y
  Enable -R option and "view" mode (FEATURE_VI_READONLY) [Y/n/?] y
  Enable set-able options, ai ic showmatch (FEATURE_VI_SETOPTS) [Y/n/?] y
  Support for :set (FEATURE_VI_SET) [Y/n/?] y
  Handle window resize (FEATURE_VI_WIN_RESIZE) [Y/n/?] y
  Optimize cursor movement (FEATURE_VI_OPTIMIZE_CURSOR) [Y/n/?] y
  Allow vi and awk to execute shell commands (FEATURE_ALLOW_EXEC) [Y/n/?] y
*
* Finding Utilities
*
find (FIND) [Y/n/?] y
  Enable -print0 option (FEATURE_FIND_PRINT0) [Y/n/?] y
  Enable modified time matching (-mtime option) (FEATURE_FIND_MTIME) [Y/n/?] y
  Enable modified time matching (-mmin option) (FEATURE_FIND_MMIN) [Y/n/?] y
  Enable permissions matching (-perm option) (FEATURE_FIND_PERM) [Y/n/?] y
  Enable filetype matching (-type option) (FEATURE_FIND_TYPE) [Y/n/?] y
  Enable 'stay in filesystem' option (-xdev) (FEATURE_FIND_XDEV) [Y/n/?] y
  Enable -maxdepth N option (FEATURE_FIND_MAXDEPTH) [Y/n/?] y
  Enable -newer option for comparing file mtimes (FEATURE_FIND_NEWER) [Y/n/?] y
  Enable inode number matching (-inum option) (FEATURE_FIND_INUM) [Y/n/?] y
  Enable -exec option allowing execution of commands (FEATURE_FIND_EXEC) [Y/n/?] y
  Enable username/uid matching (-user option) (FEATURE_FIND_USER) [Y/n/?] y
  Enable group/gid matching (-group option) (FEATURE_FIND_GROUP) [Y/n/?] y
  Enable the 'not' (!) operator (FEATURE_FIND_NOT) [Y/n/?] y
  Enable the -depth option (FEATURE_FIND_DEPTH) [Y/n/?] y
  Enable parens in options (FEATURE_FIND_PAREN) [Y/n/?] y
  Enable -size option allowing matching for file size (FEATURE_FIND_SIZE) [Y/n/?] y
  Enable -prune option allowing to exclude subdirectories (FEATURE_FIND_PRUNE) [Y/n/?] y
  Enable -delete option allowing to delete files (FEATURE_FIND_DELETE) [Y/n/?] y
  Enable -path option allowing to match pathname patterns (FEATURE_FIND_PATH) [Y/n/?] y
  Enable -regex: match pathname to regex (FEATURE_FIND_REGEX) [Y/n/?] y
grep (GREP) [Y/n/?] y
  Support extended regular expressions (egrep & grep -E) (FEATURE_GREP_EGREP_ALIAS) [Y/n/?] y
  Alias fgrep to grep -F (FEATURE_GREP_FGREP_ALIAS) [Y/n/?] y
  Enable before and after context flags (-A, -B and -C) (FEATURE_GREP_CONTEXT) [Y/n/?] y
xargs (XARGS) [Y/n/?] y
  Enable prompt and confirmation option -p (FEATURE_XARGS_SUPPORT_CONFIRMATION) [Y/n/?] y
  Enable support single and double quotes and backslash (FEATURE_XARGS_SUPPORT_QUOTES) [Y/n/?] y
  Enable support options -x (FEATURE_XARGS_SUPPORT_TERMOPT) [Y/n/?] y
  Enable null terminated option -0 (FEATURE_XARGS_SUPPORT_ZERO_TERM) [Y/n/?] y
*
* Init Utilities
*
init (INIT) [Y/n/?] y
  Debugging aid (DEBUG_INIT) [N/y/?] n
  Support reading an inittab file (FEATURE_USE_INITTAB) [Y/n/?] y
    Support killing processes that have been removed from inittab (FEATURE_KILL_REMOVED) [N/y/?] n
  Run commands with leading dash with controlling tty (FEATURE_INIT_SCTTY) [Y/n/?] y
  Enable init to write to syslog (FEATURE_INIT_SYSLOG) [N/y] n
  Be _extra_ quiet on boot (FEATURE_EXTRA_QUIET) [Y/n/?] y
  Support dumping core for child processes (debugging only) (FEATURE_INIT_COREDUMPS) [Y/n/?] y
  Support running init from within an initrd (not initramfs) (FEATURE_INITRD) [Y/n/?] y
poweroff, halt, and reboot (HALT) [Y/n/?] y
mesg (MESG) [Y/n/?] y
*
* Login/Password Management Utilities
*
Support for shadow passwords (FEATURE_SHADOWPASSWDS) [Y/n/?] y
Use internal password and group functions rather than system functions (USE_BB_PWD_GRP) [Y/n/?] y
  Use internal shadow password functions (USE_BB_SHADOW) [Y/n/?] y
Use internal DES and MD5 crypt functions (USE_BB_CRYPT) [Y/n/?] y
addgroup (ADDGROUP) [Y/n/?] y
  Support for adding users to groups (FEATURE_ADDUSER_TO_GROUP) [Y/n/?] y
delgroup (DELGROUP) [Y/n/?] y
  Support for removing users from groups (FEATURE_DEL_USER_FROM_GROUP) [Y/n/?] y
Enable sanity check on user/group names in adduser and addgroup (FEATURE_CHECK_NAMES) [N/y/?] n
adduser (ADDUSER) [Y/n/?] y
  Enable long options (FEATURE_ADDUSER_LONG_OPTIONS) [N/y/?] n
deluser (DELUSER) [Y/n/?] y
getty (GETTY) [Y/n/?] y
  Support utmp file (FEATURE_UTMP) [Y/?] y
  Support wtmp file (FEATURE_WTMP) [Y/?] y
login (LOGIN) [Y/n/?] y
  Support for PAM (Pluggable Authentication Modules) (PAM) [N/y/?] n
  Support for login scripts (LOGIN_SCRIPTS) [Y/n/?] y
  Support for /etc/nologin (FEATURE_NOLOGIN) [Y/n/?] y
  Support for /etc/securetty (FEATURE_SECURETTY) [Y/n/?] y
passwd (PASSWD) [Y/n/?] y
  Check new passwords for weakness (FEATURE_PASSWD_WEAK_CHECK) [Y/n/?] y
cryptpw (CRYPTPW) [Y/n/?] y
chpasswd (CHPASSWD) [Y/n/?] y
su (SU) [Y/n/?] y
  Enable su to write to syslog (FEATURE_SU_SYSLOG) [Y/n] y
  Enable su to check user's shell to be listed in /etc/shells (FEATURE_SU_CHECKS_SHELLS) [Y/n] y
sulogin (SULOGIN) [Y/n/?] y
vlock (VLOCK) [Y/n/?] y
*
* Linux Ext2 FS Progs
*
chattr (CHATTR) [Y/n/?] y
fsck (FSCK) [Y/n/?] y
lsattr (LSATTR) [Y/n/?] y
*
* Linux Module Utilities
*
Simplified modutils (MODPROBE_SMALL) [Y/n/?] y
  Accept module options on modprobe command line (FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE) [Y/n/?] y
  Skip loading of already loaded modules (FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED) [Y/n/?] y
Default directory containing modules (DEFAULT_MODULES_DIR) [/lib/modules] /lib/modules
Default name of modules.dep (DEFAULT_DEPMOD_FILE) [modules.dep] modules.dep
*
* Linux System Utilities
*
dmesg (DMESG) [Y/n/?] y
  Pretty dmesg output (FEATURE_DMESG_PRETTY) [Y/n/?] y
fbset (FBSET) [Y/n/?] y
  Turn on extra fbset options (FEATURE_FBSET_FANCY) [Y/n/?] y
  Turn on fbset readmode support (FEATURE_FBSET_READMODE) [Y/n/?] y
fdflush (FDFLUSH) [Y/n/?] y
fdformat (FDFORMAT) [Y/n/?] y
fdisk (FDISK) [Y/n/?] y
  Support over 4GB disks (FDISK_SUPPORT_LARGE_DISKS) [Y/?] y
  Write support (FEATURE_FDISK_WRITABLE) [Y/n/?] y
    Support AIX disklabels (FEATURE_AIX_LABEL) [N/y/?] n
    Support SGI disklabels (FEATURE_SGI_LABEL) [N/y/?] n
    Support SUN disklabels (FEATURE_SUN_LABEL) [N/y/?] n
    Support BSD disklabels (FEATURE_OSF_LABEL) [N/y/?] n
    Support expert mode (FEATURE_FDISK_ADVANCED) [Y/n/?] y
findfs (FINDFS) [N/y/?] n
freeramdisk (FREERAMDISK) [Y/n/?] y
fsck_minix (FSCK_MINIX) [Y/n/?] y
mkfs_minix (MKFS_MINIX) [Y/n/?] y
  *
  * Minix filesystem support
  *
  Support Minix fs v2 (fsck_minix/mkfs_minix) (FEATURE_MINIX2) [Y/n/?] y
getopt (GETOPT) [Y/n/?] y
hexdump (HEXDUMP) [Y/n/?] y
  Support -R, reverse of 'hexdump -Cv' (FEATURE_HEXDUMP_REVERSE) [N/y/?] n
hd (HD) [N/y/?] n
hwclock (HWCLOCK) [Y/n/?] y
  Support long options (--hctosys,...) (FEATURE_HWCLOCK_LONG_OPTIONS) [Y/n/?] y
  Use FHS /var/lib/hwclock/adjtime (FEATURE_HWCLOCK_ADJTIME_FHS) [Y/n/?] y
ipcrm (IPCRM) [Y/n/?] y
ipcs (IPCS) [Y/n/?] y
losetup (LOSETUP) [Y/n/?] y
mdev (MDEV) [Y/n/?] y
  Support /etc/mdev.conf (FEATURE_MDEV_CONF) [Y/n/?] y
    Support subdirs/symlinks (FEATURE_MDEV_RENAME) [Y/n/?] y
      Support regular expressions substitutions when renaming device (FEATURE_MDEV_RENAME_REGEXP) [Y/n/?] y
    Support command execution at device addition/removal (FEATURE_MDEV_EXEC) [Y/n/?] y
  Support loading of firmwares (FEATURE_MDEV_LOAD_FIRMWARE) [Y/n/?] y
mkswap (MKSWAP) [Y/n/?] y
  Version 0 support (FEATURE_MKSWAP_V0) [Y/n/?] y
more (MORE) [Y/n/?] y
  Use termios to manipulate the screen (FEATURE_USE_TERMIOS) [Y/n/?] y
Routines for detecting label and uuid on common filesystems (VOLUMEID) [N/y/?] n
mount (MOUNT) [Y/n/?] y
  Support option -f (FEATURE_MOUNT_FAKE) [Y/n/?] y
  Support option -v (FEATURE_MOUNT_VERBOSE) [Y/n/?] y
  Support mount helpers (FEATURE_MOUNT_HELPERS) [N/y/?] n
  Support specifiying devices by label or UUID (FEATURE_MOUNT_LABEL) [N/y/?] n
  Support mounting NFS file systems (FEATURE_MOUNT_NFS) [Y/n/?] y
  Support mounting CIFS/SMB file systems (FEATURE_MOUNT_CIFS) [Y/n/?] y
  Support lots of -o flags in mount (FEATURE_MOUNT_FLAGS) [Y/n/?] y
  Support /etc/fstab and -a (FEATURE_MOUNT_FSTAB) [Y/n/?] y
pivot_root (PIVOT_ROOT) [Y/n/?] y
rdate (RDATE) [Y/n/?] y
rdev (RDEV) [Y/n/?] y
readprofile (READPROFILE) [Y/n/?] y
rtcwake (RTCWAKE) [Y/n/?] y
script (SCRIPT) [Y/n/?] y
setarch (SETARCH) [Y/n/?] y
swaponoff (SWAPONOFF) [Y/n/?] y
  Support priority option -p (FEATURE_SWAPON_PRI) [Y/n/?] y
switch_root (SWITCH_ROOT) [Y/n/?] y
umount (UMOUNT) [Y/n/?] y
  Support option -a (FEATURE_UMOUNT_ALL) [Y/n/?] y
  *
  * Common options for mount/umount
  *
  Support loopback mounts (FEATURE_MOUNT_LOOP) [Y/n/?] y
  Support for the old /etc/mtab file (FEATURE_MTAB_SUPPORT) [N/y/?] n
*
* Miscellaneous Utilities
*
adjtimex (ADJTIMEX) [Y/n/?] y
bbconfig (BBCONFIG) [N/y/?] n
chat (CHAT) [Y/n/?] y
  Enable NOFAIL expect strings (FEATURE_CHAT_NOFAIL) [Y/n/?] y
  Force STDIN to be a TTY (FEATURE_CHAT_TTY_HIFI) [N/y/?] n
  Enable implicit Carriage Return (FEATURE_CHAT_IMPLICIT_CR) [Y/n/?] y
  Swallow options (FEATURE_CHAT_SWALLOW_OPTS) [N/y/?] n
  Support weird SEND escapes (FEATURE_CHAT_SEND_ESCAPES) [N/y/?] n
  Support variable-length ABORT conditions (FEATURE_CHAT_VAR_ABORT_LEN) [N/y/?] n
  Support revoking of ABORT conditions (FEATURE_CHAT_CLR_ABORT) [N/y/?] n
chrt (CHRT) [Y/n/?] y
crond (CROND) [Y/n/?] y
  Support option -d to redirect output to stderr (DEBUG_CROND_OPTION) [N/y/?] n
  Using /usr/sbin/sendmail? (FEATURE_CROND_CALL_SENDMAIL) [Y/n/?] y
crontab (CRONTAB) [Y/n/?] y
dc (DC) [Y/n/?] y
devfsd (obsolete) (DEVFSD) [N/y/?] n
Use devfs names for all devices (obsolete) (FEATURE_DEVFS) [N/y/?] n
eject (EJECT) [Y/n/?] y
  SCSI support (FEATURE_EJECT_SCSI) [Y/n/?] y
fbsplash (FBSPLASH) [Y/n/?] y
inotifyd (INOTIFYD) [Y/n/?] y
last (LAST) [Y/n/?] y
  Choose last implementation
  > 1. small (FEATURE_LAST_SMALL)
    2. huge (FEATURE_LAST_FANCY)
  choice[1-2]: 1
less (LESS) [Y/n/?] y
  Max number of input lines less will try to eat (FEATURE_LESS_MAXLINES) [9999999] 9999999
  Enable bracket searching (FEATURE_LESS_BRACKETS) [Y/n/?] y
  Enable extra flags (FEATURE_LESS_FLAGS) [Y/n/?] y
  Enable flag changes (FEATURE_LESS_FLAGCS) [Y/n/?] y
  Enable marks (FEATURE_LESS_MARKS) [Y/n/?] y
  Enable regular expressions (FEATURE_LESS_REGEXP) [Y/n/?] y
hdparm (HDPARM) [Y/n/?] y
  Support obtaining detailed information directly from drives (FEATURE_HDPARM_GET_IDENTITY) [Y/n/?] y
  Register an IDE interface (DANGEROUS) (FEATURE_HDPARM_HDIO_SCAN_HWIF) [Y/n/?] y
  Un-register an IDE interface (DANGEROUS) (FEATURE_HDPARM_HDIO_UNREGISTER_HWIF) [Y/n/?] y
  Perform device reset (DANGEROUS) (FEATURE_HDPARM_HDIO_DRIVE_RESET) [Y/n/?] y
  Tristate device for hotswap (DANGEROUS) (FEATURE_HDPARM_HDIO_TRISTATE_HWIF) [Y/n/?] y
  Get/set using_dma flag (DANGEROUS) (FEATURE_HDPARM_HDIO_GETSET_DMA) [Y/n/?] y
makedevs (MAKEDEVS) [Y/n/?] y
  Choose makedevs behaviour
    1. leaf (FEATURE_MAKEDEVS_LEAF)
  > 2. table (FEATURE_MAKEDEVS_TABLE)
  choice[1-2]: 2
man (MAN) [Y/n/?] y
microcom (MICROCOM) [Y/n/?] y
mountpoint (MOUNTPOINT) [Y/n/?] y
mt (MT) [Y/n/?] y
raidautorun (RAIDAUTORUN) [Y/n/?] y
readahead (READAHEAD) [Y/n/?] y
runlevel (RUNLEVEL) [Y/n/?] y
rx (RX) [Y/n/?] y
setsid (SETSID) [Y/n/?] y
strings (STRINGS) [Y/n/?] y
taskset (TASKSET) [Y/n/?] y
  Fancy output (FEATURE_TASKSET_FANCY) [Y/n/?] y
time (TIME) [Y/n/?] y
ttysize (TTYSIZE) [Y/n/?] y
watchdog (WATCHDOG) [Y/n/?] y
*
* Networking Utilities
*
Enable IPv6 support (FEATURE_IPV6) [Y/n/?] y
  Preferentially use IPv4 addresses from DNS queries (FEATURE_PREFER_IPV4_ADDRESS) [Y/n/?] y
Verbose resolution errors (VERBOSE_RESOLUTION_ERRORS) [N/y/?] n
arp (ARP) [Y/n/?] y
arping (ARPING) [Y/n/?] y
brctl (BRCTL) [Y/n/?] y
  Fancy options (FEATURE_BRCTL_FANCY) [Y/n/?] y
    Support show, showmac and showstp (FEATURE_BRCTL_SHOW) [Y/n/?] y
dnsd (DNSD) [Y/n/?] y
ether-wake (ETHER_WAKE) [Y/n/?] y
fakeidentd (FAKEIDENTD) [Y/n/?] y
ftpget (FTPGET) [Y/n/?] y
ftpput (FTPPUT) [Y/n/?] y
  Enable long options in ftpget/ftpput (FEATURE_FTPGETPUT_LONG_OPTIONS) [Y/n/?] y
hostname (HOSTNAME) [Y/n/?] y
httpd (HTTPD) [Y/n/?] y
  Support 'Ranges:' header (FEATURE_HTTPD_RANGES) [Y/n/?] y
  Use sendfile system call (FEATURE_HTTPD_USE_SENDFILE) [Y/n/?] y
  Support reloading of global config file on HUP signal (FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP) [Y/n/?] y
  Enable -u <user> option (FEATURE_HTTPD_SETUID) [Y/n/?] y
  Enable Basic http Authentication (FEATURE_HTTPD_BASIC_AUTH) [Y/n/?] y
    Support MD5 crypted passwords for http Authentication (FEATURE_HTTPD_AUTH_MD5) [Y/n/?] y
  Support loading additional MIME types at run-time (FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES) [Y/n/?] y
  Support Common Gateway Interface (CGI) (FEATURE_HTTPD_CGI) [Y/n/?] y
    Support for running scripts through an interpreter (FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR) [Y/n/?] y
    Set REMOTE_PORT environment variable for CGI (FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV) [Y/n/?] y
  Enable -e option (useful for CGIs written as shell scripts) (FEATURE_HTTPD_ENCODE_URL_STR) [Y/n/?] y
  Support for custom error pages (FEATURE_HTTPD_ERROR_PAGES) [Y/n/?] y
  Support for reverse proxy (FEATURE_HTTPD_PROXY) [Y/n/?] y
ifconfig (IFCONFIG) [Y/n/?] y
  Enable status reporting output (+7k) (FEATURE_IFCONFIG_STATUS) [Y/n/?] y
  Enable slip-specific options "keepalive" and "outfill" (FEATURE_IFCONFIG_SLIP) [Y/n/?] y
  Enable options "mem_start", "io_addr", and "irq" (FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ) [Y/n/?] y
  Enable option "hw" (ether only) (FEATURE_IFCONFIG_HW) [Y/n/?] y
  Set the broadcast automatically (FEATURE_IFCONFIG_BROADCAST_PLUS) [Y/n/?] y
ifenslave (IFENSLAVE) [Y/n/?] y
ifupdown (IFUPDOWN) [Y/n/?] y
  Absolute path to ifstate file (IFUPDOWN_IFSTATE_PATH) [/var/run/ifstate] /var/run/ifstate
  Use ip applet (FEATURE_IFUPDOWN_IP) [Y/n/?] y
    Use busybox ip applet (FEATURE_IFUPDOWN_IP_BUILTIN) [Y/n/?] y
  Support for IPv4 (FEATURE_IFUPDOWN_IPV4) [Y/n/?] y
  Support for IPv6 (FEATURE_IFUPDOWN_IPV6) [Y/n/?] y
  Enable mapping support (FEATURE_IFUPDOWN_MAPPING) [Y/n/?] y
  Support for external dhcp clients (FEATURE_IFUPDOWN_EXTERNAL_DHCP) [N/y/?] n
inetd (INETD) [Y/n/?] y
  Support echo service (FEATURE_INETD_SUPPORT_BUILTIN_ECHO) [Y/n/?] y
  Support discard service (FEATURE_INETD_SUPPORT_BUILTIN_DISCARD) [Y/n/?] y
  Support time service (FEATURE_INETD_SUPPORT_BUILTIN_TIME) [Y/n/?] y
  Support daytime service (FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME) [Y/n/?] y
  Support chargen service (FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN) [Y/n/?] y
  Support RPC services (FEATURE_INETD_RPC) [N/y/?] n
ip (IP) [Y/?] y
  ip address (FEATURE_IP_ADDRESS) [Y/?] y
  ip link (FEATURE_IP_LINK) [Y/?] y
  ip route (FEATURE_IP_ROUTE) [Y/?] y
  ip tunnel (FEATURE_IP_TUNNEL) [Y/n/?] y
  ip rule (FEATURE_IP_RULE) [Y/n/?] y
  Support short forms of ip commands (FEATURE_IP_SHORT_FORMS) [Y/n/?] y
  Support displaying rarely used link types (FEATURE_IP_RARE_PROTOCOLS) [N/y/?] n
ipcalc (IPCALC) [Y/n/?] y
  Fancy IPCALC, more options, adds 1 kbyte (FEATURE_IPCALC_FANCY) [Y/n/?] y
  Enable long options (FEATURE_IPCALC_LONG_OPTIONS) [Y/n/?] y
nameif (NAMEIF) [Y/n/?] y
  Extended nameif (FEATURE_NAMEIF_EXTENDED) [N/y/?] n
nc (NC) [Y/n/?] y
  Netcat server options (-l) (NC_SERVER) [Y/n/?] y
  Netcat extensions (-eiw and filename) (NC_EXTRA) [Y/n/?] y
netstat (NETSTAT) [Y/n/?] y
  Enable wide netstat output (FEATURE_NETSTAT_WIDE) [Y/n/?] y
  Enable PID/Program name output (FEATURE_NETSTAT_PRG) [Y/n/?] y
nslookup (NSLOOKUP) [Y/n/?] y
ping (PING) [Y/n/?] y
  ping6 (PING6) [Y/n/?] y
  Enable fancy ping output (FEATURE_FANCY_PING) [Y/n/?] y
pscan (PSCAN) [Y/n/?] y
route (ROUTE) [Y/n/?] y
sendmail (SENDMAIL) [Y/n/?] y
fetchmail (FETCHMAIL) [Y/n/?] y
slattach (SLATTACH) [Y/n/?] y
telnet (TELNET) [Y/n/?] y
  Pass TERM type to remote host (FEATURE_TELNET_TTYPE) [Y/n/?] y
  Pass USER type to remote host (FEATURE_TELNET_AUTOLOGIN) [Y/n/?] y
telnetd (TELNETD) [Y/n/?] y
  Support standalone telnetd (not inetd only) (FEATURE_TELNETD_STANDALONE) [Y/n/?] y
tftp (TFTP) [Y/n/?] y
tftpd (TFTPD) [Y/n/?] y
  Enable "get" command (FEATURE_TFTP_GET) [Y/n/?] y
  Enable "put" command (FEATURE_TFTP_PUT) [Y/n/?] y
  Enable "blksize" protocol option (FEATURE_TFTP_BLOCKSIZE) [Y/n/?] y
Enable debug (DEBUG_TFTP) [N/y/?] n
traceroute (TRACEROUTE) [Y/n/?] y
  Enable verbose output (FEATURE_TRACEROUTE_VERBOSE) [N/y/?] n
  Enable loose source route (FEATURE_TRACEROUTE_SOURCE_ROUTE) [N/y/?] n
  Use ICMP instead of UDP (FEATURE_TRACEROUTE_USE_ICMP) [N/y/?] n
udhcp server (udhcpd) (APP_UDHCPD) [Y/n/?] y
  dhcprelay (APP_DHCPRELAY) [Y/n/?] y
  Lease display utility (dumpleases) (APP_DUMPLEASES) [Y/n/?] y
  Rewrite the lease file at every new acknowledge (FEATURE_UDHCPD_WRITE_LEASES_EARLY) [Y/n/?] y
  Absolute path to lease file (DHCPD_LEASES_FILE) [/var/lib/misc/udhcpd.leases] /var/lib/misc/udhcpd.leases
udhcp client (udhcpc) (APP_UDHCPC) [Y/n/?] y
  Verify that the offered address is free, using ARP ping (FEATURE_UDHCPC_ARPING) [Y/n/?] y
  Enable '-P port' option for udhcpd and udhcpc (FEATURE_UDHCP_PORT) [N/y/?] n
  Compile udhcp with noisy debugging messages (FEATURE_UDHCP_DEBUG) [N/y/?] n
  Support for RFC3397 domain search (experimental) (FEATURE_RFC3397) [Y/n/?] y
  Absolute path to config script (DHCPC_DEFAULT_SCRIPT) [/usr/share/udhcpc/default.script] /usr/share/udhcpc/default.script
  DHCP options slack buffer size (UDHCPC_SLACK_FOR_BUGGY_SERVERS) [80] 80
vconfig (VCONFIG) [Y/n/?] y
wget (WGET) [Y/n/?] y
  Enable a nifty process meter (+2k) (FEATURE_WGET_STATUSBAR) [Y/n/?] y
  Enable HTTP authentication (FEATURE_WGET_AUTHENTICATION) [Y/n/?] y
  Enable long options (FEATURE_WGET_LONG_OPTIONS) [Y/n/?] y
zcip (ZCIP) [Y/n/?] y
tcpsvd (TCPSVD) [Y/n/?] y
udpsvd (UDPSVD) [Y/n/?] y
*
* Process Utilities
*
free (FREE) [Y/n/?] y
fuser (FUSER) [Y/n/?] y
kill (KILL) [Y/n/?] y
  killall (KILLALL) [Y/n/?] y
  killall5 (KILLALL5) [Y/n] y
nmeter (NMETER) [Y/n/?] y
pgrep (PGREP) [Y/n/?] y
pidof (PIDOF) [Y/n/?] y
  Enable argument for single shot (-s) (FEATURE_PIDOF_SINGLE) [Y/n/?] y
  Enable argument for omitting pids (-o) (FEATURE_PIDOF_OMIT) [Y/n/?] y
pkill (PKILL) [Y/n/?] y
ps (PS) [Y/n/?] y
  Enable argument for wide output (-w) (FEATURE_PS_WIDE) [Y/n/?] y
renice (RENICE) [Y/n/?] y
sysctl (BB_SYSCTL) [Y/n/?] y
top (TOP) [Y/n/?] y
  Show CPU per-process usage percentage (adds 2k bytes) (FEATURE_TOP_CPU_USAGE_PERCENTAGE) [Y/n/?] y
    Show CPU global usage percentage (adds 0.5k bytes) (FEATURE_TOP_CPU_GLOBAL_PERCENTS) [Y/n/?] y
    Show 1/10th of a percent in CPU/mem statistics (adds 0.3k bytes) (FEATURE_TOP_DECIMALS) [N/y/?] n
  topmem (FEATURE_TOPMEM) [Y/n/?] y
uptime (UPTIME) [Y/n/?] y
watch (WATCH) [Y/n/?] y
*
* Shells
*
Choose your default shell
> 1. ash (FEATURE_SH_IS_ASH)
  2. hush (FEATURE_SH_IS_HUSH)
  3. msh (FEATURE_SH_IS_MSH)
  4. none (FEATURE_SH_IS_NONE)
choice[1-4?]: 1
ash (ASH) [Y/?] y
  *
  * Ash Shell Options
  *
  bash-compatible extensions (ASH_BASH_COMPAT) [Y/n/?] y
  Job control (ASH_JOB_CONTROL) [Y/n/?] y
  'read -n N' and 'read -s' support (ASH_READ_NCHARS) [Y/n/?] y
  'read -t S' support (ASH_READ_TIMEOUT) [Y/n/?] y
  alias support (ASH_ALIAS) [N/y/?] n
  Posix math support (ASH_MATH_SUPPORT) [Y/n/?] y
    Extend Posix math support to 64 bit (ASH_MATH_SUPPORT_64) [Y/n/?] y
  Builtin getopt to parse positional parameters (ASH_GETOPTS) [N/y/?] n
  Builtin version of 'echo' (ASH_BUILTIN_ECHO) [Y/n/?] y
  Builtin version of 'printf' (ASH_BUILTIN_PRINTF) [Y/n/?] y
  Builtin version of 'test' (ASH_BUILTIN_TEST) [Y/n/?] y
  'command' command to override shell builtins (ASH_CMDCMD) [Y/n/?] y
  Check for new mail on interactive shells (ASH_MAIL) [N/y/?] n
  Optimize for size instead of speed (ASH_OPTIMIZE_FOR_SIZE) [Y/n/?] y
  Pseudorandom generator and variable $RANDOM (ASH_RANDOM_SUPPORT) [Y/n/?] y
  Expand prompt string (ASH_EXPAND_PRMT) [N/y/?] n
hush (HUSH) [N/y/?] n
lash (LASH) [N/y/?] n
msh (MSH) [N/y/?] n
  *
  * Bourne Shell Options
  *
  Hide message on interactive shell startup (FEATURE_SH_EXTRA_QUIET) [Y/n/?] y
cttyhack (CTTYHACK) [N/y/?] n
*
* System Logging Utilities
*
syslogd (SYSLOGD) [Y/n/?] y
  Rotate message files (FEATURE_ROTATE_LOGFILE) [Y/n/?] y
  Remote Log support (FEATURE_REMOTE_LOG) [Y/n/?] y
  Support -D (drop dups) option (FEATURE_SYSLOGD_DUP) [N/y/?] n
  Circular Buffer support (FEATURE_IPC_SYSLOG) [Y/n/?] y
    Circular buffer size in Kbytes (minimum 4KB) (FEATURE_IPC_SYSLOG_BUFFER_SIZE) [16] 16
    logread (LOGREAD) [Y/n/?] y
      Double buffering (FEATURE_LOGREAD_REDUCED_LOCKING) [Y/n/?] y
klogd (KLOGD) [Y/n/?] y
logger (LOGGER) [Y/n/?] y
*
* Runit Utilities
*
runsv (RUNSV) [Y/n/?] y
runsvdir (RUNSVDIR) [Y/n/?] y
sv (SV) [Y/n/?] y
svlogd (SVLOGD) [Y/n/?] y
chpst (CHPST) [Y/n/?] y
setuidgid (SETUIDGID) [Y/n/?] y
envuidgid (ENVUIDGID) [Y/n/?] y
envdir (ENVDIR) [Y/n/?] y
softlimit (SOFTLIMIT) [Y/n/?] y
*
* Print Utilities
*
lpd (LPD) [Y/n/?] y
lpr (LPR) [Y/n/?] y
lpq (LPQ) [Y/n/?] y
>> busybox making...(B
  SPLIT   include/autoconf.h -> include/config/*
  GEN     include/bbconfigopts.h
  HOSTCC  applets/usage
  GEN     include/usage_compressed.h
  HOSTCC  applets/applet_tables
  GEN     include/applet_tables.h
  CC      applets/applets.o
  LD      applets/built-in.o
  LD      archival/built-in.o
  CC      archival/ar.o
  CC      archival/bbunzip.o
  CC      archival/bzip2.o
  CC      archival/cpio.o
  CC      archival/gzip.o
  CC      archival/rpm.o
  CC      archival/rpm2cpio.o
  CC      archival/tar.o
  CC      archival/unzip.o
  AR      archival/lib.a
  LD      archival/libunarchive/built-in.o
  CC      archival/libunarchive/data_align.o
  CC      archival/libunarchive/data_extract_all.o
  CC      archival/libunarchive/data_extract_to_buffer.o
  CC      archival/libunarchive/data_extract_to_stdout.o
  CC      archival/libunarchive/data_skip.o
  CC      archival/libunarchive/decompress_bunzip2.o
  CC      archival/libunarchive/decompress_uncompress.o
  CC      archival/libunarchive/decompress_unlzma.o
  CC      archival/libunarchive/decompress_unzip.o
  CC      archival/libunarchive/filter_accept_all.o
  CC      archival/libunarchive/filter_accept_list.o
  CC      archival/libunarchive/filter_accept_reject_list.o
  CC      archival/libunarchive/find_list_entry.o
  CC      archival/libunarchive/get_header_ar.o
  CC      archival/libunarchive/get_header_cpio.o
  CC      archival/libunarchive/get_header_tar.o
  CC      archival/libunarchive/get_header_tar_bz2.o
  CC      archival/libunarchive/get_header_tar_gz.o
  CC      archival/libunarchive/get_header_tar_lzma.o
  CC      archival/libunarchive/header_list.o
  CC      archival/libunarchive/header_skip.o
  CC      archival/libunarchive/header_verbose_list.o
  CC      archival/libunarchive/init_handle.o
  CC      archival/libunarchive/open_transformer.o
  CC      archival/libunarchive/seek_by_jump.o
  CC      archival/libunarchive/seek_by_read.o
  CC      archival/libunarchive/unpack_ar_archive.o
  AR      archival/libunarchive/lib.a
  LD      console-tools/built-in.o
  CC      console-tools/chvt.o
  CC      console-tools/clear.o
  CC      console-tools/deallocvt.o
  CC      console-tools/dumpkmap.o
  CC      console-tools/kbd_mode.o
  CC      console-tools/loadfont.o
  CC      console-tools/loadkmap.o
  CC      console-tools/openvt.o
  CC      console-tools/reset.o
  CC      console-tools/resize.o
  CC      console-tools/setconsole.o
  CC      console-tools/setkeycodes.o
  CC      console-tools/setlogcons.o
  CC      console-tools/showkey.o
  AR      console-tools/lib.a
  LD      coreutils/built-in.o
  CC      coreutils/basename.o
  CC      coreutils/cal.o
  CC      coreutils/cat.o
  CC      coreutils/catv.o
  CC      coreutils/chgrp.o
  CC      coreutils/chmod.o
  CC      coreutils/chown.o
  CC      coreutils/chroot.o
  CC      coreutils/cksum.o
  CC      coreutils/comm.o
  CC      coreutils/cp.o
  CC      coreutils/cut.o
  CC      coreutils/date.o
  CC      coreutils/dd.o
  CC      coreutils/df.o
  CC      coreutils/dirname.o
  CC      coreutils/dos2unix.o
  CC      coreutils/du.o
  CC      coreutils/echo.o
  CC      coreutils/env.o
  CC      coreutils/expand.o
  CC      coreutils/expr.o
  CC      coreutils/false.o
  CC      coreutils/fold.o
  CC      coreutils/head.o
  CC      coreutils/hostid.o
  CC      coreutils/id.o
  CC      coreutils/install.o
  CC      coreutils/length.o
  CC      coreutils/ln.o
  CC      coreutils/logname.o
  CC      coreutils/ls.o
  CC      coreutils/md5_sha1_sum.o
  CC      coreutils/mkdir.o
  CC      coreutils/mkfifo.o
  CC      coreutils/mknod.o
  CC      coreutils/mv.o
  CC      coreutils/nice.o
  CC      coreutils/nohup.o
  CC      coreutils/od.o
  CC      coreutils/printenv.o
  CC      coreutils/printf.o
  CC      coreutils/pwd.o
  CC      coreutils/readlink.o
  CC      coreutils/realpath.o
  CC      coreutils/rm.o
  CC      coreutils/rmdir.o
  CC      coreutils/seq.o
  CC      coreutils/sleep.o
  CC      coreutils/sort.o
  CC      coreutils/split.o
  CC      coreutils/stat.o
  CC      coreutils/stty.o
  CC      coreutils/sum.o
  CC      coreutils/sync.o
  CC      coreutils/tac.o
  CC      coreutils/tail.o
  CC      coreutils/tee.o
  CC      coreutils/test.o
  CC      coreutils/test_ptr_hack.o
  CC      coreutils/touch.o
  CC      coreutils/tr.o
  CC      coreutils/true.o
  CC      coreutils/tty.o
  CC      coreutils/uname.o
  CC      coreutils/uniq.o
  CC      coreutils/usleep.o
  CC      coreutils/uudecode.o
  CC      coreutils/uuencode.o
  CC      coreutils/wc.o
  CC      coreutils/who.o
  CC      coreutils/whoami.o
  CC      coreutils/yes.o
  AR      coreutils/lib.a
  LD      coreutils/libcoreutils/built-in.o
  CC      coreutils/libcoreutils/cp_mv_stat.o
  CC      coreutils/libcoreutils/getopt_mk_fifo_nod.o
  AR      coreutils/libcoreutils/lib.a
  LD      debianutils/built-in.o
  CC      debianutils/mktemp.o
  CC      debianutils/pipe_progress.o
  CC      debianutils/run_parts.o
  CC      debianutils/start_stop_daemon.o
  CC      debianutils/which.o
  AR      debianutils/lib.a
  LD      e2fsprogs/built-in.o
  CC      e2fsprogs/chattr.o
  CC      e2fsprogs/e2fs_lib.o
  CC      e2fsprogs/fsck.o
  CC      e2fsprogs/lsattr.o
  AR      e2fsprogs/lib.a
  LD      editors/built-in.o
  CC      editors/awk.o
  CC      editors/cmp.o
  CC      editors/diff.o
  CC      editors/ed.o
  CC      editors/patch.o
  CC      editors/sed.o
  CC      editors/vi.o
  AR      editors/lib.a
  LD      findutils/built-in.o
  CC      findutils/find.o
  CC      findutils/grep.o
  CC      findutils/xargs.o
  AR      findutils/lib.a
  LD      init/built-in.o
  CC      init/halt.o
  CC      init/mesg.o
  AR      init/lib.a
  LD      libbb/built-in.o
  CC      libbb/appletlib.o
  CC      libbb/ask_confirmation.o
  CC      libbb/bb_askpass.o
  CC      libbb/bb_basename.o
  CC      libbb/bb_do_delay.o
  CC      libbb/bb_pwd.o
  CC      libbb/bb_qsort.o
  CC      libbb/bb_strtod.o
  CC      libbb/bb_strtonum.o
  CC      libbb/change_identity.o
  CC      libbb/chomp.o
  CC      libbb/compare_string_array.o
  CC      libbb/concat_path_file.o
  CC      libbb/concat_subpath_file.o
  CC      libbb/copy_file.o
  CC      libbb/copyfd.o
  CC      libbb/correct_password.o
  CC      libbb/crc32.o
  CC      libbb/create_icmp6_socket.o
  CC      libbb/create_icmp_socket.o
  CC      libbb/crypt_make_salt.o
  CC      libbb/default_error_retval.o
  CC      libbb/device_open.o
  CC      libbb/dump.o
  CC      libbb/error_msg.o
  CC      libbb/error_msg_and_die.o
  CC      libbb/execable.o
  CC      libbb/fclose_nonstdin.o
  CC      libbb/fflush_stdout_and_exit.o
  CC      libbb/fgets_str.o
  CC      libbb/find_mount_point.o
  CC      libbb/find_pid_by_name.o
  CC      libbb/find_root_device.o
  CC      libbb/full_write.o
  CC      libbb/get_console.o
  CC      libbb/get_last_path_component.o
  CC      libbb/get_line_from_file.o
  CC      libbb/getopt32.o
  CC      libbb/getpty.o
  CC      libbb/herror_msg.o
  CC      libbb/herror_msg_and_die.o
  CC      libbb/human_readable.o
  CC      libbb/inet_common.o
  CC      libbb/info_msg.o
  CC      libbb/inode_hash.o
  CC      libbb/isdirectory.o
  CC      libbb/kernel_version.o
  CC      libbb/last_char_is.o
  CC      libbb/lineedit.o
  CC      libbb/lineedit_ptr_hack.o
  CC      libbb/llist.o
  CC      libbb/login.o
  CC      libbb/loop.o
  CC      libbb/make_directory.o
  CC      libbb/makedev.o
  CC      libbb/match_fstype.o
  CC      libbb/md5.o
  CC      libbb/messages.o
  CC      libbb/mode_string.o
  CC      libbb/mtab_file.o
  CC      libbb/obscure.o
  CC      libbb/parse_config.o
  CC      libbb/parse_mode.o
  CC      libbb/perror_msg.o
  CC      libbb/perror_msg_and_die.o
  CC      libbb/perror_nomsg.o
  CC      libbb/perror_nomsg_and_die.o
  CC      libbb/pidfile.o
  CC      libbb/print_flags.o
  CC      libbb/printable.o
  CC      libbb/process_escape_sequence.o
  CC      libbb/procps.o
  CC      libbb/ptr_to_globals.o
  CC      libbb/pw_encrypt.o
  CC      libbb/read.o
  CC      libbb/recursive_action.o
  CC      libbb/remove_file.o
  CC      libbb/restricted_shell.o
  CC      libbb/rtc.o
  CC      libbb/run_shell.o
  CC      libbb/safe_gethostname.o
  CC      libbb/safe_poll.o
  CC      libbb/safe_strncpy.o
  CC      libbb/safe_write.o
  CC      libbb/setup_environment.o
  CC      libbb/sha1.o
  CC      libbb/signals.o
  CC      libbb/simplify_path.o
  CC      libbb/skip_whitespace.o
  CC      libbb/speed_table.o
  CC      libbb/str_tolower.o
  CC      libbb/strrstr.o
  CC      libbb/time.o
  CC      libbb/trim.o
  CC      libbb/u_signal_names.o
  CC      libbb/udp_io.o
  CC      libbb/update_passwd.o
  CC      libbb/uuencode.o
  CC      libbb/vdprintf.o
  CC      libbb/verror_msg.o
  CC      libbb/vfork_daemon_rexec.o
  CC      libbb/warn_ignoring_args.o
  CC      libbb/wfopen.o
  CC      libbb/wfopen_input.o
  CC      libbb/write.o
  CC      libbb/xatonum.o
  CC      libbb/xconnect.o
  CC      libbb/xfunc_die.o
  CC      libbb/xfuncs.o
  CC      libbb/xfuncs_printf.o
  CC      libbb/xgetcwd.o
  CC      libbb/xgethostbyname.o
  CC      libbb/xreadlink.o
  CC      libbb/xrealloc_vector.o
  CC      libbb/xregcomp.o
  AR      libbb/lib.a
  LD      libpwdgrp/built-in.o
  CC      libpwdgrp/pwd_grp.o
  CC      libpwdgrp/uidgid_get.o
  AR      libpwdgrp/lib.a
  LD      loginutils/built-in.o
  CC      loginutils/addgroup.o
  CC      loginutils/adduser.o
  CC      loginutils/chpasswd.o
  CC      loginutils/cryptpw.o
  CC      loginutils/deluser.o
  CC      loginutils/getty.o
  CC      loginutils/login.o
  CC      loginutils/passwd.o
  CC      loginutils/su.o
  CC      loginutils/sulogin.o
  CC      loginutils/vlock.o
  AR      loginutils/lib.a
  LD      miscutils/built-in.o
  CC      miscutils/adjtimex.o
  CC      miscutils/chat.o
  CC      miscutils/chrt.o
  CC      miscutils/crond.o
  CC      miscutils/crontab.o
  CC      miscutils/dc.o
  CC      miscutils/eject.o
  CC      miscutils/fbsplash.o
  CC      miscutils/hdparm.o
  CC      miscutils/inotifyd.o
  CC      miscutils/last.o
  CC      miscutils/less.o
  CC      miscutils/makedevs.o
  CC      miscutils/man.o
  CC      miscutils/microcom.o
  CC      miscutils/mountpoint.o
  CC      miscutils/mt.o
  CC      miscutils/raidautorun.o
  CC      miscutils/readahead.o
  CC      miscutils/runlevel.o
  CC      miscutils/rx.o
  CC      miscutils/setsid.o
  CC      miscutils/strings.o
  CC      miscutils/taskset.o
  CC      miscutils/time.o
  CC      miscutils/ttysize.o
  CC      miscutils/watchdog.o
  AR      miscutils/lib.a
  LD      modutils/built-in.o
  CC      modutils/modprobe-small.o
  AR      modutils/lib.a
  LD      networking/built-in.o
  CC      networking/arp.o
  CC      networking/arping.o
  CC      networking/brctl.o
  CC      networking/dnsd.o
  CC      networking/ether-wake.o
  CC      networking/ftpgetput.o
  CC      networking/hostname.o
  CC      networking/httpd.o
  CC      networking/ifconfig.o
  CC      networking/ifenslave.o
  CC      networking/ifupdown.o
  CC      networking/inetd.o
  CC      networking/interface.o
  CC      networking/ip.o
  CC      networking/ipcalc.o
  CC      networking/isrv.o
  CC      networking/isrv_identd.o
  CC      networking/nameif.o
  CC      networking/nc.o
  CC      networking/netstat.o
  CC      networking/nslookup.o
  CC      networking/ping.o
  CC      networking/pscan.o
  CC      networking/route.o
  CC      networking/sendmail.o
  CC      networking/slattach.o
  CC      networking/tcpudp.o
  CC      networking/tcpudp_perhost.o
  CC      networking/telnet.o
  CC      networking/telnetd.o
  CC      networking/tftp.o
  CC      networking/traceroute.o
  CC      networking/vconfig.o
  CC      networking/wget.o
  CC      networking/zcip.o
  AR      networking/lib.a
  LD      networking/libiproute/built-in.o
  CC      networking/libiproute/ip_parse_common_args.o
  CC      networking/libiproute/ipaddress.o
  CC      networking/libiproute/iplink.o
  CC      networking/libiproute/iproute.o
  CC      networking/libiproute/iprule.o
  CC      networking/libiproute/iptunnel.o
  CC      networking/libiproute/libnetlink.o
  CC      networking/libiproute/ll_addr.o
  CC      networking/libiproute/ll_map.o
  CC      networking/libiproute/ll_proto.o
  CC      networking/libiproute/ll_types.o
  CC      networking/libiproute/rt_names.o
  CC      networking/libiproute/rtm_map.o
  CC      networking/libiproute/utils.o
  AR      networking/libiproute/lib.a
  LD      networking/udhcp/built-in.o
  CC      networking/udhcp/arpping.o
  CC      networking/udhcp/clientpacket.o
  CC      networking/udhcp/clientsocket.o
  CC      networking/udhcp/common.o
  CC      networking/udhcp/dhcpc.o
  CC      networking/udhcp/dhcpd.o
  CC      networking/udhcp/dhcprelay.o
  CC      networking/udhcp/domain_codec.o
  CC      networking/udhcp/dumpleases.o
  CC      networking/udhcp/files.o
  CC      networking/udhcp/leases.o
  CC      networking/udhcp/options.o
  CC      networking/udhcp/packet.o
  CC      networking/udhcp/script.o
  CC      networking/udhcp/serverpacket.o
  CC      networking/udhcp/signalpipe.o
  CC      networking/udhcp/socket.o
  CC      networking/udhcp/static_leases.o
  AR      networking/udhcp/lib.a
  LD      printutils/built-in.o
  CC      printutils/lpd.o
  CC      printutils/lpr.o
  AR      printutils/lib.a
  LD      procps/built-in.o
  CC      procps/free.o
  CC      procps/fuser.o
  CC      procps/kill.o
  CC      procps/nmeter.o
  CC      procps/pgrep.o
  CC      procps/pidof.o
  CC      procps/ps.o
  CC      procps/renice.o
  CC      procps/sysctl.o
  CC      procps/top.o
  CC      procps/uptime.o
  CC      procps/watch.o
  AR      procps/lib.a
  LD      runit/built-in.o
  CC      runit/chpst.o
  CC      runit/runit_lib.o
  CC      runit/runsv.o
  CC      runit/runsvdir.o
  CC      runit/sv.o
  CC      runit/svlogd.o
  AR      runit/lib.a
  LD      selinux/built-in.o
  AR      selinux/lib.a
  LD      shell/built-in.o
  CC      shell/ash.o
  CC      shell/ash_ptr_hack.o
  AR      shell/lib.a
  LD      sysklogd/built-in.o
  CC      sysklogd/klogd.o
  CC      sysklogd/logread.o
  CC      sysklogd/syslogd_and_logger.o
  AR      sysklogd/lib.a
  LD      util-linux/built-in.o
  CC      util-linux/dmesg.o
  CC      util-linux/fbset.o
  CC      util-linux/fdformat.o
  CC      util-linux/fdisk.o
  CC      util-linux/freeramdisk.o
  CC      util-linux/fsck_minix.o
  CC      util-linux/getopt.o
  CC      util-linux/hexdump.o
  CC      util-linux/hwclock.o
  CC      util-linux/ipcrm.o
  CC      util-linux/ipcs.o
  CC      util-linux/losetup.o
  CC      util-linux/mdev.o
  CC      util-linux/mkfs_minix.o
  CC      util-linux/mkswap.o
  CC      util-linux/more.o
  CC      util-linux/mount.o
  CC      util-linux/pivot_root.o
  CC      util-linux/rdate.o
  CC      util-linux/rdev.o
  CC      util-linux/readprofile.o
  CC      util-linux/rtcwake.o
  CC      util-linux/script.o
  CC      util-linux/setarch.o
  CC      util-linux/swaponoff.o
  CC      util-linux/switch_root.o
  CC      util-linux/umount.o
  AR      util-linux/lib.a
  LD      util-linux/volume_id/built-in.o
  AR      util-linux/volume_id/lib.a
  LINK    busybox_unstripped
Trying libraries: crypt m
Failed: -Wl,--start-group -lcrypt -lm -Wl,--end-group
Output of:
gcc -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes -Wunused -Wunused-parameter -Wmissing-prototypes -Wmissing-declarations -Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections -fno-guess-branch-probability -funsigned-char -static-libgcc -falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1 -Os -march=i386 -mpreferred-stack-boundary=2 -static -o busybox_unstripped -Wl,--sort-common -Wl,--sort-section,alignment -Wl,--start-group applets/built-in.o archival/lib.a archival/libunarchive/lib.a console-tools/lib.a coreutils/lib.a coreutils/libcoreutils/lib.a debianutils/lib.a e2fsprogs/lib.a editors/lib.a findutils/lib.a init/lib.a libbb/lib.a libpwdgrp/lib.a loginutils/lib.a miscutils/lib.a modutils/lib.a networking/lib.a networking/libiproute/lib.a networking/udhcp/lib.a printutils/lib.a procps/lib.a runit/lib.a selinux/lib.a shell/lib.a sysklogd/lib.a util-linux/lib.a util-linux/volume_id/lib.a archival/built-in.o archival/libunarchive/built-in.o console-tools/built-in.o coreutils/built-in.o coreutils/libcoreutils/built-in.o debianutils/built-in.o e2fsprogs/built-in.o editors/built-in.o findutils/built-in.o init/built-in.o libbb/built-in.o libpwdgrp/built-in.o loginutils/built-in.o miscutils/built-in.o modutils/built-in.o networking/built-in.o networking/libiproute/built-in.o networking/udhcp/built-in.o printutils/built-in.o procps/built-in.o runit/built-in.o selinux/built-in.o shell/built-in.o sysklogd/built-in.o util-linux/built-in.o util-linux/volume_id/built-in.o -Wl,--end-group -Wl,--start-group -lcrypt -lm -Wl,--end-group
==========
networking/lib.a(nslookup.o): In function `print_host':
nslookup.c:(.text.print_host+0x35): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
networking/lib.a(ipcalc.o): In function `ipcalc_main':
ipcalc.c:(.text.ipcalc_main+0x225): warning: Using 'gethostbyaddr' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
util-linux/lib.a(mount.o): In function `singlemount':
mount.c:(.text.singlemount+0x22d): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
networking/lib.a(inetd.o): In function `reread_config_file':
inetd.c:(.text.reread_config_file+0x217): warning: Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
networking/lib.a(netstat.o): In function `ip_port_str':
netstat.c:(.text.ip_port_str+0x35): warning: Using 'getservbyport' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
libbb/lib.a(appletlib.o):(.rodata.applet_main+0x198): undefined reference to `init_main'
libbb/lib.a(appletlib.o):(.rodata.applet_main+0x1f4): undefined reference to `init_main'
collect2: ld a retourné 1 code d'état d'exécution
make: *** [busybox_unstripped] Erreur 1
!!! busybox make failed(B

J'ai comparé avec vim le fichier .config produit par mon script avec celui que j'avais utilisé pour créer le initramfs que j'utilise actuellement. Il n'y a aucune différence.


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#6 Le 15/10/2008, à 11:50

tiky

Re : Script shell et comportement anormal

Par contre il y a un bogue sur le forum, je peux pas éditer mon message précédent, il est tronqué à chaque fois. Désolé, je peux pas corriger les fautes d'orthographes hmm


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#7 Le 15/10/2008, à 21:17

tiky

Re : Script shell et comportement anormal

Sous ma gentoo, /bin/sh est un lien symbolique vers bash. Sous Ubuntu c'est un lien symbolique avec dash. Quelqu'un pourrait essayer la commande suivante:

/bin/bash ./mkinitramfs

Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#8 Le 15/10/2008, à 22:03

morphoneo69

Re : Script shell et comportement anormal

./mkinitramfs c ton prog?

Hors ligne

#9 Le 15/10/2008, à 22:06

tiky

Re : Script shell et comportement anormal

morphoneo69 a écrit :

./mkinitramfs c ton prog?

Oui, tu copies le code dans un fichier, plus le chmod habituel wink


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#10 Le 15/10/2008, à 22:35

morphoneo69

Re : Script shell et comportement anormal

 /bin/bash ./mkinitramfs
>> busybox setting...
>> busybox making...
>> busybox compiled
>> busybox linked
>> busybox installed in /tmp/initramfs
mknod: `dev/null': Opération non permise
mknod: `dev/console': Opération non permise
>> add cryptsetup binary
ldd: arguments de fichier manquants
Pour en savoir davantage, faites : `ldd --help'.
>> cryptsetup added
cp: opérande du fichier cible manquant après `/tmp/initramfs/sbin'
Pour en savoir davantage, faites: « cp --help ».

Hors ligne

#11 Le 15/10/2008, à 22:42

morphoneo69

Re : Script shell et comportement anormal

T'as pas un problème de version de libc ?

Hors ligne

#12 Le 15/10/2008, à 23:01

tiky

Re : Script shell et comportement anormal

morphoneo69 a écrit :

T'as pas un problème de version de libc ?

Ça ne compilerait pas avec l'option -C si c'était un problème de libc. Sinon tu as pas utilisé la dernière version du script wink pour ton test.


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#13 Le 15/10/2008, à 23:23

morphoneo69

Re : Script shell et comportement anormal

J'ai rechangé la version du script, j'ai les même messages. Je me disais bien que je l'avais bien changé.

Hors ligne

#14 Le 16/10/2008, à 00:07

tiky

Re : Script shell et comportement anormal

L'autre version corrige le problème avec cryptsetup wink


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#15 Le 16/10/2008, à 06:27

morphoneo69

Re : Script shell et comportement anormal

J'ai réussi a avoir le bug, avec une version de gcc  différente.
Avec la  4.2.3 ça marche, avec la  4.1.3 ça foire

Trying libraries: crypt m
Failed: -Wl,--start-group -lcrypt -lm -Wl,--end-group
Output of:
....
networking/lib.a(nslookup.o): In function `print_host':
nslookup.c:(.text.print_host+0x35): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
networking/lib.a(ipcalc.o): In function `ipcalc_main':
ipcalc.c:(.text.ipcalc_main+0x226): warning: Using 'gethostbyaddr' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
util-linux/lib.a(mount.o): In function `singlemount':
mount.c:(.text.singlemount+0x23f): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
networking/lib.a(inetd.o): In function `reread_config_file':
inetd.c:(.text.reread_config_file+0x1eb): warning: Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
networking/lib.a(netstat.o): In function `ip_port_str':
netstat.c:(.text.ip_port_str+0x36): warning: Using 'getservbyport' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
libbb/lib.a(appletlib.o):(.rodata.applet_main+0x198): undefined reference to `init_main'
libbb/lib.a(appletlib.o):(.rodata.applet_main+0x1f4): undefined reference to `init_main'
collect2: ld a retourné 1 code d'état d'exécution
make: *** [busybox_unstripped] Erreur 1
ESC[31m!!! busybox make failedESC[mESC(B

Hors ligne

#16 Le 16/10/2008, à 12:00

tiky

Re : Script shell et comportement anormal

Je suis sous Gentoo, j'ai donc les toutes dernières versions. J'utilise gcc 4.3.2

gcc-config -l
 [1] i686-pc-linux-gnu-3.3.6
 [2] i686-pc-linux-gnu-4.3.2 *
binutils-config -l
 [1] i686-pc-linux-gnu-2.18 *

J'ai la glibc 2.8_p20080602. Peux-être une incompatibilité entre ces trois versions mais ce que je comprends pas ce que le bogue se produise pas systématiquement.

Dernière modification par tiky (Le 16/10/2008, à 12:00)


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#17 Le 16/10/2008, à 12:44

morphoneo69

Re : Script shell et comportement anormal

J'ai essayé sous ubuntu intrepid et la compilation foire complètement.

In file included from /usr/include/asm/fcntl.h:1,
                 from /usr/include/linux/fcntl.h:4,
                 from /usr/include/linux/inotify.h:11,
                 from miscutils/inotifyd.c:31:
/usr/include/asm-generic/fcntl.h:117: error: redefinition of ‘struct flock’
/usr/include/asm-generic/fcntl.h:140: error: redefinition of ‘struct flock64’
make[1]: *** [miscutils/inotifyd.o] Erreur 1
make: *** [miscutils] Erreur 2

Dernière modification par morphoneo69 (Le 16/10/2008, à 12:45)

Hors ligne

#18 Le 16/10/2008, à 13:25

tiky

Re : Script shell et comportement anormal

morphoneo69 a écrit :

J'ai essayé sous ubuntu intrepid et la compilation foire complètement.

In file included from /usr/include/asm/fcntl.h:1,
                 from /usr/include/linux/fcntl.h:4,
                 from /usr/include/linux/inotify.h:11,
                 from miscutils/inotifyd.c:31:
/usr/include/asm-generic/fcntl.h:117: error: redefinition of ‘struct flock’
/usr/include/asm-generic/fcntl.h:140: error: redefinition of ‘struct flock64’
make[1]: *** [miscutils/inotifyd.o] Erreur 1
make: *** [miscutils] Erreur 2

Et quel toolchain est utilisé sous Intrepid pour la compilation C?


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#19 Le 16/10/2008, à 13:29

morphoneo69

Re : Script shell et comportement anormal

gcc 4.3.2
libc  2.8.9
kernel 2.6.27

Hors ligne

#20 Le 16/10/2008, à 13:54

tiky

Re : Script shell et comportement anormal

morphoneo69 a écrit :

gcc 4.3.2
libc  2.8.9
kernel 2.6.27

J'ai la même chose sur ma gentoo smile, donc le problème vient du code de busybox qui est trop ancien par rapport à ma toolchain. Seulement ça n'explique pas pourquoi quand je lui redonne la configuration par l'option -C, la compilation réussie. Ça fonctionne quand tu fais pareil chez toi?


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#21 Le 16/10/2008, à 14:10

morphoneo69

Re : Script shell et comportement anormal

Avec le -C ça fait pareil.

Hors ligne

#22 Le 16/10/2008, à 14:20

tiky

Re : Script shell et comportement anormal

morphoneo69 a écrit :

Avec le -C ça fait pareil.

Chez moi ça marche mais j'ai pas la même erreur de compilation aussi hmm


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#23 Le 16/10/2008, à 14:26

morphoneo69

Re : Script shell et comportement anormal

A vrai dire j'aime pas trop mes erreurs.
Va falloir pousser les recherches.

Hors ligne

#24 Le 16/10/2008, à 14:34

tiky

Re : Script shell et comportement anormal

Sur l'autre Ubuntu où tu as obtenu la même erreur que moi avec une autre version de gcc, ça fonctionne avec l'option -C?


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#25 Le 16/10/2008, à 14:59

morphoneo69

Re : Script shell et comportement anormal

Non j'ai toujours les mêmes erreurs
J'ai testé gcc 4.2 et kernel 2.6.26

Hors ligne