Стенды: Alt Workstation K 11.0 x86_64 (обновленный до Sisyphus) Alt Workstation 11.0 x86_64 (обновленный до Sisyphus) Версия: vcpkg-2025.05.19-alt1.x86_64 Шаги: 1. # apt-get install vcpkg 2. $ vcpkg --help Ожидаемый результат: вывод справки. Реальный результат: "error: Could not detect vcpkg-root. If you are trying to use a copy of vcpkg that you've built, you must define the VCPKG_ROOT environment variable to point to a cloned copy of https://github.com/Microsoft/vcpkg." Ошибка возникает при вызове любой команды.
Столкнулся с такой же ошибкой.
К сожалению, в пакет решили не добавлять предупреждение из описания пакета, а также не обновили скрипт на установку этой переменной окружения на значение по умолчанию, которые есть в Fedora. см. https://src.fedoraproject.org/rpms/vcpkg/blob/rawhide/f/vcpkg.spec#_42 Поэтому, для использования необходимо предоставить репозиторий с кодом вручную. Следующие действия были проверены на сизифе: 1. Добавить установку переменной окружения в ~/.bash_profile (или другой файл, в зависимости от командного интерпретатора) или в /etc/profile.d/vcpkg.sh (файл из пакета, может быть перезаписан) > # Export the correct vcpkg root directory. > if [ -z "$VCPKG_ROOT" ]; then > export VCPKG_ROOT="$HOME/.local/share/vcpkg" > fi 2. Убедиться в наличии установленной переменной окружения $ echo $VCPKG_ROOT /home/localadmin/.local/share/vcpkg 3. Склонировать репозиторий по указанному пути $ git clone https://github.com/microsoft/vcpkg.git $VCPKG_ROOT После этого, пакетный менеджер заработает. В дальнейшем, необходимо обновлять репозиторий вручную: $ git -C $VCPKG_ROOT pull
(Ответ для Корытов Иван на комментарий #2) ... > 3. Склонировать репозиторий по указанному пути > > $ git clone https://github.com/microsoft/vcpkg.git $VCPKG_ROOT Мы в этой задаче обсуждаем, что нужно улучшить в пакете, собранном в репозитории. Как этому помогут инструкции по использованию vcpkg не из пакета?
(Ответ для Vitaly Lipatov на комментарий #3) > (Ответ для Корытов Иван на комментарий #2) > ... > > 3. Склонировать репозиторий по указанному пути > > > > $ git clone https://github.com/microsoft/vcpkg.git $VCPKG_ROOT > Мы в этой задаче обсуждаем, что нужно улучшить в пакете, собранном в > репозитории. > Как этому помогут инструкции по использованию vcpkg не из пакета? Тем что это именно то, что требует пакет для работы. Многие файлы который он использует находятся в репозитории и по-какой причине не попадают в пакет. В частности пакет как минимум требует триплет линукса иначе вылезает следующая ошибка: error: Invalid triplet: x64-linux.
(Ответ для Vitaly Lipatov на комментарий #3) > (Ответ для Корытов Иван на комментарий #2) > Мы в этой задаче обсуждаем, что нужно улучшить в пакете, собранном в > репозитории. > Как этому помогут инструкции по использованию vcpkg не из пакета? Мне кажется очень грубым заниматься нравоучением пользователя, который предложил решение исходя из простых соображений логики. Искать рабочее решение проблемы это задача мейнтейнера, а не пользователя, и мейнтейнер вправе либо принять его либо нет. Но уж точно не заниматься наставлением пользователя, какие решения он должен предлагать. К слову, решение Игоря мне помогло и пакет начал исправно работать как это и должно быть.
(Ответ для Сергей Жидких на комментарий #5) > (Ответ для Vitaly Lipatov на комментарий #3) > > (Ответ для Корытов Иван на комментарий #2) > > Мы в этой задаче обсуждаем, что нужно улучшить в пакете, собранном в > > репозитории. > > Как этому помогут инструкции по использованию vcpkg не из пакета? > > Мне кажется очень грубым заниматься нравоучением пользователя, который > предложил решение исходя из простых соображений логики. Какое нравоучение? Не бывает никакой логики. Вы логикой называете череду умозаключений, но ведь из неверных исходных данных можно сделать логически безупречный неверный вывод. > Искать рабочее решение проблемы это задача мейнтейнера, а не пользователя, и мейнтейнер > вправе либо принять его либо нет. Если есть какое-то предложение, что конкретно улучшить в пакете, внимательно слушаю. > Но уж точно не заниматься наставлением > пользователя, какие решения он должен предлагать. Почему вы так считаете? Я-то пытаюсь объяснить, что решение должно быть направлено на то, чтобы пакетом можно было пользоваться после его установки, без дополнительных странных действий.
Файлы из репозитория можно было бы включить в пакет, но это не имеет смысла, т.к. репозиторий в GitHub является репозиторием пакетов для vcpkg, он постоянно меняется. Вариант в лоб: сделать враппер, который за пользователя перед запуском vcpkg будет его обновлять и складывать в VCPKG_ROOT. Если это не нравится пользователю, сделать переменную в /etc/sysconfig или любом другом месте в HOME, чтобы отключать такое поведение (кто-то может использовать форк при разработке или иметь зафиксированный по дате репозиторий). Хорошо бы если vcpkg сам до этого догадывался, но это уже FR для апстрима, который они могут отклонить по тысяче других вполне разумных причин. Приведенные выше команды - не инструкции по установке вручную, а перевод README, который идет с пакетом в Fedora, т.к. там тоже нашли причины, почему они не могут включить этот репозиторий вместе с пакетом и предлагают пользователю его склонировать вручную. Но тут даже и этого README нет, хоть его и не каждый простой пользователь смог бы найти.
Стенды, на которых воспроизводится ошибка: kworkstation-11.1.1-x86-64 обновленный до sisyphus education-11.0-x86-64-kde обновленный до sisyphus education-11.0-x86-64-xfce обновленный до sisyphus workstation-11.1-x86-64 обновленный до sisyphus server-11.0-x86-64-minimal обновленный до sisyphus
vcpkg-2026.09.26-alt2 -> sisyphus: Tue Oct 13 2026 Vitaly Lipatov <lav@altlinux.ru> 2026.09.26-alt2 - add vcpkg wrapper: default VCPKG_ROOT, clone the registry on first use (closes: #54865) - add "vcpkg update-registry" command - add README.ALT