Я реализую некоторый код C++, который я хотел бы сделать как можно более переносимым. Я хотел бы избежать зависимости от библиотек, для установки которых требуется root-доступ. Кроме того, я бы предпочел не хранить копии больших библиотек в моем репозитории, а также не выполнять установку библиотек (на уровне пользователя -просто потому, что мне придется устанавливать их вручную на нескольких компьютерах.)
Я хотел бы использовать функциональность normal_distribution
от Boost в своем проекте. Я понимаю, что для типичного способа установки Boost требуется команда типа sudo apt-get
или sudo yum
, но у меня нет root-доступа в системах, где будет выполняться этот код. Чтобы обойти это, мне интересно, могу ли я просто поместить копию Boost normal _Distribution.cpp и normal _Distribution.hpp в свой каталог кода и скомпилировать/связать мой код с этими файлами. Будет ли это работать?
Читатели могут удивиться, почему я просто не использую реализацию normal_distribution
в TR1 или C++11. Ответ заключается в том, что мне нужно поддерживать совместимость с некоторыми кластерами, управляемыми университетом -, которые все еще работают под управлением g++ 4.1.x,который (по крайней мере по моему опыту )не поддерживает
.