rpm & rpmbuild - использование глобальной переменной среды в разделе% files
Я боролся некоторое время с этим. Поэтому я написал файл .specs для своего проекта, и все прошло нормально. Rpm построен, установка проходит гладко ... но потом у меня возникли некоторые проблемы, потому что теперь мне нужно использовать настраиваемую глобальную переменную среды, чтобы задать путь установки.
Это даст раздел% files как таковой:
%files
%defattr(-,root,root)
$INSTALLPATH/Crystal/bin/Crystal.jar
Где Crystal - это имя моего проекта, а INSTALLPATH определяется в env благодаря командной строке экспорта. Затем при запуске buildrpm -ba Crystal.specs у меня появляется следующая ошибка:
error: File must begin with "/" : $INSTALLPATH/Crystal/bin/Crystal.jar
Я попытался определить макрос внутри файла .rpmmacros как таковой:% _installpath $ INSTALLPATH
И в моем файле спецификаций, когда я делаю echo% {_ installpath}, я получаю значение, которое я установил в .rpmmacros. Но если я использую его в% файлах:
%files
%defattr(-,root,root)
%{_installpath}/Crystal/bin/Crystal.jar
Я снова получаю ту же ошибку!
error: File must begin with "/" : $INSTALLPATH/Crystal/bin/Crystal.jar
Я также попытался определить переменную с помощью файла спецификации, и у меня такой же печальный результат. Похоже, что пока моя переменная / макрос ссылается на $ INSTALL,% files не примет это. Но я должен использовать эту переменную env!
Вот и все, о чем я мог думать. Кто-нибудь понял? Любая помощь будет принята с благодарностью.
Заранее большое спасибо!