LINUX.ORG.RU

не компилятся программы !!!


0

0

Всем доброго времени суток!!!

Вступление: имеется мопс 4.1 .. стояло ядро 2.6.15. и стояли заголовочные файлы 2.6.15 Далее я скомпилил ядро 2.6.19 , поставил его и удалил исходники ядра + само ядро 2.6.15 и заголовочные файлы к нему (2.6.15)

Исходники ядра 2.6.19 лежат в /usr/src/linux-2.6.19 .. там же лежит и симлинк linux -> /usr/src/linux-2.6.19

Но чегото проги не хотят компилиться.. вылетает ошибка типа препроцессора С и т.п. . не находятся некоторые *.h файлы

Так вот вопрос: имея только лишь исходники ядра - как правильно сделать ссылки и на какие каталоги, чтоб стали нормально компилиться проги ??????? (именно для мопса!!!!!)

Я до сих пор не въеду Улыбка как в мопсе настраиваются пути к заголов. файлам и т.п шоб все скомпилилось???? ?

★★

.. привожу куски из config.log Код:

---------------------------------------- $ ./configure --prefix=/opt/kde --with-xinerama --disable-debug --program-prefix= --program-suffix= i486-slackware-linux

## --------- ## ## Platform. ## ## --------- ##

hostname = hunter uname -m = i686 uname -r = 2.6.19-K7 uname -s = Linux uname -v = #1 PREEMPT Wed Dec 6 21:10:46 MSK 2006

/usr/bin/uname -p = athlon-4 /bin/uname -X = unknown

/bin/arch = i686 /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown

PATH: /usr/local/sbin PATH: /usr/sbin PATH: /sbin PATH: /usr/local/bin PATH: /usr/bin PATH: /bin PATH: /usr/X11R6/bin PATH: /usr/games PATH: /opt/www/htdig/bin PATH: /usr/lib/java/bin PATH: /usr/lib/java/jre/bin PATH: /usr/lib/java/bin PATH: /usr/lib/java/jre/bin PATH: /opt/kde/bin PATH: /usr/lib/qt/bin

--------------------------------------------------------------

## ----------- ## ## Core tests. ## ## ----------- ##

.............. .............. .............. usr/include/libio.h:354: error: syntax error before "size_t" /usr/include/libio.h:363: error: syntax error before "size_t" /usr/include/libio.h:475: error: syntax error before "__gnuc_va_list" /usr/include/libio.h:477: error: syntax error before "__gnuc_va_list" /usr/include/libio.h:479: error: syntax error before "_IO_sgetn" /usr/include/libio.h:479: error: syntax error before "size_t" In file included from conftest.c:11: /usr/include/stdio.h:302: error: syntax error before "size_t" /usr/include/stdio.h:309: error: syntax error before "size_t" /usr/include/stdio.h:337: error: syntax error before "__gnuc_va_list" /usr/include/stdio.h:342: error: syntax error before "__gnuc_va_list" /usr/include/stdio.h:345: error: syntax error before "__gnuc_va_list" /usr/include/stdio.h:351: error: syntax error before "size_t" /usr/include/stdio.h:355: error: syntax error before "size_t" /usr/include/stdio.h:603: error: syntax error before "fread" /usr/include/stdio.h:603: error: syntax error before "size_t" /usr/include/stdio.h:609: error: syntax error before "fwrite" /usr/include/stdio.h:609: error: syntax error before "size_t" /usr/include/stdio.h:631: error: syntax error before "fread_unlocked" /usr/include/stdio.h:631: error: syntax error before "size_t" /usr/include/stdio.h:633: error: syntax error before "fwrite_unlocked" /usr/include/stdio.h:633: error: syntax error before "size_t" In file included from /usr/include/stdio.h:828, from conftest.c:11: /usr/include/bits/stdio.h:34: error: syntax error before "__gnuc_va_list" ......................... ......................... .........................

/usr/include/bits/stdio.h:35: error: number of arguments doesn't match prototype cc1: error: prototype declaration /usr/include/bits/stdio.h:36: error: `__fmt' undeclared (first use in this function) /usr/include/bits/stdio.h:36: error: (Each undeclared identifier is reported only once /usr/include/bits/stdio.h:36: error: for each function it appears in.) /usr/include/bits/stdio.h:36: error: `__arg' undeclared (first use in this function) In file included from /usr/include/sys/types.h:133, from conftest.c:12: /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h: At top level: /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:13: error: syntax error before "time_t" /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:15: error: syntax error before '}' token /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:19: error: syntax error before "time_t" /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:196: error: field `it_interval' has incomplete type /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:197: error: field `it_value' has incomplete type /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:201: error: field `it_interval' has incomplete type /usr/lib/gcc/i486-slackware-linux/3.4.5/include/time.h:202: error: field `it_value' has incomplete type In file included from /usr/include/sys/select.h:46, from /usr/include/sys/types.h:216, from conftest.c:12: /usr/include/bits/time.h:70: error: nested redefinition of `struct timeval' In file included from /usr/include/sys/types.h:266, from conftest.c:12: /usr/include/bits/pthreadtypes.h:48: error: syntax error before "size_t" /usr/include/bits/pthreadtypes.h:51: error: syntax error before "__stacksize" In file included from /usr/include/sys/stat.h:105, from conftest.c:13: /usr/include/bits/stat.h:70: error: field `st_atim' has incomplete type /usr/include/bits/stat.h:71: error: field `st_mtim' has incomplete type /usr/include/bits/stat.h:72: error: field `st_ctim' has incomplete type conftest.c: In function `f': conftest.c:26: error: `va_list' undeclared (first use in this function) conftest.c:26: error: syntax error before "v" conftest.c:27: error: `v' undeclared (first use in this function) conftest.c:28: error: syntax error before "int" ..................... .................... ....................

