1

redhatLinux環境で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
   :
   :

次のRPMSPECファイルを次のように作成しようとしましたが、スタックしました。

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

誰かが私を助けてくれることを願っています...

4

1 に答える 1

0

Boost ライブラリ用の 2 番目の RPM を作成する (RPM と一緒にインストールする) か、Boost ライブラリをアプリケーションに静的にリンクする必要があります。

于 2011-12-06T22:38:05.003 に答える