{"id":238,"date":"2016-03-13T06:27:20","date_gmt":"2016-03-13T06:27:20","guid":{"rendered":"http:\/\/emacslisp.com\/?p=238"},"modified":"2016-03-13T06:29:23","modified_gmt":"2016-03-13T06:29:23","slug":"rpm-and-rpm-source-code","status":"publish","type":"post","link":"http:\/\/emacslisp.com\/?p=238","title":{"rendered":"RPM and RPM source code"},"content":{"rendered":"<p>src.rpm contains both patchs and original source code.<br \/>\nrpmbuild and some related rpm command will not be introduced in this article.<br \/>\nsome important file such as <strong>file.spec<\/strong> in rpm configuration will be ignored as well<\/p>\n<p>It only talk about how to uncompress source code and patch source code and build the final binary.<\/p>\n<p>take ftp-0.17-65.fc20.src.rpm for example.<\/p>\n<p>1. uncompress rpm to source code folder<\/p>\n<pre lang=\"bash\" line=\"1\">\r\nrpm2cpio ftp-0.17-65.fc20.src.rpm | cpio -idmv --no-absolute-filenames\r\n<\/pre>\n<p>2. patch patch file <\/p>\n<pre lang=\"bash\" line=\"1\">\r\npatch -p1 < *.patch\r\n<\/pre>\n<p>3. build ftp project using .\/configure && make.<br \/>\n<a href=\"http:\/\/emacslisp.com\/wp-content\/uploads\/2016\/03\/2.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/emacslisp.com\/wp-content\/uploads\/2016\/03\/2.jpg\" alt=\"2\" width=\"825\" height=\"380\" class=\"alignnone size-full wp-image-241\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>src.rpm contains both patchs and original source code. rpmbuild and some related rpm command will not be introduced in this article. some important file such as file.spec in rpm configuration will be ignored as well It only talk about how to uncompress source code and patch source code and build the final binary. take ftp-0.17-65.fc20.src.rpm [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-238","post","type-post","status-publish","format-standard","hentry","category-linux-system"],"_links":{"self":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts\/238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=238"}],"version-history":[{"count":3,"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts\/238\/revisions"}],"predecessor-version":[{"id":243,"href":"http:\/\/emacslisp.com\/index.php?rest_route=\/wp\/v2\/posts\/238\/revisions\/243"}],"wp:attachment":[{"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=238"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/emacslisp.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}