ну и т.д в том же духе

kuzulis ★★
() автор топика
Ответ на: комментарий от kuzulis

stdio.h /sys/types.h /sys/stat.h

я все перерыл (весь корневой раздел установленного линя) но их не нашел нашел только в исходниках компилятора GCC

в установочных пакетах *.tgz (компиляотра) этих заголовочных файлов нету (((

чет непонятное твориться %-) такс..... чо я делал еще:

1) удалил gcc полностью 2) почистил полностью каталог /usr/include 3) установил gcc заново

далее при запуске ./configure - ругается типа так : Код:

root@hunter:/home/den/tmp/kap/kopete-0.12.2# ./configure checking build system type... i686-pc-linux-gnulibc1 checking host system type... i686-pc-linux-gnulibc1 checking target system type... i686-pc-linux-gnulibc1 checking for a BSD-compatible install... /usr/bin/install -c checking for -p flag to install... yes checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for kde-config... /opt/kde/bin/kde-config checking where to install... /opt/kde (as returned by kde-config) ... checking whether system headers can cope with -O2 -fno-inline... irrelevant checking how to run the C++ preprocessor... /lib/cpp configure: error: C++ preprocessor "/lib/cpp" fails sanity check See `config.log' for more details. root@hunter:/home/den/tmp/kap/kopete-0.12.2#

-------------------

смотрю config.log - там напимано что типа не могу найти файлы stdio.h /sys/types.h /sys/stat.h

думаю.. щассс... беру тарбол с исходниками gcc и оттудова из каталога /gcc-x-x-x-x/gcc/fixinc/tests/base () копирую все файлы и каталоги в /usr/include

далее ./configure - он опять типа ошибки - смотри лог.. смотрю: Код:

............. ............ ........... configure:3876: $? = 0 configure:4006: result: yes configure:4023: checking for gcc option to accept ISO C89 configure:4097: gcc -c -O2 -mtune=athlon-xp -march=athlon-xp -mfpmath=sse -mmmx -msse -m3dnow conftest.c >&5 In file included from conftest.c:13: /usr/include/sys/stat.h:12:1: unterminated #if conftest.c:16: error: parse error before '*' token conftest.c:16: warning: "struct stat" declared inside parameter list conftest.c:16: warning: its scope is only this definition or declaration, which is probably not what you want conftest.c:16: warning: data definition has no type or storage class conftest.c:50: error: parse error before "FILE" conftest.c:50: warning: "struct stat" declared inside parameter list conftest.c:50: error: `pairnames' declared as function returning a function conftest.c:50: error: parse error before "int" configure:4103: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define PACKAGE "kopete-0.12.2" | #define VERSION "3.5.4" | /* end confdefs.h. */ | #include <stdarg.h> | #include <stdio.h> | #include <sys/types.h> | #include <sys/stat.h> | /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ | struct buf { int x; }; | FILE * (*rcsopen) (struct buf *, struct stat *, int); | static char *e (p, i) | char **p; | int i; | { | return p[i]; | } | static char *f (char * (*g) (char **, int), char **p, ...) | { | char *s; | va_list v; | va_start (v,p); | s = g (p, va_arg (v,int)); | va_end (v); | return s; | } | ................. .................

и т.п.

т.е он нашел те заголовочные файлы, но они какие-то косяки %-)

Уж не знаю чо и дальше думать

1) очистил /usr/include 2) установил GCC 3.4.5 3) установил kernel-header-2.6.15.2 4) установил kernel-source-2.6.15.2 (т.е откатился на все дистрибутивное) - все равно не компилится.. все тоже самое

??? что делать? куда рыть?

kuzulis ★★
() автор топика

Театр одного актёра :)

Zmacs
()

как именно ты ставил компилярор? ручками из сорцов или пакетами? Если ручками из сорцов - тогда велкоме ту биореактор. Если пакетами -проверь все ли пакеты стоят и их версии.

anonymous
()
Ответ на: комментарий от anonymous

Хе ХЕХЕХЕХЕ не смешно...

Пакетами все стояло ранее.. все дистрибутивное(родное)!!!

все зашипись компилилось!!!

Потом я собрал новое ядро из сырцов и все стало хренова.. т.е перестало компилиться.... !!!!

