Strona 1 z 13

[+] " *** No rule to make target `oldconfig' " - kompilacja metodą Debiana

: 24 sierpnia 2013, 00:40
autor: cloudbuster
Witam.
Wykonuję pierwszą próbę kompilacji jądra. Robię ją według tej instrukcji:
threads/26313-Kompilacja-jądra-Linuksa- ... dą-Debiana.

Po kolei:

Kod: Zaznacz cały

wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.10.9.tar.xz

Saving to: `linux-3.10.9.tar.xz'

100%[++++==================================>] 73,210,852  57.6K/s   in 21m 58s

2013-08-23 21:28:52 (48.5 KB/s) - `linux-3.10.9.tar.xz' saved [73210852/73210852]

Następnie kopiuję do /usr/src i wypakowuję:

Kod: Zaznacz cały

xz -d linux-3.10.9.tar.xz


Tworzę dowiązanie:

Kod: Zaznacz cały

root@debian:/usr/src# ln -s /usr/src/ linux-3.10.9  /usr/src/linux
ln: target `/usr/src/linux' is not a directory
root@debian:/usr/src# ls
linux-3.10.9.tar
root@debian:/usr/src# mkdir linux
root@debian:/usr/src# ln -s /usr/src/ linux-3.10.9.tar /usr/src/linux

Ale przy wczytywaniu starej konfiguracji system zgłasza problem:

Kod: Zaznacz cały

root@debian:/usr/src# make oldconfig  && make menuconfig
make: *** No rule to make target `oldconfig'.  Stop.
Czego mu brakuje?

: 24 sierpnia 2013, 01:33
autor: Rafal_F
U mnie zawsze ładuje konfiguracje aktualnie używanego jądra, korzystam z programu graficznego:

Kod: Zaznacz cały

make xconfig

: 24 sierpnia 2013, 08:53
autor: cloudbuster

Kod: Zaznacz cały

root@debian:/home/debian# make xconfig && make menuconfig
make: *** No rule to make target `xconfig'.  Stop.
root@debian:/home/debian# make xconfig
make: *** No rule to make target `xconfig'.  Stop.


: 24 sierpnia 2013, 13:35
autor: Rafal_F
Ok, od początku:
  1. Instalacja zależności:

    Kod: Zaznacz cały

    aptitude install kernel-package pkg-config bzip2 g++ libqt4-dev libncurses5-dev fakeroot
  2. Ściągnięcie i rozpakowanie. Jeżeli masz plik w formacie tar.xz to należy go rozpakować w ten sposób:

    Kod: Zaznacz cały

    tar xJf plik.tar.xz
  3. Jakiekolwiek dowiązania nie są potrzebne, nie wiem po co są robione. Pomijamy.
  4. Konfiguracja. Odpowiednie polecenia powinny być wywoływane w katalogu ze źródłami. Jeżeli rozpakowałeś źródła w /usr/src, to wydajesz polecenie:

    Kod: Zaznacz cały

    cd /usr/src/linux-3.10.9
    I teraz konfiguracja:

    Kod: Zaznacz cały

    make xconfig
    Bez żadnych dodatkowych poleceń. Konfiguracja jądra na którym aktualnie pracuje system powinna się załadować automatycznie. Jeżeli nie, to wszystkie konfiguracje wszystkich zainstalowanych jąder znajdują się w katalogu:

    Kod: Zaznacz cały

    /boot
    Można je wczytać wybierając "Load" z menu "File" konfiguratora. Jak już pozaznaczasz to co chcesz kliknij "Save".
  5. Ręczną konfigurację pliki .config pomiń. Resztę wykonaj według instrukcji.

: 26 sierpnia 2013, 21:47
autor: cloudbuster
niestety, kolejny problem:

Kod: Zaznacz cały

root@debian:~# cd /usr/src/linux-3.10.9
root@debian:/usr/src/linux-3.10.9# make xconfig
  CHECK   qt
* Unable to find the QT4 tool qmake. Trying to use QT3
*
* Unable to find any QT installation. Please make sure that
* the QT4 or QT3 development package is correctly installed and
* either qmake can be found or install pkg-config or set
* the QTDIR environment variable to the correct location.
*
make[1]: *** No rule to make target `scripts/kconfig/.tmp_qtcheck', needed by `scripts/kconfig/qconf.o'.  Stop.
make: *** [xconfig] Error 2
Instaluję więc:

Kod: Zaznacz cały

root@debian:/usr/src/linux-3.10.9# aptitude install qt4-qmake
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

root@debian:/usr/src/linux-3.10.9# aptitude install pkg-config
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

ale to nie pomaga nawet przy najaktualniejszej wersji pakietów pkg-config i qt4-qmake

: 26 sierpnia 2013, 22:19
autor: Rafal_F
Nie wiem dlaczego nie działa, spróbuj reinstalować pakiety:

Kod: Zaznacz cały

aptitude reinstall qt4-qmake pkg-config

: 27 sierpnia 2013, 20:19
autor: cloudbuster
Brak miejsca na urządzeniu:

Kod: Zaznacz cały

root@debian:/usr/src# aptitude reinstall qt4-qmake pkg-config
The following packages will be REINSTALLED:
  pkg-config qt4-qmake
0 packages upgraded, 0 newly installed, 2 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0 B/1,181 kB of archives. After unpacking 0 B will be used.
(Reading database ... 47058 files and directories currently installed.)
Preparing to replace pkg-config 0.26-1+b1 (using .../pkg-config_0.26-1+b1_armhf.deb) ...
Unpacking replacement pkg-config ...
Preparing to replace qt4-qmake 4:4.8.2+dfsg-11 (using .../qt4-qmake_4%3a4.8.2+dfsg-11_armhf.deb) ...
Unpacking replacement qt4-qmake ...
Processing triggers for man-db ...
/usr/bin/mandb: can't write to /var/cache/man/2893: No space left on device
Setting up pkg-config (0.26-1+b1) ...
Setting up qt4-qmake (4:4.8.2+dfsg-11) ...

System jest na karcie microSD. Próbowałem na początku z 16 GB, na 32 dzieje się to samo. O co chodzi? Większej karty nie mam ;) .

: 27 sierpnia 2013, 20:59
autor: Rafal_F
Pokaż wynik:

Kod: Zaznacz cały

df -BM

: 27 sierpnia 2013, 21:11
autor: cloudbuster

Kod: Zaznacz cały

root@debian:/usr/src# df -BM
Filesystem     1M-blocks  Used Available Use% Mounted on
rootfs             1864M 1855M        0M 100% /
/dev/root          1864M 1855M        0M 100% /
devtmpfs            407M    0M      407M   0% /dev
tmpfs                82M    1M       82M   1% /run
tmpfs                 5M    0M        5M   0% /run/lock
tmpfs               163M    0M      163M   0% /run/shm
tmpfs               407M    1M      407M   1% /tmp
tmpfs               407M    0M      407M   0% /var/tmp


: 27 sierpnia 2013, 21:35
autor: Rafal_F
16GB powinno spokojnie wystarczyć.
Teraz na główny system plików przeznaczone jest 1,8GB to trochę mało, zwłaszcza że same źródła jądra to 0,5GB.

Spróbuj:

Kod: Zaznacz cały

aptitude clean
Ale nie wiem czy Ci wystarczy miejsca na kompilacje jądra.

Masz tam X-y?