Помощь в прикрутке gcc

...
  • Держу пари, ругается ld на то, что нет точки входа в программу.
    Статью diamond'а никто не обновлял, и там указана устаревшая информация. Главная функция должна называться main (как в стандарте Си), а не app_main (так было когда-то давно в menuetlibc). Этот вопрос уже задавался (в том числе мной) на форуме. Предлагаемое решение: заменить app_main на main. Должно помочь.

    Кроме menuetlibc, можно использовать newlib (это такой libc от red hat). На мой взгляд, он функциональнее, чем menuetlibc, хотя и прожорливее в плане размера бинарников. Потребуется компилятор mingw (для многих linuxов есть в репозиториях), скомпилированная библиотека (брать на форуме, в разделе Прикладные библиотеки) и заголовочные файлы (можно использовать те, что лежат на svn в папке programs/develop/libraries/newlib или как-то так)
  • Sorcerer
    Может тогда сделаешь коррекцию мануала от diamond'a? Или напишешь свою статью на тему hello world и gcc ?
  • Скорее напишу свою статью. Слишком много нюансов в статье diamond'а не учтено, и это понятно - цель была не рассказать, как работать с gcc, а показать, что это вообще возможно.
  • Попробовал скопировать код и мейк из programs/binclock сработало вроде без ошибок. Значит код был кривой.
    теперь еще вопрос:

    1. объектный файл стандартный для gcc получается? если да то как точно сказать компилятору использовать только наши инклуды и в сторону не смотреть?

    2. если не использовать Makefile_for_program то как самому написать корректный Makefile для сборки бинарника, пробовал не получилось что то.

    3. а еще хотелось бы иногда иметь возможность инклудить исходный код функций, а не готовые стат. библиотеки. Вот как это настроить я тоже пока не разобрался.
  • Так что, кто нибудь прояснит?
  • 1) Объектный файл - обычный объектный файл. Makefile как раз и говорит использовать только menuetlibc-инклуды.
    2) Есть же исходники makefile'ов всех - их можно брать за основу. Просто тот же самый makefile_for_program взять и переписать
    3) Зачем подключать исходный код? Исходный код чего именно? Библиотеки и так все статически линкуются для melibc
  • Sorcerer wrote: 3) Зачем подключать исходный код? Исходный код чего именно? Библиотеки и так все статически линкуются для melibc
    Код функции, допустим его нужно модифицировать, но библиотеку при этом не трогать.
  • Исходники библиотек доступны. Компилируй, собирай, используй. Коммунизм.
    А подключать напрямую исходный код библиотек - это как-то страннннно.
  • Who is online

    Users browsing this forum: No registered users and 4 guests