Автор Тема: Kernel  (Прочетена 3247 пъти)

bashi1

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Kernel
« -: May 07, 2007, 16:17 »
Здравейте! От скоро ползвам Линукс и сега ми се наложи да си компилирам ядрото за да му добавя няколко модула. Прочетох няколко статии по темата но се сблъсках със следния проблем : Когато вляза в директория /usr/src имам две папки - linux-headers-2.6.17-10  и linux-headers-2.6.17-10-generic.
В която и от двете да вляза при изпълнение на командата  make menuconfig ми връща следния резултат:
  HOSTCC  scripts/basic/fixdep
scripts/basic/fixdep.c:105:23: error: sys/types.h: No such file or directory
scripts/basic/fixdep.c:106:22: error: sys/stat.h: No such file or directory
scripts/basic/fixdep.c:107:22: error: sys/mman.h: No such file or directory
scripts/basic/fixdep.c:108:20: error: unistd.h: No such file or directory
scripts/basic/fixdep.c:109:19: error: fcntl.h: No such file or directory
scripts/basic/fixdep.c:110:20: error: string.h: No such file or directory
scripts/basic/fixdep.c:111:20: error: stdlib.h: No such file or directory
scripts/basic/fixdep.c:112:19: error: stdio.h: No such file or directory
In file included from /usr/lib/gcc/i486-linux-gnu/4.1.2/include/syslimits.h:7,
                 from /usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h:11,
                 from scripts/basic/fixdep.c:113:
