Создать RPM-пакет с исполняемыми библиотеками и исполняемым файлом - PullRequest
1 голос
/ 26 сентября 2011

Я создал приложение C ++ в среде Redhat Linux.Помимо этого приложения, я также создал много библиотек * .so, необходимых для приложения.Созданное приложение использует некоторые библиотеки Boost C ++, например -lboost_system, -lboost_thread и т. Д.

Я хочу развернуть это приложение и его необходимые библиотеки времени выполнения на рабочей машине, не подвергая / перекомпилируя исходные коды и не имея Boost C ++полная установка на серийный станок.Возможно ли это?

Структура каталогов приложений в машине разработки выглядит следующим образом:

~/SysA/debug/main/main     (executable binary file)
~/SysA/debug/main/config   (configuration text file)
~/SysA/debug/lib1/libA.so
~/SysA/debug/lib2/libB.so
~/SysA/debug/lib3/libC.so
   :
   :

Я попытался сделать мой первый следующий файл SPEC RPM следующим образом, но застрял:

Name: SYSTEM
Version: 0.1
Release: 1.0
BuildRoot: %{_topdir}BUILD/%{name}-%{version}-%{release}

AutoReqProv: no

%description
System testing

%prep
rm -rf $RPM_BUILD_ROOT

%clean
rm -rf %RPM_BUILD_ROOT

%files
%defattr(644, root, root)
%changelog

Жаль, что кто-то может мне помочь ...

1 Ответ

0 голосов
/ 07 декабря 2011

Вам следует либо создать второй RPM для библиотек Boost (для установки вместе с RPM), либо статически связать библиотеки Boost с вашим приложением.

...