VCPKG: создайте и используйте локальный реестр вместо удаленногоC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 VCPKG: создайте и используйте локальный реестр вместо удаленного

Сообщение Anonymous »

В настоящее время я использую cmake + vcpkg, настроенный в режиме манифеста, для запроса удаленного реестра (определенного в vcpkg-configuration.json) на предмет зависимости пакета. При первом запуске все работает нормально — пакеты были собраны/установлены в папке «vcpkg_installed». Я также заметил, что в папке %APPDATA%/local/vcpkg/git-tree< есть папки UUID, содержащие vcpkg.json и portfile.cmake для пакетов %APPDATA%/local/vcpkg/git-tree.
Теперь я хотел бы заморозить несколько версий пакетов, и на самом деле нет необходимости запрашивать удаленный реестр каждый раз, когда код перестраивается. Но похоже, что каждый раз, когда запускается перестроение, vcpkg всегда сначала пытается запросить удаленный реестр в рамках рабочего процесса только для того, чтобы в конце сообщить, что «все необходимые пакеты установлены». Если я удалю удаленный реестр, он будет жаловаться на отсутствие версий пакетов и т. д.
Чтобы остановить такое поведение запросов, учитывая, что информация о пакете уже загружена в папку git-tree, как я могу создать локальный реестр, чтобы вместо этого vcpkg запрашивал его и все равно выдавал «все необходимые пакеты установлены»?
Следуя приведенному здесь примеру, я получил »внутреннюю ошибку: .. .\commands.add-version.cpp: vcpkg произошел сбой; дополнительные сведения недоступны»
на шаге 4 «Обновление базы данных версий». Каждая папка порта напрямую копируется из git-tree с UUID, переименованным в имя порта.
Я также заметил под git-tree есть еще одна папка с baseline.json и папки с именем "a -", "b-" и т. д., содержащие зависимые пакеты для тех, которые я хотел бы перенаправить запрос (в локальный реестр, который я создаю). Я предполагаю, что это сгенерировано vcpkg, но интересно, смогу ли я этим воспользоваться.
Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/793 ... -of-remote
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»