/usr/lib/gcc/i486-linux-gnu/4.1.2/include/limits.h:122:61: error: limits.h: No such file or directory
scripts/basic/fixdep.c:114:19: error: ctype.h: No such file or directory
scripts/basic/fixdep.c:115:23: error: arpa/inet.h: No such file or directory
scripts/basic/fixdep.c: In function ‘usage’:
scripts/basic/fixdep.c:129: warning: implicit declaration of function ‘fprintf’
scripts/basic/fixdep.c:129: warning: incompatible implicit declaration of built-in function ‘fprintf’
scripts/basic/fixdep.c:129: error: ‘stderr’ undeclared (first use in this function)
scripts/basic/fixdep.c:129: error: (Each undeclared identifier is reported only once
scripts/basic/fixdep.c:129: error: for each function it appears in.)
scripts/basic/fixdep.c:130: warning: implicit declaration of function ‘exit’
scripts/basic/fixdep.c:130: warning: incompatible implicit declaration of built-in function ‘exit’
scripts/basic/fixdep.c: In function ‘print_cmdline’:
scripts/basic/fixdep.c:138: warning: implicit declaration of function ‘printf’
scripts/basic/fixdep.c:138: warning: incompatible implicit declaration of built-in function ‘printf’
scripts/basic/fixdep.c: At top level:
scripts/basic/fixdep.c:141: error: ‘NULL’ undeclared here (not in a function)
scripts/basic/fixdep.c: In function ‘grow_config’:
scripts/basic/fixdep.c:154: warning: implicit declaration of function ‘realloc’
scripts/basic/fixdep.c:154: warning: assignment makes pointer from integer without a cast
scripts/basic/fixdep.c:156: warning: implicit declaration of function ‘perror’
scripts/basic/fixdep.c:156: warning: incompatible implicit declaration of built-in function ‘exit’
scripts/basic/fixdep.c: In function ‘is_defined_config’:
scripts/basic/fixdep.c:172: warning: implicit declaration of function ‘memcmp’
scripts/basic/fixdep.c: In function ‘define_config’:
scripts/basic/fixdep.c:185: warning: implicit declaration of function ‘memcpy’
scripts/basic/fixdep.c:185: warning: incompatible implicit declaration of built-in function ‘memcpy’
scripts/basic/fixdep.c: In function ‘use_config’:
scripts/basic/fixdep.c:204: error: ‘PATH_MAX’ undeclared (first use in this function)
scripts/basic/fixdep.c:212: warning: incompatible implicit declaration of built-in function ‘memcpy’
scripts/basic/fixdep.c:218: warning: implicit declaration of function ‘tolower’
scripts/basic/fixdep.c:220: warning: incompatible implicit declaration of built-in function ‘printf’
scripts/basic/fixdep.c:204: warning: unused variable ‘s’
scripts/basic/fixdep.c: At top level:
scripts/basic/fixdep.c:223: error: expected declaration specifiers or ‘...’ before ‘size_t’
scripts/basic/fixdep.c: In function ‘parse_config_file’:
scripts/basic/fixdep.c:225: error: ‘len’ undeclared (first use in this function)
scripts/basic/fixdep.c:231: warning: implicit declaration of function ‘ntohl’
scripts/basic/fixdep.c:242: warning: implicit declaration of function ‘isalnum’
scripts/basic/fixdep.c: In function ‘strrcmp’:
scripts/basic/fixdep.c:255: warning: implicit declaration of function ‘strlen’
scripts/basic/fixdep.c:255: warning: incompatible implicit declaration of built-in function ‘strlen’
scripts/basic/fixdep.c: In function ‘do_config_file’:
scripts/basic/fixdep.c:266: error: storage size of ‘st’ isn’t known
scripts/basic/fixdep.c:270: warning: implicit declaration of function ‘open’
scripts/basic/fixdep.c:270: error: ‘O_RDONLY’ undeclared (first use in this function)
scripts/basic/fixdep.c:272: warning: incompatible implicit declaration of built-in function ‘fprintf’
scripts/basic/fixdep.c:272: error: ‘stderr’ undeclared (first use in this function)
scripts/basic/fixdep.c:274: warning: incompatible implicit declaration of built-in function ‘exit’
scripts/basic/fixdep.c:276: warning: implicit declaration of function ‘fstat’
scripts/basic/fixdep.c:278: warning: implicit declaration of function ‘close’
scripts/basic/fixdep.c:281: warning: implicit declaration of function ‘mmap’
scripts/basic/fixdep.c:281: error: ‘PROT_READ’ undeclared (first use in this function)
scripts/basic/fixdep.c:281: error: ‘MAP_PRIVATE’ undeclared (first use in this function)
scripts/basic/fixdep.c:281: warning: assignment makes pointer from integer without a cast
scripts/basic/fixdep.c:288: error: too many arguments to function ‘parse_config_file’
scripts/basic/fixdep.c:290: warning: implicit declaration of function ‘munmap’
scripts/basic/fixdep.c:266: warning: unused variable ‘st’
scripts/basic/fixdep.c: At top level:
scripts/basic/fixdep.c:295: error: expected declaration specifiers or ‘...’ before ‘size_t’
scripts/basic/fixdep.c: In function ‘parse_dep_file’:
scripts/basic/fixdep.c:298: error: ‘len’ undeclared (first use in this function)
scripts/basic/fixdep.c:300: error: ‘PATH_MAX’ undeclared (first use in this function)
scripts/basic/fixdep.c:302: warning: implicit declaration of function ‘strchr’
scripts/basic/fixdep.c:302: warning: incompatible implicit declaration of built-in function ‘strchr’
scripts/basic/fixdep.c:304: warning: incompatible implicit declaration of built-in function ‘fprintf’
scripts/basic/fixdep.c:304: error: ‘stderr’ undeclared (first use in this function)
scripts/basic/fixdep.c:305: warning: incompatible implicit declaration of built-in function ‘exit’
scripts/basic/fixdep.c:307: warning: incompatible implicit declaration of built-in function ‘memcpy’
scripts/basic/fixdep.c:308: warning: incompatible implicit declaration of built-in function ‘printf’
scripts/basic/fixdep.c:300: warning: unused variable ‘s’
scripts/basic/fixdep.c: In function ‘print_deps’:
scripts/basic/fixdep.c:337: error: storage size of ‘st’ isn’t known
scripts/basic/fixdep.c:341: error: ‘O_RDONLY’ undeclared (first use in this function)
scripts/basic/fixdep.c:343: warning: incompatible implicit declaration of built-in function ‘fprintf’
scripts/basic/fixdep.c:343: error: ‘stderr’ undeclared (first use in this function)
scripts/basic/fixdep.c:345: warning: incompatible implicit declaration of built-in function ‘exit’
scripts/basic/fixdep.c:349: warning: incompatible implicit declaration of built-in function ‘fprintf’
scripts/basic/fixdep.c:353: error: ‘PROT_READ’ undeclared (first use in this function)
scripts/basic/fixdep.c:353: error: ‘MAP_PRIVATE’ undeclared (first use in this function)
scripts/basic/fixdep.c:353: warning: assignment makes pointer from integer without a cast
scripts/basic/fixdep.c:360: error: too many arguments to function ‘parse_dep_file’
scripts/basic/fixdep.c:337: warning: unused variable ‘st’
scripts/basic/fixdep.c: In function ‘traps’:
scripts/basic/fixdep.c:372: warning: incompatible implicit declaration of built-in function ‘fprintf’
scripts/basic/fixdep.c:372: error: ‘stderr’ undeclared (first use in this function)
scripts/basic/fixdep.c:374: warning: incompatible implicit declaration of built-in function ‘exit’
scripts/basic/fixdep.c: At top level:
scripts/basic/fixdep.c:393: fatal error: opening dependency file scripts/basic/.fixdep.d: Permission denied
compilation terminated.
make[1]: *** [scripts/basic/fixdep] Error 1
make: *** [scripts_basic] Error 2
Някой може ли да ми каже защо се получава така и какво може да се направи по въпроса. Предварително благодаря!
Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Kernel
« Отговор #1 -: May 07, 2007, 16:49 »
1. Кажи какво се опитваш да направиш и с каква дистрибуция/версия си. Току виж има по-лесен начин да си свършиш работата от това да компилираш ново ядро.

