Difference between revisions of "Cpio"
(I moved the package description to the top.) |
(I reformatted the "Contents" section to to use tables.) |
||
Line 1: | Line 1: | ||
{| style="text-align: left; background-color: AliceBlue;" | {| style="text-align: left; background-color: AliceBlue;" | ||
− | |- | + | |-valign="top" |
!Download Source: | !Download Source: | ||
| ftp://ftp.gnu.org/pub/gnu/cpio/cpio-2.6.tar.bz2 | | ftp://ftp.gnu.org/pub/gnu/cpio/cpio-2.6.tar.bz2 | ||
− | |- | + | |-valign="top" |
!Download Patch: | !Download Patch: | ||
| http://www.linuxfromscratch.org/patches/blfs/svn/cpio-2.6-security_fixes-1.patch | | http://www.linuxfromscratch.org/patches/blfs/svn/cpio-2.6-security_fixes-1.patch | ||
Line 32: | Line 32: | ||
make install | make install | ||
+ | |||
+ | === Command Explanations === | ||
+ | |||
+ | '''sed -i "s/invalid_arg/argmatch_invalid/" src/mt.c''': This fixes a problem with the build of '''mt'''. | ||
+ | |||
+ | ''CPIO_MT_PROG=mt'': This causes '''mt''' to be included in the build. | ||
+ | |||
+ | ''--bindir=/bin'': This makes it so that cpio is put in /bin instead of /usr/bin. This is done to match the [http://www.pathname.com/fhs/ FHS]. | ||
+ | |||
+ | ''--libexecdir=/tmp'': This prevents the creation of /usr/libexec. | ||
+ | |||
+ | --with-rmt=/usr/sbin/rmt: This parameter prevents '''rmt''' from being built. It was already installed with the Tar package. | ||
+ | |||
+ | '''echo "#define HAVE_SETLOCALE 1" >> config.h''': This command specifies that the system Libc implements the setlocale function because it is not detected by '''configure'''. | ||
+ | |||
+ | '''echo "#define HAVE_LSTAT 1" >> config.h''': This fixes a bug that causes cpio to convert symlinks into regular files during archive creation. | ||
== Multilib == | == Multilib == | ||
Line 83: | Line 99: | ||
make install | make install | ||
− | = | + | = Contents = |
− | Installed Programs: cpio and mt | + | {| style="text-align: left;" |
− | + | |-valign="top" | |
− | Installed Libraries: None | + | ! Installed Programs: |
− | + | | cpio and mt | |
− | Installed Directories: None | + | |-valign="top" |
+ | ! Installed Libraries: | ||
+ | | None | ||
+ | |-valign="top" | ||
+ | ! Installed Directories: | ||
+ | | None | ||
+ | |} | ||
=== Short Descriptions === | === Short Descriptions === | ||
− | cpio | + | {| style="text-align: left;" |
− | + | |-valign="top" | |
− | mt | + | ! cpio |
+ | | copies files to and from archives. | ||
+ | |-valign="top" | ||
+ | ! mt | ||
+ | | controls magnetic tape drive operations. | ||
+ | |} |
Revision as of 07:49, 17 December 2006
Download Source: | ftp://ftp.gnu.org/pub/gnu/cpio/cpio-2.6.tar.bz2 |
---|---|
Download Patch: | http://www.linuxfromscratch.org/patches/blfs/svn/cpio-2.6-security_fixes-1.patch |
Contents
Introduction to Cpio
The cpio package contains tools for archiving.
Dependencies
Non-Multilib
Compile the package:
sed -i "s/invalid_arg/argmatch_invalid/" src/mt.c && patch -Np1 -i ../cpio-2.6-security_fixes-1.patch && ./configure CPIO_MT_PROG=mt --prefix=/usr \ --bindir=/bin --libexecdir=/tmp \ --with-rmt=/usr/sbin/rmt && echo "#define HAVE_SETLOCALE 1" >> config.h && echo "#define HAVE_LSTAT 1" >> config.h && make
Install the package
make install
Command Explanations
sed -i "s/invalid_arg/argmatch_invalid/" src/mt.c: This fixes a problem with the build of mt.
CPIO_MT_PROG=mt: This causes mt to be included in the build.
--bindir=/bin: This makes it so that cpio is put in /bin instead of /usr/bin. This is done to match the FHS.
--libexecdir=/tmp: This prevents the creation of /usr/libexec.
--with-rmt=/usr/sbin/rmt: This parameter prevents rmt from being built. It was already installed with the Tar package.
echo "#define HAVE_SETLOCALE 1" >> config.h: This command specifies that the system Libc implements the setlocale function because it is not detected by configure.
echo "#define HAVE_LSTAT 1" >> config.h: This fixes a bug that causes cpio to convert symlinks into regular files during archive creation.
Multilib
This package does not provide any libraries so only one installation is needed.
32Bit
sed -i "s/invalid_arg/argmatch_invalid/" src/mt.c && patch -Np1 -i ../cpio-2.6-security_fixes-1.patch && CC="gcc ${BUILD32}" ./configure CPIO_MT_PROG=mt --prefix=/usr \ --bindir=/bin --libexecdir=/tmp \ --with-rmt=/usr/sbin/rmt && echo "#define HAVE_SETLOCALE 1" >> config.h && echo "#define HAVE_LSTAT 1" >> config.h && make
Install the package:
make install
N32
sed -i "s/invalid_arg/argmatch_invalid/" src/mt.c && patch -Np1 -i ../cpio-2.6-security_fixes-1.patch && CC="gcc ${BUILDN32}" ./configure CPIO_MT_PROG=mt --prefix=/usr --libdir=/usr/lib32 \ --bindir=/bin --libexecdir=/tmp \ --with-rmt=/usr/sbin/rmt && echo "#define HAVE_SETLOCALE 1" >> config.h && echo "#define HAVE_LSTAT 1" >> config.h && make
Install the package:
make install
64Bit
Compile the package:
sed -i "s/invalid_arg/argmatch_invalid/" src/mt.c && patch -Np1 -i ../cpio-2.6-security_fixes-1.patch && CC="gcc ${BUILD64}" ./configure CPIO_MT_PROG=mt --prefix=/usr --libdir=/usr/lib64 \ --bindir=/bin --libexecdir=/tmp \ --with-rmt=/usr/sbin/rmt && echo "#define HAVE_SETLOCALE 1" >> config.h && echo "#define HAVE_LSTAT 1" >> config.h && make
Install the package:
make install
Contents
Installed Programs: | cpio and mt |
---|---|
Installed Libraries: | None |
Installed Directories: | None |
Short Descriptions
cpio | copies files to and from archives. |
---|---|
mt | controls magnetic tape drive operations. |