[[Category:SBR600 Labs]]= Purpose = To create an RPM package. = Resources =* [[:category:RPM|Wiki pages on RPM]]* [[:fedora:PackageMaintainers|Fedora Package Maintainers page]]* [[:fedora:Packaging:ScriptletSnippets|Scriptlet Snippets]] - recipes for common scriptlets in spec files** [[:fedora:PackageMaintainers/CreatingPackageHowTo|Packaging How-To]]* ''Fedora Linux'' chapter 5 (see Seneca Library website > eBooks > View All > Safari > Fedora Linux). = Preparation = # Install the required packages:#* <code>yum groupinstall "Fedora Packager"</code>#* <code>yum install rpmlint yum-utils</code># Create the ~/rpmbuild directories and the ~/.rpmmacros file by running this command: <code>rpmdev-setuptree</code> = Steps = For each of the two packages you REDIRECT [[SBR600 Build-from-Source Lab|previously built from source]]:# Put the package source code (tarball) in <code>~DPI908/rpmbuild/SOURCES</code># Change to the SPECS directory: <code>cd ~/rpmbuild/SPECS</code># Create an empty skeleton spec file: <code>rpmdevSBR600_RPM-newspec ''nameOfPackage''</code># Edit the specfile. Fill in the metadata and all of the required sections.# Attempt to build your package: <code>rpmbuild -ba ''nameOfPackage''.spec</code># If there are errors, edit the specfile and try building again. Repeat until the build is successful.# When the build is successful, the binary RPMs will be placed in <code>~/rpmbuild/RPMS</code> and the source RPM will be placed in <code>~/rpmbuild/SRPMS/</code> You should also test your build:# Run the ''rpmlint'' command once for each of these files, giving the filename as the positional argument:#* the spec file#* the SRPM#* each binary RPM# Note any errors or warnings# Attempt to address each of the errors or warnings. Adding <code>-i</code> to the ''rpmlint'' command line will provide informative messages about the cause of each error; the [[:fedora:Common_Rpmlint_issues|Common Rpmlint issuesWriting_Lab]] page may also be a useful resource.#* If you cannot address each of the errors and warnings, refer to the [[:fedora:Main_Page|Fedora wiki]] or use IRC and/or email to ask a Fedora packager, classmate, or your professor for assistance. = Deliverables = Write a blog post about your experience building these packages. Include notes about what worked and didn't work, and include a link to the spec files, SRPMs, and RPMs.