2. Грешките ги дава, т.к. не се намираш в директория, съдържаща изходния код на ядрото. Тези две директории (както подсказват имената им) съдържат header файловете за ядрото, но не и самия му код. Пак ще трябва да кажеш с каква дистрибуция си, за може да ти се помогне качествено, а именно как и какво да инсталираш за да имаш кода на ядрото и в някои случаи дори как да го компилираш.

Иначе винаги можеш да дръпнеш последното ядро от kernel.org, да го разпакетираш в /usr/src и да си го компилираш (какво предполагам биха те посъветвали някои), но има разни тънки моменти с разните дистрибуции и пакетни системи, поради които аз лично не ти препоръчвам този начин.
Активен

tolostoi

  • Напреднали
  • *****
  • Публикации: 1337
  • Distribution: Ubuntu
  • Window Manager: Unity
  • левел: авераж :)
    • Профил
Kernel
« Отговор #2 -: May 07, 2007, 16:49 »
А защо се налага компилиране (в Убунту предполагам)кои са тези модули?
Активен


... в Столичен инспекторат една година след миграцията, продължават да работят под Linux. Което, май прави "експеримента" успешен
by entusiast

bashi1

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Kernel
« Отговор #3 -: May 07, 2007, 16:56 »
Ами дистрибуцията е убунто 6.10. Имам GSM, който се опитвам да свържа с компа си посредством USB и прочетох в една статия, че трябва да имам модул cdc_acm. Това е цялата история
Активен

tvkkk

  • Напреднали
  • *****
  • Публикации: 83
  • Distribution: Arch linux
  • Window Manager: lxde
    • Профил
    • WWW
Kernel
« Отговор #4 -: May 07, 2007, 16:58 »
Така като гледам, вероятно дистрибуцията е Ubuntu.
Както казаха по-горе имах само хедърите, но не и самия изходен код на ядрото.
Виж това how-to http://www.howtoforge.com/kernel_compilation_ubuntu
Описаното става както за ubuntu, така и за debian. Аз лично така съм си компилирал на моя debian etch ядро  2.6.21 (заради специфичния хардуер който ползвам и поддържат в най-новото ядро)
Активен

phantomlord

  • Напреднали
  • *****
  • Публикации: 1832
  • Distribution: Debian Sid
  • Window Manager: KDE 4
  • Fall to your knees and bow to the Phantom Lord
    • Профил
    • WWW
Kernel
« Отговор #5 -: May 07, 2007, 17:26 »
Аз така като гледам, май не си свалил сорса на кернела. Той се намира в: /usr/src/linux-source-2.6.xyz и съответно трябва да влезеш там за да изпълниш make menuconfig.
Активен

http://myfreesoft.net/phpBB2/index.php?c=7
Помогни си сам, за да ти помогне и Господ
Linux - connecting people...

bashi1

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Kernel
« Отговор #6 -: May 07, 2007, 17:30 »
Примерен код

