C ++ linux在部署环境中安装可执行文件

时间:2016-05-24 10:29:45

标签: c++ linux deployment makefile installer

大家好我需要用make文件或脚本部署linux(centos)c ++项目。通过一个makefile或脚本安装依赖项和项目可执行二进制文件。 我的依赖项应用程序li​​bboost-devel,gcc-g ++和pcre。我的excuteble二进制文件是run_excute

2 个答案:

答案 0 :(得分:0)

要安装依赖项,请使用yum,所以:

sudo yum install libboost-devel
sudo yum group install "Development Tools"
sudo yum install pcre-devel

要构建应用程序,请转到包含makefile的目录并执行:

make
sudo make install

最后运行应用程序

./run_excute

或者如果你的幸运

run_excute

会奏效。

答案 1 :(得分:0)

Yip sure - 将以下命令放入文件中。在文件的顶部添加:

#!/bin/bash

保存文件 - 假设您将其命名为install;在命令行上输入:

chmod +x ./install

然后构建并安装您的程序类型:

sudo ./install

或者,如果您有一些时间在手上:     http://www.rpm.org/max-rpm/ch-rpm-build.html

作为示例,fedora的基本rpm构建过程是:

步骤1:设置机器进行包装:

dnf install @development-tools fedora-packager rpmdevtools
rpmdev-setuptree

第2步:source和Makefile 将它们放在〜/ rpmbuild / SOURCES

第3步:创建一个spec文件 在〜/ rpmbuild / SPECS中创建名为myname.spec的文件。它应该包含类似的内容:

Summary:            My program description
Name:               myname
Version:            0.0.0
Release:            0
License:            GPLv2
Group:              Applications/Databases
Source:             https://xyz.tar.gz
URL:                http://myurl
BuildRequires:      libicu-devel
BuildRequires:      pcre-devel

%description
A couple of lines describing the package

%prep
%setup -q

%build
cd %{myname}/source
make %{?_smp_mflags}

%install
%make_install

%files
%{_bindir}/*

%changelog
* Tue Nov 10 2015 Yours Truly <me@somewhere.com> - 0.0.0-0
- Some change comments

步骤4:创建源和二进制rpm

cd ~/rpmbuild/SPECS
rpmbuild -ba myname.spec

步骤5:使用rpm

cd ~/rpmbuild/RPMS/x86_64
rpm -Uvh ./myprogram-version-release.a.whole.lot.of.stuff.rpm