Hallo, ich muss jedes Linux C++ Projekt mit Make-Datei oder Skript bereitstellen. Durch eine Makefile- oder Skript-Installationsabhängigkeit und ausführbare Programm-Binärdatei. Meine Abhängigkeitsanwendungen libboost-devel, gcc-g ++ und pcre. meine excuteble Binärdatei ist run_excuteC++ linux install ausführbare Datei auf der Bereitstellungsumgebung
Antwort
Yip sicher - legen Sie die folgenden Befehle in eine Datei. Am Anfang der Datei:
#!/bin/bash
Speichern Sie die Datei - sagen wir, Sie nennen es installieren; auf der Kommandozeile Typ:
chmod +x ./install
Dann wird Ihr Programmtyp zu bauen und zu installieren:
sudo ./install
Alternativ, wenn Sie einige Zeit auf Ihren Händen haben: http://www.rpm.org/max-rpm/ch-rpm-build.html
Als Beispiel ist der grundlegende RPM-Build-Prozess für Fedora:
Schritt 1: Richten Sie Ihre Maschine Verpackung zu tun:
dnf install @development-tools fedora-packager rpmdevtools
rpmdev-setuptree
Schritt 2: Quelle und Makefile Platz diese in ~/rpmbuild/QUELLEN
Schritt 3: Erstellen Sie eine spec-Datei In ~/rpmbuild/SPECS erstellt die Datei namens 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 <[email protected]> - 0.0.0-0
- Some change comments
Schritt 4: Erstellen Sie die Quell- und binärer rpm
cd ~/rpmbuild/SPECS
rpmbuild -ba myname.spec
Schritt 5: Mit 'rpm
cd ~/rpmbuild/RPMS/x86_64
rpm -Uvh ./myprogram-version-release.a.whole.lot.of.stuff.rpm
@ Myk Vielen Dank für Ihre Antwort Gebäude RPM ist gut Punkt können Sie mich mit einfachen Beispiel erstellen rpm zu meinem C++ Projekt zeigen.bitte zeigen Sie mich mit einem einfachen Beispiel –
@ Myk Wenn ich diesen Schritt befolge ist es eine Installation für mein C++ Projekt zu erstellen? –
Ja: Mit diesen Schritten können Sie am Ende des Dateinamens eine Datei mit einer .rpm-Datei erstellen, die wie eine Windows-Datei install.exe aussieht, die .rpm-Dateien jedoch für RHEL- und Fedora-Linux-Distributionen. Sie könnten also nur die .rpm-Datei verteilen. Um das Programm zu entpacken (installieren), würden Sie den Befehl rpm -Uvh verwenden. Sie müssen das Programm bei der Installation nicht kompilieren, da die .rpm-Datei Ihr bereits kompiliertes Programm enthält. – myk
die Abhängigkeiten verwenden yum, so zu installieren:
sudo yum install libboost-devel
sudo yum group install "Development Tools"
sudo yum install pcre-devel
die Anwendung zu erstellen, mit der Make-Datei in es in das Verzeichnis verschieben und zu tun:
make
sudo make install
Schließlich, um die Anwendung auszuführen
./run_excute
oder wenn Ihr Glück
run_excute
wird funktionieren.
Danke für Ihre Antwort das ist nicht meine Frage kann ich Installer für mein C++ Projekt mit Binärdatei run_excute –
so, was ist Ihre Frage Es sollte etwas ähnliches enthalten? –
@Karsten Koop Beispiel oder Beispiel von Makefile oder Skript auf Linux-Maschine mein Projekt bereitstellen. –
@Karsten Koop Installieren Sie einfach meine Projekt-Binärdatei run_excute mit Make-Datei oder Skript. Darf ich das machen? –