реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Keil: Что дает использование откомпилированной библиотеки
xander
сообщение May 16 2012, 11:43
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 16-06-05
Из: Санкт-Петербург
Пользователь №: 6 072



В Keil можно компилировать проект ввиде библиотеки, и соответственно вопрос, какие преимущества использование откомпилированной библиотеки и библиотеки в виде исходников
Go to the top of the page
 
+Quote Post
scifi
сообщение May 16 2012, 12:28
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Преимущества:
1) Откомпилированную библиотеку можно продавать, не опасаясь выдать содержимое исходников.
2) Если код не меняется и используется часто, то можно сэкономить время на компиляции, каждый раз используя его не в виде исходников, а в скомпилированном виде. Но, учитывая скорость сегодняшних компьютеров, это слабый аргумент.
Всё остальное - сплошные минусы:
1) Хотим отлаживать в том числе библиотечный код? Тогда этот код должен быть скомпилирован с низким уровнем оптимизации. А для релиза - наоборот. Хранить две версии скомпилированного кода?
2) Если библиотека скомпилирована одной версией компилятора, а остальной код - другой, то велика вероятность несовместимости.
3) Ну и, естественно, в скомпилированной библиотеке ничего не исправишь.
Go to the top of the page
 
+Quote Post
richie
сообщение May 22 2012, 18:19
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 147
Регистрация: 5-07-04
Из: Обнинск
Пользователь №: 261



Цитата(scifi @ May 16 2012, 16:28) *
...
3) Ну и, естественно, в скомпилированной библиотеке ничего не исправишь.

Позволю себе не согласиться.
Можно "перегрузить" функцию из библиотеки, если её функциональность
не подходит в использующем её приложении.
Для этого нужно чтобы такая функция была определена в отдельном сегменте.
Криво, конечно, но пользоваться можно.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение May 22 2012, 18:57
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (scifi @ May 16 2012, 15:28) *
1) Хотим отлаживать в том числе библиотечный код? Тогда этот код должен быть скомпилирован с низким уровнем оптимизации.
Ой, зачем? Отлаживать надо то, что будет в боевой программе. Какой смысл отлаживать другой код? Занимающий больше места, исполняющийся дольше, отжирающий больше стека. Для отладки достаточно, чтобы библиотека компилировалась с включением в нее отладочной информации. Правда и тут есть недостаток - в отладочную информацию прописываются абсолютные пути к исходным файлам, значит надо либо отлаживать на том же компе, где скомпилили, либо на втором иметь исходники в тех же местах. А при продаже на сторону либо компилить библиотеку без отладочной информации, либо обрезать эту информацию отдельной утилитой вроде strip.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 10th July 2025 - 00:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.01718 секунд с 7
ELECTRONIX ©2004-2016