PDA

Просмотр полной версии : Зависимые библиотеки



Спорягин Кирилл
18.01.2022, 13:28
День добрый, уважаемые форумчане!

ПРЕДИСЛОВИЕ.
Создал пустой проект на Кодесис V2.
Удалил из менеджера библиотек все библиотеки. Проект компилируется, все хорошо!
Добавил в менеджер библиотек библиотеку Util.lib и только ее выбрал!
НО! Автоматически добавилась и библиотека Standart.lib, потому что Util.lib использует Standart.lib.
Если в проекте обе библиотеки (и Util.lib и Standart.lib), то проект (речь о пустом проекте) компилируется.
Удаляю из менеджера Standart.lib, проект перестает компилироваться, так как не знает тип TON.

ВОПРОС.
Теперь собственно вопрос.
Создал свою библиотеку (Б1), в которой использую другую свою библиотеку (Б2).
Добавляю в проект Б1, и Б2 автоматом не появляется. Проект компилируется с ошибками, что не знает типы из Б2.
Как мне сделать так, чтобы при добавлении в проект Б1
автоматически добавлялась Б2, как в случае с Util.lib?

Евгений Кислов
18.01.2022, 13:41
День добрый, уважаемые форумчане!

ПРЕДИСЛОВИЕ.
Создал пустой проект на Кодесис V2.
Удалил из менеджера библиотек все библиотеки. Проект компилируется, все хорошо!
Добавил в менеджер библиотек библиотеку Util.lib и только ее выбрал!
НО! Автоматически добавилась и библиотека Standart.lib, потому что Util.lib использует Standart.lib.
Если в проекте обе библиотеки (и Util.lib и Standart.lib), то проект (речь о пустом проекте) компилируется.
Удаляю из менеджера Standart.lib, проект перестает компилироваться, так как не знает тип TON.

ВОПРОС.
Теперь собственно вопрос.
Создал свою библиотеку (Б1), в которой использую другую свою библиотеку (Б2).
Добавляю в проект Б1, и Б2 автоматом не появляется. Проект компилируется с ошибками, что не знает типы из Б2.
Как мне сделать так, чтобы при добавлении в проект Б1
автоматически добавлялась Б2, как в случае с Util.lib?

Добрый день.
Можете выложить свои библиотеки (реализацию POU можно удалить, оставив только интерфейсную часть), чтобы я попробовал повторить проблему?
При попытке повторить проблему по вашему описанию - у меня это не воспроизвелось, все нужные библиотеки добавились автоматически.

Спорягин Кирилл
18.01.2022, 15:03
Евгений, спасибо за наводку.

Если библиотеку Б2 расположить в папке по умолчанию 3S Software\Codesys V2.3\Library тогда он ее подтягивает.
А вот если по другому пути, то тут не ясно пока. Точнее так: библиотеку Б3 он подтянул не из папки по умолчанию, а Б2 почему-то не хочет.
Но в целом ясно, что в чем-то исключительном дело.

keysansa
18.01.2022, 21:37
В папке с проектом делайте подпапку с либами и настройте в опциях директорию на нее.
Любой проект всегда в отдельной папке и всегда одно имя либовой подпапки.
Не будет волновать версионность либ, пофиг перенос на любой пк и никогда не будет - 'проекта была изменена ай-яй-яй'

(проблемы недостатка памяти остались в прошлом тысячелетии)

В отдельном проекте нет смысла выделять библиотеки.
В разных проектах - нет смысла общие библиотеки перемещать внутрь проекта.

keysansa
18.01.2022, 22:05
Как только проектов будет чуть более чем 1 и придется юзать чуть более чем 1 ноут на протяжении годиков так с дюжину а то и другую сразу придет понимание. Особенно после всплывания внезапно 'проекта была изменена ай-яй-яй' через несколько лет когда проездом и самолет через час.

У меня 3 ноута, домашний сервер и комп. Пользую github, яндекс и гугл диск для синхронизации разного вида проектов. При поездке в область, где с инетом проблемы - копирую все проекты на внешний жесткий диск.

ЗЫ. OneDrive еще, для архивов

Валенок
18.01.2022, 22:26
-3 ноута,
-домашний сервер и комп.
-github
-яндекс
-гугл диск для синхронизации
-копирую все проекты на внешний жесткий диск.
-OneDrive еще, для архивов
1 текущий ноут
Всегда подпапка с либами
Пью пиво

keysansa
18.01.2022, 22:39
1 текущий ноут
Всегда подпапка с либами
Пью пиво

2 текущих ноута на "выход", 1 для себя. На домашнем сервере (который доступен извне) subversion + trac (вся история проектов, плюс обратная связь от пользователей).
Проектов более одного. Это без учета тех, которые старше 5 лет (они на DVD-R).
Тоже люблю пиво )

58771