bash: cd: /usr/src/linux-source-2.6.xyz: No such file or directory
Активен

Lord Bad

  • Напреднали
  • *****
  • Публикации: 1667
  • Distribution: Fedora 13
  • Window Manager: GNOME
  • Jedi Knight
    • Профил
Kernel
« Отговор #7 -: May 07, 2007, 18:21 »
Хехе. Първо трябва да го свалиш тоя код преди да търсиш папката му. Пусни си synaptic и направи там едно търсене за ключова дума kernel. Предполагам ще се ориентираш кой пакет да инсталираш. Иначе винаги може да си дръпнеш и vanilla kernel от kernel.org и да си играеш с него...
Активен

Fuelled by Fedora 13 "Goddard"
====================================
Rock it!

phantomlord

  • Напреднали
  • *****
  • Публикации: 1832
  • Distribution: Debian Sid
  • Window Manager: KDE 4
  • Fall to your knees and bow to the Phantom Lord
    • Профил
    • WWW
Kernel
« Отговор #8 -: May 07, 2007, 18:31 »
И момче, мисли малко повече. 2.6.xyz означава, че ми е неисзвестно какво ти е ядрото. Ако е 2.6.17, значи ти трябва linux-source-2.6.17.
sudo apt-get install linux-source-2.6.17
cd /usr/src
tar jxvf linux-source-2.6.17.tar.bz2
cd linux-source-2.6.17
make menuconfig



Активен

http://myfreesoft.net/phpBB2/index.php?c=7
Помогни си сам, за да ти помогне и Господ
Linux - connecting people...

bashi1

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Kernel
« Отговор #9 -: May 07, 2007, 19:33 »
Направих всичко но резултатът е пак същият:

make[1]: *** [scripts/basic/fixdep] Error 1
make: *** [scripts_basic] Error 2

Какво може да съм объркал?
Активен

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Kernel
« Отговор #10 -: May 07, 2007, 20:55 »
А какво си направил?
Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

bashi1

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Kernel
« Отговор #11 -: May 07, 2007, 20:56 »
Изпълних командите:
Примерен код
sudo apt-get install linux-source-2.6.17
cd /usr/src
tar jxvf linux-source-2.6.17.tar.bz2
cd linux-source-2.6.17
make menuconfig
Активен

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Kernel
« Отговор #12 -: May 07, 2007, 21:07 »
Примерен код

apt-get install linux-source-$(uname -r)
cd /usr/src
tar jxvf linux-source-$(uname -r)
cd linux-source-$(uname -r)
make menuconfig
Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

bashi1

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Kernel
« Отговор #13 -: May 07, 2007, 21:22 »
Пак се появи проблем -

bashi@26:~$ sudo apt-get install linux-source-$(uname -r)
Четене на списъците с пакети... Готово
Изграждане на дървото със зависимости      
Reading state information... Готово                                  
E: Неуспех при намирането на пакет linux-source-2.6.17-10-generic
Активен

alabal

  • Напреднали
  • *****
  • Публикации: 2173
  • cat /earth/europe/bg/sofia | grep Nacamura
    • Профил
Kernel
« Отговор #14 -: May 07, 2007, 21:26 »
Ако си с ядро по подразбиране, братко, cdc-acm го има със сигурност като модул, защото се използва не само от gsm-и, но и от pda устройства.
За целта:
# modprobe -l | grep cdc
ако има cdc-acm.ko
просто даваш:
# modprobe cdc-acm
Толкова.
Активен

It makes you awful glad that you were born a man.

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Kernel
Настройка на програми
mozly 11 15413 Последна публикация Jan 03, 2003, 19:40
от mozly
kernel i PS/2
Настройка на програми
rat 0 10158 Последна публикация Mar 21, 2003, 15:18
от rat
Kernel
Настройка на програми
mozly 9 6053 Последна публикация Aug 10, 2003, 00:39
от mironcho
kernel 2.6
Настройка на програми
Agent_SMITH 9 7217 Последна публикация Dec 22, 2003, 10:09
от ivo_bg
kernel 2.4.24 vs 2.6.0
Настройка на програми
Agent_SMITH 16 8076 Последна публикация Jan 08, 2004, 23:23
от Agent_SMITH