| 
| 
 | Вопрос # 5 417/ вопрос закрыт / | 
 |  Здравствуйте, уважаемые эксперты!Необходимо собрать linux-программу, но никак не могу разобраться с параметрами gcc, чтобы корректно подключить *.h-файлы ядра. Подробности в приложении.
 Приложение:Переключить в обычный режим [denis@lsi-server src]$ /home/denis/work/buildroot-2010.08/output/staging/usr/bin/i386-linux-gcc
-Wall -g -O0  -I include/. -I include/libprj -I include/main -I include/memp -I include/SDL -I
include/sqlite -I SDL/ -I lapd/ -I
/home/denis/work/buildroot-2010.08/output/toolchain/linux-2.6.34.3/include/   -c -o main.o main.cIn file included from main.c:35:   [denis@lsi-server src]$ /home/denis/work/buildroot-2010.08/output/staging/usr/bin/i386-linux-gcc
-Wall -g -O0  -I include/. -I include/libprj -I include/main -I include/memp -I include/SDL -I
include/sqlite -I SDL/ -I lapd/ -I
/home/denis/work/buildroot-2010.08/output/toolchain/linux-2.6.34.3/include/linux/   -c -o main.o
main.cIn file included from /home/denis/work/buildroot-2010.08/output/staging/usr/include/bits/types.h:31,                 from /home/denis/work/buildroot-2010.08/output/staging/usr/include/sys/types.h:31,                 from main.c:17:  
|  |   Вопрос задал: DNK (статус: Студент)Вопрос отправлен: 16 июня 2011, 17:23
 Состояние вопроса: закрыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 10; последнее сообщение — 20 июля 2011, 14:56; участников в обсуждении: 3. 
|   | Егор (статус: 10-ый класс), 16 июня 2011, 19:29 [#1]:найти в main.c строчку 
 #include <xtimer.h>и удалить оную а вот файлик stddef.h по идее, должен быть в норме. проверь.
 
 и вообще, где код? только не весь, конечно, а только строчки, на которые ругнулся компилятор:
 
 Цитата (DNK): In file included from main.c:35: <--- эта...
 ... from main.c:17: <--- эта
 
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | DNK (статус: Студент), 17 июня 2011, 13:11 [#2]:Слава богу, кто-то решил подискутировать! 
 Библиотека xtimer нужна и важна для программы, поэтому удалить ее не могу. Программа абсолютно рабочая и отлично собирается при помощи AVR32 Studio, но мне нужно собрать её под платформу i386. Тут явно проблемы не в коде а в параметрах компиляции.
 
 Собственно строки 17 и 35 должны быть понятны любому сишнику из листинга в приложении, но если кому-то станет легче:
 main.c:17: #include <sys/types.h>
main.c:35: #include "xtimer.h" "Digital Networked Knight" |  
|   | Егор (статус: 10-ый класс), 17 июня 2011, 18:29 [#3]:попробуй закомментировать объявление структуры в xtimer.h и сделать ссылку на timer.h Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | DNK (статус: Студент), 17 июня 2011, 18:37 [#4]: Цитата (Егор): попробуй закомментировать объявление структуры в xtimer.h и сделать ссылку на timer.hЗачем? "Digital Networked Knight" |  
|   | Егор (статус: 10-ый класс), 17 июня 2011, 18:52 [#5]:потому что у тебя объявлены две структуры с одним и тем же именем в xtimer.h и time.h тебе это надо как-то разрулить. можно попробовать убрать объявление в xhimer.h, а вместо этого объявления сделать ссылку (инклюд) на timer.h
 Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | DNK (статус: Студент), 17 июня 2011, 21:30 [#6]:Я уже говорил, xtimer нужен. Это оболочка для time. Очень не хотелось заниматься её переписыванием, потому что во-первых для AVR32 с той же версией ядра всё компилируется, во-вторых не факт что такой конфликт будет единственным, в-третьих я не знаю С.
 "Digital Networked Knight" |  
|   | Егор (статус: 10-ый класс), 18 июня 2011, 15:06 [#7]:гм... надо бы весь проект посмотреть Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.— Donald E. Knuth.
 |  
|   | Вадим К (статус: Академик), 18 июня 2011, 21:47 [#8]:Далеко не факт, что код, который скопмилируется под какое то конкретное ядро на конкретной платформе, будет компилироваться на другой. В некоторых случаях это невозможно. Или код скомпилируется, но не будет работать (хардварная проблема). Нужен весь код - тогда можно о чем то говорить.
 Галочка "подтверждения прочтения" - вселенское зло. |  
|   | DNK (статус: Студент), 19 июня 2011, 16:05 [#9]:Исходник проекта весит порядка 6Мбайт. "Digital Networked Knight" |  
|   | DNK (статус: Студент), 20 июля 2011, 14:56 [#10]:Мало мне было проблем! Перенесли хомяков на новую машину, так теперь и buildroot не собирается.
   "Digital Networked Knight" |  2 апреля 2012, 12:25: Вопрос закрыт (решение принял автор вопроса — DNK): Нашел подобный проект, который такой фигнёй не страдает. Всё прекрасно собралось и работает. Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |