Есть ли эквивалент python virtualenv для C/С++-программ?

Мне нужно разрабатывать программы на С++, которые должны запускаться в Scientific Linux 5 или 6. Я хотел бы разработать с QtCreator на Ubuntu, который имеет гораздо более свежие библиотеки, чем тот, который найден на SCL6.

Существует ли эквивалент Python virtualenv для C/С++-программ?

Использование chroot со всеми необходимыми библиотеками и зависимостями может выполнить эту работу. Это существует? См. http://rcrowley.org/articles/dependencies.html об использовании chroot.

Ответ 1

Используйте debootstrap для создания chroot-среды (или даже установите ubuntu на отдельный раздел). Установите свой домашний каталог с помощью mount -o bind. Используйте удобную настройку chroot для schroot.

http://manpages.ubuntu.com/manpages/precise/en/man8/debootstrap.8.html

http://manpages.ubuntu.com/manpages/precise/en/man8/mount.8.html

http://manpages.ubuntu.com/manpages/precise/en/man1/schroot.1.html

Ответ 2

Не уверен, что он достаточно легкий для того, что вам нужно (я не очень хорошо знаком с virtualenv), но вы можете попробовать CDE Project, который это очень хороший способ создания виртуальной песочницы со всеми видами зависимостей.

Ответ 3

Вы можете установить зависимости и компилятор для данного проекта, используя систему сборки, такую как bazel (https://bazel.build/) или, пожалуйста, (https://please.build/).

Он никогда не будет таким же точным, как virtualenv, из-за разной природы языка, и поскольку он все еще будет использовать системный компилятор. Если вы хотите полностью изолировать свой проект, вы можете отправить его в докер-контейнер.

Ответ 4

Я согласен с SeF, используя зависимости. Для меня IDE помогла установить другую среду разработки.

Относительно IDE для разных ОС: