Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Вт окт 24, 2017 7:17 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 9 сообщений ] 
Автор Сообщение
 Заголовок сообщения: компиляция GCC под KolibriOS
СообщениеДобавлено: Ср сен 02, 2009 6:08 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Есть вопрос ответ на который я пока не нашёл.
У меня gcc 4.3.3
При компиляции программ GCC подменяет некоторые функции из libC на свои из libgcc.
Например printf() на __printf_chk . Я пробовал добавлять опцию -fno-builtin .Она частично отключает некоторые подмены, но подмены для printf() так и остаются. Искал в сети как это сделать, но не нашёл ответа. Может кто знает как это обойти?

_________________
KolibriOS-перспективная ос!
Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Ср сен 02, 2009 7:49 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
-fno-builtin-printf не помогает ?


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Ср сен 02, 2009 8:10 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Цитата:
-fno-builtin-printf не помогает ?

К сожалению нет.

_________________
KolibriOS-перспективная ос!

Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Ср сен 02, 2009 8:24 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
Ты из Линукс компилируешь ? У меня mingw gcc 4.4.0 и такой проблемы нет. Попробуй -nostdinc . Заголовочные файлы придётся собирать по частям.


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Ср сен 02, 2009 9:12 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Цитата:
Ты из Линукс компилируешь ?


Да. У меня винда XP стала глючить на уровне ядра. Во время работы может неожиданно вылететь в перезагрузку(резко).
Цитата:
Попробуй -nostdinc . Заголовочные файлы придётся собирать по частям.

Попробую через свои инклуды. Всёравно придётся переходить от статической библиотеки к динамической.

_________________
KolibriOS-перспективная ос!

Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Пт сен 04, 2009 3:07 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Вот решил я собрать DLL для KolibriOS по тому же методу, что и библиотека pixlib.
Собираю из Линукса GCC. Таблицу экспорта объявляю так:

Код:
typedef struct
{
   char *name;
   void *function;
}__attribute__((packed))export_t;

char szSTART[]                                           = "START";
.
.
.
export_t   EXPORTS[]__attribute__((section("EXPORT")))=
   {
      {szSTART,                                 start                                },
.
.
.


Всё компилируется. Ошибок и предупреждений нет. Но таблица экспорта не открывается в CObj и не грузиться KolibriOS. Я посмотрел объектные файлы Hex редактором.
Вот ключевое слово в объектнике библиотеки.
Код:
adFont szFreeFont EXPORTS     *    H    T  

Но почему-то таблица экспорта не грузиться. Как должна размещаться таблица, чтобы она грузилась?

_________________
KolibriOS-перспективная ос!

Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Пт сен 04, 2009 3:46 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Даже, если объявлять без __attribute__((section("EXPORT"))) всёравно таблица экспорта не видна KolibriOS. Хотя таблица экспорта в объектнике есть.

_________________
KolibriOS-перспективная ос!

Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Пт сен 04, 2009 7:33 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
andrew_programmer

У тебя объектник наверное в ELF скомпилировался. Попробуй поставить кросскомпилятор.


Вернуться к началу
 Заголовок сообщения: Re: компиляция GCC под KolibriOS
СообщениеДобавлено: Чт апр 08, 2010 11:34 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 788
Если вдруг до сих пор интересно - можете посмотреть вот это http://wiki.androidfan.ru/%D0%A1%D0%B1% ... 0%BB%D1%8F

Хоть тут и описана сборка под андроид - но должен понятен быть принцип создания полной кросс-компиляции ( в том числе и без включения libgcc )

Если необходимо - могу написать как то же самое сделать на tiny C compiler + dietlibc

А для формирования нужного формата файла самый лучший вариант использовать описание структуры через ld-script


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 9 сообщений ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB