User Tag List

Показано с 1 по 10 из 99

Тема: "Умная линковка" в компиляторах

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Q-Master Посмотреть сообщение
    В твоем (задолбало писать Вашем) случае 100 кб кусок кода будет по моему методу прогнан 1 раз ровно и скомпилирован в 1 .о файл который будет 1 раз прилинкован к собираемому приложению. По твоему методу это будет:
    прогон 100кб файла нарезателем и сохранение 100 кусков по килобайту (в реальности с учетом хэдеров и статических ф-ций будет не по килобайту, а по полтора-два). Потом 100 компиляций в 100 объектных файлов и 100 линковок. Соотвтетственно в случае ошибки в моем случае 1 компиляция, в твоем от 1 до 100.
    Эта монструозная времязатратная операция нужна только ОДИН(!) раз при создании библиотеки. Далее, при компиляции целевого файла, использующего эту библиотеку, линкер будет выдёргивать из неё только те функции, которые задействованы. Неужели ты предлагаешь библиотеку собирать каждый раз при пересборке проекта?!
    Наверное, надо внести ясность, под библиотекой в беседе, из которой выросла эта тема, понимается не Си-файл, а архив объектников, созданный библиотечным менеджером.
    Цитата Сообщение от Q-Master Посмотреть сообщение
    Преимущество очевидно и не требует переноса (в случае смены компилятора или платформы для компиляции) утилиты по нарезке и лечения ее багов буде такие найдутся.
    К случаю SDCC это преимущество неприменимо. Переносить проекты с ZX-Spectrum/ZX-Evolution на другие платформы никто не собирается.

    Цитата Сообщение от Q-Master Посмотреть сообщение
    Я уже сказал что это не проблема sdcc, а проблема исключительно придуманная и тщательно лелеемая. Пре-процессор полностью решает ее без использования сторонних утилит.
    Я очень критично отношусь к своим знаниям и способностям в программировании, особенно, что касается Си, и допускаю, что я тупой и несведущий, поэтому прошу дать алгоритм, как при использовании пакета SDCC сделать библиотеку (архив объектников типа "name.lib") так, чтобы при использовании её в проекте при линковке конечного файла из неё в код программы добавлялись только задействованные процедуры.

    Цитата Сообщение от Q-Master Посмотреть сообщение
    Таки не нужна, если пользоваться ВСЕМИ возможностями компиляторов С.
    Если пользоваться всеми возможностями компилятора SDCC, то, конечно, резалка не нужна, потому что всё можно сделать вручную, изначально пиша () каждую функцию в отдельный исходник. Но я не собираюсь тратить на это время. Если есть готовый исходник с кучей функций, я его порежу и соберу в архив объектников автоматически.
    У меня такое чувство, что меня пытаются убедить, что мне неудобно то, чем я пользуюсь
    Последний раз редактировалось Sergey; 13.06.2014 в 21:34. Причина: оффтоп
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 17
    Последнее: 26.12.2015, 23:22
  2. Ответов: 19
    Последнее: 30.09.2011, 03:08
  3. Ответов: 0
    Последнее: 15.08.2010, 14:38
  4. Ответов: 18
    Последнее: 27.08.2008, 20:27
  5. Ответов: 6
    Последнее: 20.11.2007, 11:29

Ваши права

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