oartigues a écrit 2 commentaires

  • [^] # Re: Ne pas/plus utiliser kernel-package

    Posté par  . En réponse au message Compilation kernel 4.18.x impossible en X86. Évalué à 2.

    Merci Cyril !
    En effet, en utilisant make bindeb-pkg ça a marché !
    J'ai enfin mon noyau 4.18.7.RT 5 compilé en X86.

    Bravo et encore merci pour votre aide à tous,
    Olivier

  • [^] # Re: faut etre plus precis

    Posté par  . En réponse au message Compilation kernel 4.18.x impossible en X86. Évalué à 1. Dernière modification le 08 octobre 2018 à 18:11.

    Merci de ce début de réponse.

    au préalable, je fais les appels apt-get install suivants :

    sudo apt-get install po-debconf libstdc++-5-dev g++-5 g++ dpkg-dev build-essential sgml-data docbook-xml docbook-xsl xmlto kernel-package libtinfo-dev libncurses5-dev zlib1g-dev libssl-dev
    sudo apt-get install build-essential libncurses-dev bison flex libssl-dev libelf-dev
    sudo apt-get install gcc-7-base libstdc++-7-dev g++-7

    Puis je prépare le noyau en lui appliquant le patch Preempt RT :

    tar xvf linux-4.18.7.tar.xz
    cd linux-4.18.7
    xz -c -d ../patch-4.18.7-rt5.patch.xz | patch -p1
    
    cp /boot/config-$(uname -r) .config
    make clean
    make olddefconfig
    make menuconfig

    Après avoir activé le patch Preempt RT dans le menu, je lance la compilation :

    make-kpkg --verbose --initrd --revision=1.0 --rootcmd=fakeroot kernel_image kernel_headers -j 16

    j'optiens ceci dans la console :

    exec make kpkg_version=13.018+nmu1 -f /usr/share/kernel-package/ruleset/minimal.mk debian DEBIAN_REVISION=1.0  V=1  INITRD=YES  ROOT_CMD=fakeroot 
    ====== making target debian/stamp/conf/minimal_debian [new prereqs: ]======
    This is kernel package version 13.018+nmu1.
    test -d debian             || mkdir debian
    test ! -e stamp-building || rm -f stamp-building
    install -p -m 755 /usr/share/kernel-package/rules debian/rules
    for file in ChangeLog  Control  Control.bin86 config templates.in rules; do                                      \
                cp -f  /usr/share/kernel-package/$file ./debian/;                               \
            done
    cp: cannot stat '/usr/share/kernel-package/ChangeLog': No such file or directory
    for dir  in Config docs examples ruleset scripts pkg po;  do                                      \
              cp -af /usr/share/kernel-package/$dir  ./debian/;                                 \
            done
    test -f debian/control || sed         -e 's/=V/4.18.7/g'  \
                    -e 's/=D/1.0/g'         -e 's/=A/i386/g'  \
        -e 's/=SA//g'  \
        -e 's/=I//g'                    \
        -e 's/=CV/4.18/g'               \
        -e 's/=M/Unknown Kernel Package Maintainer <unknown@unconfigured.in.etc.kernel-pkg.conf>/g'             \
        -e 's/=ST/linux/g'      -e 's/=B/i386/g'    \
                    -e 's/=R/initramfs-tools | linux-initramfs-tool,/g'    /usr/share/kernel-package/Control > debian/control
    test -f debian/changelog ||  sed -e 's/=V/4.18.7/g'       \
                -e 's/=D/1.0/g'        -e 's/=A/i386/g'       \
                -e 's/=ST/linux/g'     -e 's/=B/i386/g'         \
                -e 's/=M/Unknown Kernel Package Maintainer <unknown@unconfigured.in.etc.kernel-pkg.conf>/g'                            \
                 /usr/share/kernel-package/changelog > debian/changelog
    chmod 0644 debian/control debian/changelog
    test -d ./debian/stamp || mkdir debian/stamp
    make -f debian/rules debian/stamp/conf/kernel-conf
    make[1]: Entering directory '/opt/Kernel/linux-4.18.7'
    ====== making target debian/stamp/conf/kernel-conf [new prereqs: ]======
    make    ARCH=i386 \
                        oldconfig;
    make[2]: Entering directory '/opt/Kernel/linux-4.18.7'
    make -f ./scripts/Makefile.build obj=scripts/basic
    rm -f .tmp_quiet_recordmcount
    make -f ./scripts/Makefile.build obj=scripts/kconfig oldconfig
    scripts/kconfig/conf  --oldconfig Kconfig
    #
    # configuration written to .config
    #
    make[2]: Leaving directory '/opt/Kernel/linux-4.18.7'
    make    ARCH=i386 prepare
    make[2]: Entering directory '/opt/Kernel/linux-4.18.7'
    make -f ./Makefile syncconfig
    make -f ./scripts/Makefile.build obj=scripts/basic
    rm -f .tmp_quiet_recordmcount
    make -f ./scripts/Makefile.build obj=scripts/kconfig syncconfig
    mkdir -p include/config include/generated
    scripts/kconfig/conf  --syncconfig Kconfig
    make -f ./scripts/Makefile.build obj=arch/x86/entry/syscalls all
    make -f ./scripts/Makefile.build obj=scripts/basic
    rm -f .tmp_quiet_recordmcount
    make -f ./scripts/Makefile.build obj=arch/x86/tools relocs
    set -e; mkdir -p include/config/;   echo "4.18.7$(/bin/bash ./scripts/setlocalversion .)" < include/config/auto.conf > include/config/kernel.release.tmp; if [ -r include/config/kernel.release ] && cmp -s include/config/kernel.release include/config/kernel.release.tmp; then rm -f include/config/kernel.release.tmp; else : '  UPD     include/config/kernel.release'; mv -f include/config/kernel.release.tmp include/config/kernel.release; fi
    make -f ./scripts/Makefile.asm-generic \
                src=uapi/asm obj=arch/x86/include/generated/uapi/asm
    make -f ./scripts/Makefile.asm-generic \
                src=asm obj=arch/x86/include/generated/asm
    set -e; mkdir -p include/generated/uapi/linux/;     (echo \#define LINUX_VERSION_CODE 266759; echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))';) < Makefile > include/generated/uapi/linux/version.h.tmp; if [ -r include/generated/uapi/linux/version.h ] && cmp -s include/generated/uapi/linux/version.h include/generated/uapi/linux/version.h.tmp; then rm -f include/generated/uapi/linux/version.h.tmp; else : '  UPD     include/generated/uapi/linux/version.h'; mv -f include/generated/uapi/linux/version.h.tmp include/generated/uapi/linux/version.h; fi
    rm -f include/linux/version.h
    set -e; mkdir -p include/generated/;    if [ `echo -n "4.18.7-rt5" | wc -c ` -gt 64 ]; then echo '"4.18.7-rt5" exceeds 64 characters' >&2; exit 1; fi; (echo \#define UTS_RELEASE \"4.18.7-rt5\";) < include/config/kernel.release > include/generated/utsrelease.h.tmp; if [ -r include/generated/utsrelease.h ] && cmp -s include/generated/utsrelease.h include/generated/utsrelease.h.tmp; then rm -f include/generated/utsrelease.h.tmp; else : '  UPD     include/generated/utsrelease.h'; mv -f include/generated/utsrelease.h.tmp include/generated/utsrelease.h; fi
    mkdir -p .tmp_versions 
    make -f ./scripts/Makefile.build obj=.
    set -e; mkdir -p include/generated/;    (set -e; echo "#ifndef __LINUX_BOUNDS_H__"; echo "#define __LINUX_BOUNDS_H__"; echo "/*"; echo " * DO NOT MODIFY."; echo " *"; echo " * This file was generated by Kbuild"; echo " */"; echo ""; sed -ne    's:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1:; /^->/{s:->#\(.*\):/* \1 */:; s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}'; echo ""; echo "#endif" ) < kernel/bounds.s > include/generated/bounds.h.tmp; if [ -r include/generated/bounds.h ] && cmp -s include/generated/bounds.h include/generated/bounds.h.tmp; then rm -f include/generated/bounds.h.tmp; else : '  UPD     include/generated/bounds.h'; mv -f include/generated/bounds.h.tmp include/generated/bounds.h; fi
    set -e; mkdir -p include/generated/;    (echo 250 | bc -q kernel/time/timeconst.bc ) < kernel/time/timeconst.bc > include/generated/timeconst.h.tmp; if [ -r include/generated/timeconst.h ] && cmp -s include/generated/timeconst.h include/generated/timeconst.h.tmp; then rm -f include/generated/timeconst.h.tmp; else : '  UPD     include/generated/timeconst.h'; mv -f include/generated/timeconst.h.tmp include/generated/timeconst.h; fi
    set -e; mkdir -p include/generated/;    (set -e; echo "#ifndef __ASM_OFFSETS_H__"; echo "#define __ASM_OFFSETS_H__"; echo "/*"; echo " * DO NOT MODIFY."; echo " *"; echo " * This file was generated by Kbuild"; echo " */"; echo ""; sed -ne 's:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1:; /^->/{s:->#\(.*\):/* \1 */:; s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}'; echo ""; echo "#endif" ) < arch/x86/kernel/asm-offsets.s > include/generated/asm-offsets.h.tmp; if [ -r include/generated/asm-offsets.h ] && cmp -s include/generated/asm-offsets.h include/generated/asm-offsets.h.tmp; then rm -f include/generated/asm-offsets.h.tmp; else : '  UPD     include/generated/asm-offsets.h'; mv -f include/generated/asm-offsets.h.tmp include/generated/asm-offsets.h; fi
      /bin/bash scripts/checksyscalls.sh gcc -Wp,-MD,./.missing-syscalls.d  -nostdinc -isystem /usr/lib/gcc/i686-linux-gnu/7/include -I./arch/x86/include -I./arch/x86/include/generated  -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -DCC_HAVE_ASM_GOTO -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m32 -msoft-float -mregparm=3 -freg-struct-return -fno-pic -mpreferred-stack-boundary=2 -march=i686 -mtune=generic -Wa,-mtune=generic32 -ffreestanding -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -DRETPOLINE -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-int-in-bool-context -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -mrecord-mcount    -DKBUILD_BASENAME='"missing_syscalls"' -DKBUILD_MODNAME='"missing_syscalls"' 
    make[2]: Leaving directory '/opt/Kernel/linux-4.18.7'
    echo done > debian/stamp/conf/kernel-conf
    make[1]: Leaving directory '/opt/Kernel/linux-4.18.7'
    make -f debian/rules debian/stamp/conf/full-changelog
    make[1]: Entering directory '/opt/Kernel/linux-4.18.7'
    ====== making target debian/stamp/conf/full-changelog [new prereqs: ]======
    for file in ChangeLog  Control  Control.bin86 config templates.in rules; do             \
         cp -f  /usr/share/kernel-package/$file ./debian/;          \
    done
    cp: cannot stat '/usr/share/kernel-package/ChangeLog': No such file or directory
    for dir  in Config docs examples ruleset scripts pkg po;    do              \
       cp -af /usr/share/kernel-package/$dir  ./debian/;                \
    done
    install -p -m 755 /usr/share/kernel-package/rules debian/rules
    sed         -e 's/=V/4.18.7-rt5/g'  \
                    -e 's/=D/1.0/g'         -e 's/=A/i386/g'  \
        -e 's/=SA//g'  \
        -e 's/=I//g'                    \
        -e 's/=CV/4.18/g'               \
        -e 's/=M/Unknown Kernel Package Maintainer <unknown@unconfigured.in.etc.kernel-pkg.conf>/g'             \
        -e 's/=ST/linux/g'      -e 's/=B/i386/g'    \
                    -e 's/=R/initramfs-tools | linux-initramfs-tool,/g'  /usr/share/kernel-package/Control > debian/control
    sed -e 's/=V/4.18.7-rt5/g' -e 's/=D/1.0/g'        \
        -e 's/=A/i386/g' -e 's/=M/Unknown Kernel Package Maintainer <unknown@unconfigured.in.etc.kernel-pkg.conf>/g' \
        -e 's/=ST/linux/g'   -e 's/=B/i386/g'         \
        /usr/share/kernel-package/changelog > debian/changelog
    chmod 0644 debian/control debian/changelog
    make -f debian/rules debian/stamp/conf/kernel-conf
    make[2]: Entering directory '/opt/Kernel/linux-4.18.7'
    make[2]: 'debian/stamp/conf/kernel-conf' is up to date.
    make[2]: Leaving directory '/opt/Kernel/linux-4.18.7'
    make[1]: Leaving directory '/opt/Kernel/linux-4.18.7'
    echo done > debian/stamp/conf/minimal_debian
    exec debian/rules  DEBIAN_REVISION=1.0  V=1  INITRD=YES  ROOT_CMD=fakeroot  kernel_image kernel_headers

    Et puis plus rien, cela s'arrête sur cette dernière ligne…
    Des idées ?
    Olivier