{"id":95,"date":"2005-02-26T17:27:52","date_gmt":"2005-02-26T15:27:52","guid":{"rendered":"http:\/\/blogs.bl0rg.net\/netzstaub\/?p=95"},"modified":"2005-02-26T17:27:52","modified_gmt":"2005-02-26T15:27:52","slug":"fedora-core-packaging","status":"publish","type":"post","link":"https:\/\/blogs.bl0rg.net\/netzstaub\/2005\/02\/26\/fedora-core-packaging\/","title":{"rendered":"Fedora Core Packaging"},"content":{"rendered":"<p>Ein weiteres Posting in der Antifrustkategorie, diesmal ueber das Bauen von Packages fuer Fedora Core. Damit das Deployen von unser Streamersoftware auf planetlab leichter wird, habe ich beschlossen, Fedore Core Packages fuer <a href=\"http:\/\/www.bl0rg.net\/software\/poc\/\">poc<\/a> zu bauen. Als erstes musste ich Subversion auf einem der Planetlab Knoten installieren:<\/p>\n<pre>$ sudo yum install subversion\n<\/pre>\n<p>Dann noch diverse Software, darunter die fedora-rpmdevtools, das ich von Hand runtergeladen habe:<\/p>\n<pre>$ sudo yum install gcc make redhat-rpm-config unzip cpio gcc-c++ flex bison\n$ wget http:\/\/ftp.sun.ac.za\/ftp\/mirrorsites\/fedora\/3\/i386\/RPMS.extras\/fedora-rpmdevtools-0.3.1-1.noarch.rpm\n$ sudo rpm -i fedora-rpmdevtools-0.3.1-1.noarch.rpm \n<\/pre>\n<p>Dann ein paar Seiten lesen, um zu wissen, wie RPM package und Fedora RPM Package ueberhaupt geht:<\/p>\n<ul>\n<li><a href=\"http:\/\/www-106.ibm.com\/developerworks\/library\/l-rpm1\/\">Packaging Software with RPM (Part 1)<\/a><\/li>\n<li><a href=\"http:\/\/www-128.ibm.com\/developerworks\/library\/l-rpm2\/\">Packaging Software with RPM (Part 2)<\/a><\/li>\n<li><a href=\"http:\/\/www-128.ibm.com\/developerworks\/library\/l-rpm3\/\">Packaging Software with RPM (Part 3)<\/a><\/li>\n<li><a href=\"http:\/\/www.fedora.us\/wiki\/PackagingHints\">Fedora Packaging Hints<\/a><\/li>\n<\/ul>\n<p>Der erste Artikel passt nicht so wirklich, den heutzutage verwendet man rpmbuild anstatt rpm. Also, als erstes fedora-buildrpmtree aufrufen, um nicht das ganze als root ausfuehren zu muessen. Dann mit fedora-newrpmspec ein Template spec erzeugen, das wird dann ausgefuellt und sieht dann so aus:<\/p>\n<pre>Name:           poc\nVersion:        0.4.1\nRelease:        1\nSummary:        POC mp3 streamer\n\nGroup:          Development\/Audio\nLicense:        BSD\nURL:            http:\/\/www.bl0rg.net\/software\/poc\nSource0:        http:\/www.bl0rg.net\/software\/poc\/poc-0.4.1.tar.gz\nBuildRoot:      %{_tmppath}\/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)\n\nBuildRequires:  gcc\n\n%description\nLong description of POC\n\n%prep\n%setup -q\n\n%build\nmake %{?_smp_mflags}\n\n%install\nrm -rf $RPM_BUILD_ROOT\nmake install DESTDIR=$RPM_BUILD_ROOT PREFIX=\/usr\n\n%check || :\n\n%clean\nrm -rf $RPM_BUILD_ROOT\n\n\n%post\n\n%files\n%defattr(-,root,root,-)\n%doc README\n%{_bindir}\/*\n%{_mandir}\/man[^3]\/*\n\n%changelog\n* Sat Feb 26 2005 Manuel Odendahl  - 1109434658:0.4.1\n- Initial RPM release.\n<\/pre>\n<p>Anschliessend poc-0.4.1.tar.gz in ~\/rpmbuild\/SOURCES kopieren, und das Paket bauen:<\/p>\n<pre>$ rpmbuild -ba poc.spec\n<\/pre>\n<p>Et voila, das fertige poc-Paket liegt in ~\/rpmbuild\/RPMS\/i386. Schick!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein weiteres Posting in der Antifrustkategorie, diesmal ueber das Bauen von Packages fuer Fedora Core. Damit das Deployen von unser Streamersoftware auf planetlab leichter wird, habe ich beschlossen, Fedore Core Packages fuer poc zu bauen. Als erstes musste ich Subversion &hellip; <a href=\"https:\/\/blogs.bl0rg.net\/netzstaub\/2005\/02\/26\/fedora-core-packaging\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-95","post","type-post","status-publish","format-standard","hentry","category-bastelstaub"],"_links":{"self":[{"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/posts\/95","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/comments?post=95"}],"version-history":[{"count":0,"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/posts\/95\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/media?parent=95"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/categories?post=95"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.bl0rg.net\/netzstaub\/wp-json\/wp\/v2\/tags?post=95"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}