Re[4]: Как работать с билд-скриптами?
От: sergey2b ЮАР  
Дата: 12.05.23 13:16
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Если компилируется библиотека для windows, то использовать докер для windows.


хорошо
а где брать имидж докера с windows
компилятором от visual studio
как ставить дополнительны библиотеки на этот образ если половина инсталяторов с GUI и без командной строки
Re[6]: Как работать с билд-скриптами?
От: sergey2b ЮАР  
Дата: 12.05.23 13:23
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>1. Использовать виртуальную машину. Программа должна собираться в только что установленной макоси определённой версии. Скриптом установить нужные пакеты (xcode, sdk) и всё, остальное уже в исходниках приложения. Ну и сказать людям, чтобы использовали виртуальную машину, а не свою хостовую систему. Если на хосте макось, запускать гостевую макось — варианты есть, как платные, так и бесплатные.


1a поставить докер на macos собрать в нем программу и запускать эту программу из под докера
пример такого подхода https://github.com/ttyS0/docker-other-transcode
Re[5]: Как работать с билд-скриптами?
От: vsb Казахстан  
Дата: 12.05.23 13:31
Оценка: 3 (1)
Здравствуйте, sergey2b, Вы писали:

vsb>>Если компилируется библиотека для windows, то использовать докер для windows.


S>хорошо

S>а где брать имидж докера с windows

https://hub.docker.com/_/microsoft-windows

S>компилятором от visual studio


готовый — не знаю, а статья тут есть: https://learn.microsoft.com/en-us/visualstudio/install/build-tools-container?view=vs-2022

S>как ставить дополнительны библиотеки на этот образ если половина инсталяторов с GUI и без командной строки


Установить библиотеку в виртуалку, разобраться, какие папки/файлы она создала, собрать эти файлы в tar архив и устанавливать в докер-образ через ADD этот tar-архив по нужному пути, вместо инсталлятора. Использовать GUI в докере наверное не получится, ну по крайней мере я не знаю, как. Но вообще многие инсталляторы библиотек и инструментов для разработки таки поддерживают установку без GUI.

Ещё есть разные пакетные менеджеры для Windows — официальный windows package manager, chocolatey и тд. Можно на них посмотреть, они популярные библиотеки перепаковывают.
Re[6]: Как работать с билд-скриптами?
От: sergey2b ЮАР  
Дата: 12.05.23 13:35
Оценка:
Здравствуйте, vsb, Вы писали:


vsb>готовый — не знаю, а статья тут есть: https://learn.microsoft.com/en-us/visualstudio/install/build-tools-container?view=vs-2022


спасибо хорошая ссылка в предлагаемом dockerfile есть образ винды с visual studio

FROM mcr.microsoft.com/windows/servercore:ltsc2022
Re: Как работать с билд-скриптами?
От: Muxa  
Дата: 12.05.23 13:42
Оценка:
S>А третья библиотека нуждается в этих h-файлах, которые должны были быть скопированы, но не скопировались т.к. был пропущен шаг.
Ну, а find_package(собраная_или_установленная_либа REQUIRED) возвращает правильные пути к заголовкам? (Будь они в директории сборки проекта или где-то в системе)
Re: Как работать с билд-скриптами?
От: Doom100500 Израиль  
Дата: 14.05.23 06:34
Оценка: :)
Здравствуйте, Shmj, Вы писали:

S>А конкретно, какой-то CMake-файл проверяет установлена ли либа и если установлена — то пропускает ее сборку и использует ее. А третья библиотека нуждается в этих h-файлах, которые должны были быть скопированы, но не скопировались т.к. был пропущен шаг.


Ну это же баг. Просто не дотестировали.

Открой им ишью с описанием проблемы, ну или отправь PR вместо нытья на форумах. Поможешь себе и мир немного лучше сделаешь.
А то докеры — костылёкеры. CMake, по идее, был рождён для воспроизводимости сборки в том числе, но от багов никто не застрахован.
Спасибо за внимание
Отредактировано 14.05.2023 6:34 Doom100500 . Предыдущая версия .
Re[2]: Как работать с билд-скриптами?
От: Shmj Ниоткуда  
Дата: 14.05.23 08:48
Оценка:
Здравствуйте, Doom100500, Вы писали:

D>Здравствуйте, Shmj, Вы писали:


S>>А конкретно, какой-то CMake-файл проверяет установлена ли либа и если установлена — то пропускает ее сборку и использует ее. А третья библиотека нуждается в этих h-файлах, которые должны были быть скопированы, но не скопировались т.к. был пропущен шаг.


D>Ну это же баг. Просто не дотестировали.


Это сторонние скрипты и не просто баг а коряво написаны.

D>Открой им ишью с описанием проблемы, ну или отправь PR вместо нытья на форумах. Поможешь себе и мир немного лучше сделаешь.

D>А то докеры — костылёкеры. CMake, по идее, был рождён для воспроизводимости сборки в том числе, но от багов никто не застрахован.

Нет ресурсов чтобы это исправлять.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.