Sto cercando di creare un pacchetto che aggiorna solo i file sul sistema, ma io continuo a ricevere errori quando rpmbuild è correre. L'errore indica che manca un file.problemi rpmbuild su CentOS - stato di uscita Bad da /home/me/rpmbuild/tmp/rpm-tmp.58942
Ho provato questo su CentOS 5 e 6 con gli stessi risultati.
Ho utilizzato rpmdev-setuptree
per impostare il file system, che ha anche impostato il file ~/.rpmmacros
. Ho quindi utilizzato rpmdev-newspec
per inizializzare il file spec.
Sono in esecuzione come utente non root.
Ho il file spec in ~/rpmbuild/SPECS/test.spec
e la mia fonte è: ~/rpmbuild/SOURCES/test-1.tar.gz
. Estrarre questo file crea una directory denominata test-1
con 2 file al suo interno. Ho confermato che venga estratto ~/rpmbuild/BUILD/test-1
quando cerco di creare il pacchetto.
corro: rpmbuild -ba ~/rpmbuild/SPECS/test.spec
Allora ottengo questo errore:
- ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --target=x86_64-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info /home/me/rpmbuild/tmp/rpm-tmp.58942: line 37: ./configure: No such file or directory error: Bad exit status from /home/me/rpmbuild/tmp/rpm-tmp.58942 (%build)
RPM build errors: Bad exit status from /home/me/rpmbuild/tmp/rpm-tmp.58942 (%build)
Ecco il mio file spec:
Name: test
Version: 1
Release: 1%{?dist}
Summary: Test
Group: Test
License: GPL
URL: http://example.com
Source0: test-1.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#BuildRequires:
#Requires:
%description
This is a test to push files.
%prep
%setup -q
%build
#%configure
#make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
#make install DESTDIR=$RPM_BUILD_ROOT
install -m 0755 -d $RPM_BUILD_ROOT/opt/test
%clean
rm -rf $RPM_BUILD_ROOT
%files
%dir /opt/test
%defattr(-,root,root,-)
%doc
Tutte le idee su quello che potrebbe essere sbagliato?
non potevo' t capire come eseguire l'override del macro per impedire che l'esecuzione di './configure', ma ho messo un file di configurazione vuoto nella radice della fonte e mi ha permesso di completare la costruzione. Grazie per avermi messo sulla strada giusta. – Coder1
Scusa - avrei dovuto guardare più vicino! Una ben nota "caratteristica" PITA di RPM è che non puoi commentare una macro come hai fatto sopra. Devi mettere '# %% configure' o solo commentare la * prima riga * della macro! (Il primo ''% sfugge il secondo.) –
Confermato posso costruire il numero di giri senza il file di configurazione ora con l'ulteriore ''% nel commento, oppure rimuovendo completamente quella linea. Stavo pensando che il mio commento funzionasse efficacemente. Grazie! – Coder1