我在redhat linux环境下创建了一个C ++应用程序。除了这个应用程序,我还创建了应用程序所需的许多* .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
:
:
我试图按照以下方式制作我的第一个关注RPM SPEC文件,但仍然坚持:
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
希望有人可以帮助我...
答案 0 :(得分:0)
您应该为Boost库创建第二个RPM(与RPM一起安装),或者将Boost库静态链接到您的应用程序中。