А теперь придется ЛИНУКС заново ставить.. т.к. я его угамачил.. (анинсталил все ГЛИБСЫ) :-)

Линух - еще галимее винды... если че тронул - то вааще пи...ц.. хер разберессся.. без литра водки

kuzulis ★★
() автор топика

> удалил ... заголовочные файлы к нему (2.6.15)

из /usr/include/linux ?

ну молодец, что сказать. возвращай обратно.

hatefu1_dead
()
Ответ на: комментарий от hatefu1_dead

Бензопилой тоже можно голову себе отрубить, только на это не очень многие способны; вы один из них...

krum
()
Ответ на: комментарий от kuzulis

> А теперь придется ЛИНУКС заново ставить.. т.к. я его угамачил.. (анинсталил все ГЛИБСЫ) :-)

> Линух - еще галимее винды... если че тронул - то вааще пи...ц.. хер разберессся.. без литра водки

Я, вот, тут, вдруг, задумался: а, может, зря затеяли эту популяризацию Linux...

P.S. Впрочем, по степени минимального зла и наименьшего травматизма, пусть, лучше, ковыряет Linux... А то, не дай Бог ему в руки бензопилу... "анинсталит" себе... всё полезное, к чёртовой матери...

:)

Neksys ★★★
()
Ответ на: комментарий от kuzulis

чет непонятное твориться %-) такс..... чо я делал еще: 1) удалил gcc полностью 2) почистил полностью каталог /usr/include 3) установил gcc заново

смотрю config.log - там напимано что типа не могу найти файлы stdio.h /sys/types.h /sys/stat.h думаю.. щассс... беру тарбол с исходниками gcc и оттудова из каталога /gcc-x-x-x-x/gcc/fixinc/tests/base () копирую все файлы и каталоги в /usr/include

LOL!!!

anonymous
()
Ответ на: комментарий от anonymous

Можно задать вопрос? Зачем вы удалили файлы???

krum
()
Ответ на: комментарий от kuzulis

>А теперь придется ЛИНУКС заново ставить.. т.к. я его угамачил.. >(анинсталил все ГЛИБСЫ) :-)

Господа а ведь это номинант на премию Дарвина!

Или может замутим свою премию имени ЛОРа за самое жестокое извращение с линуксом?

anonymous
()
Ответ на: комментарий от dilmah

Хе... Хохмачи вы все.. :-)

Лучеб совет дали.. а не хаяли

Насчет премии не отказался бы ))

1)Я анинсталлил GCC, kernel-header и чистил /usr/include для того чтобы потом все это поставить заново :-) (думаю понятно зачем) 2)И вот Глибсы анинсталлил по той же причине шоб потом заново их поставить (я даж и не подозревал чо все накроется без них.. думал авось прокатит ) :-)

А вот теперь линух не грузится.. Я даж с загрузочного диска распаковывал пакеты glib*.tgz и ручками копировал их содержимое в корень(т.е. туда куда типа надо) :-) .. НО не помогло..!!!

Вот еслиб как нить их инталлить можно было...(мож и помогло бы)

kuzulis ★★
() автор топика
Ответ на: комментарий от kuzulis

> А вот теперь линух не грузится.. Я даж с загрузочного диска распаковывал пакеты glib*.tgz и ручками копировал их содержимое в корень(т.е. туда куда типа надо) :-) .. НО не помогло..!!!

Если ещё не пропало желание копать глубже, смотри:

Linux From Scratch Версия 4.0 (рус): http://multilinux.sakh.com/lfs/ (http://multilinux.sakh.com/download/lfsbook.tar.bz2)

Linux From Scratch Версия 5.0 (рус): http://www.rus-linux.net/MyLDP/BOOKS/LFS-BOOK-5.0-HTML/index.html

Linux From Scratch Версия 6.0 (рус): http://lfs.linux.kiev.ua/lfs/

Linux From Scratch Version 6.2 (англ): http://www.linuxfromscratch.org/lfs/view/6.2/ (http://www.linuxfromscratch.org/lfs/downloads/6.2/)

Там ты найдёшь: где, что, как и зачем привинчено.

P.S. Удачи.

:-)

Neksys ★★★
()
Ответ на: комментарий от Neksys

Кстати, оттуда же: "Glibc является библиотекой C, которая обеспечивает системные вызовы и основные функции, такие как open, malloc, printf и т.д. Библиотека C используется для всех динамически скомпонованых программ."

P.S. Так, для справки... Чтоб понятно было, что ты "анинсталлил" и почему это вызывает улыбку.

:-)

Neksys ★★★
()
1 апреля 2007 г.
Ответ на: комментарий от kuzulis

> 1)Я анинсталлил GCC, kernel-header и чистил /usr/include для того чтобы потом все это поставить заново :-) (думаю понятно зачем) 2)И вот Глибсы анинсталлил по той же причине шоб потом заново их поставить (я даж и не подозревал чо все накроется без них.. думал авось прокатит ) :-)

Ну ты и бамбук! Headers привязаны к библиотеке glibc. Их ни в коем случае удалять нельзя. Переустанавливай систему, турок!:)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.