|
Вопрос # 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.c
- In 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.c
- In 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): Нашел подобный проект, который такой фигнёй не страдает. Всё прекрасно собралось и работает.
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|