|
楼主 |
发表于 2009-6-20 12:12:21
|
显示全部楼层
我是用自己写的脚本来安装的
[color="Red"]脚本pkgconfig.install供XORG7.4_Install脚本调用,其内容如下:
#!/bin/bash
unset PACKAGE_FULLPATH
unset PACKAGE_CONFIG
unset PACKAGE_EXT
unset BUILD_DIR
unset SOURCE_DIR
unset UNZIP_RESULT
# Have three Argument?
if [ $# -lt 2 -o $# -gt 3 ] ; then
echo "Useage: $0 <ackage full path> <ackage configure string> <Build dirctory full path>"
exit 1
read
fi
PACKAGE_FULLPATH=$1
PACKAGE_CONFIG=$2
BUILD_DIR=$3
cd $BUILD_DIR
# Spilt the extend name.
PACKAGE_EXT=$(echo $PACKAGE_FULLPATH | sed 's/[^$]*\.//')
# Spilt the package name and version as build directory.
case $PACKAGE_EXT in
bz2)
SOURCE_DIR=$(echo $PACKAGE_FULLPATH | sed 's/[^$]*\///' | sed 's/\.tar\.bz2//')
;;
gz)
SOURCE_DIR=$(echo $PACKAGE_FULLPATH | sed 's/[^$]*\///' | sed 's/\.tar\.gz//')
;;
tar)
SOURCE_DIR=$(echo $PACKAGE_FULLPATH | sed 's/[^$]*\///' | sed 's/\.tar//'| sed 's/\.tar//')
;;
esac
UNZIP_RESULT=1
# Is the package full path set?
if ! test $PACKAGE_FULLPATH ; then
echo "ACKAGE full path undefined!"
exit 1
fi
# Is the package exist?
if [ ! -r $PACKAGE_FULLPATH ] ; then
echo "ackage $PACKAGE_FULLPATH not Exist!"
exit 1
fi
case $PACKAGE_EXT in
bz2)
bunzip2 < $PACKAGE_FULLPATH | tar -xv
UNZIP_RESULT=$?
;;
gz)
gunzip < $PACKAGE_FULLPATH | tar -xv
UNZIP_RESULT=$?
;;
tar)
tar -xvf $PACKAGE_FULLPATH
;;
esac
#Is unzip successful?
if [ $UNZIP_RESULT -ne 0 ] ; then
echo "Unzip package failure!"
exit 1
fi
#Is the sources code dirctory exist?
if [ ! -d $SOURCE_DIR ] ; then
echo "$SOURCE_DIR not Exist"
exit 1
fi
# Come to the sources code dirctory to build the package.
cd $SOURCE_DIR
./configure $PACKAGE_CONFIG && make && make install
if [ $? -ne 0 ] ; then
echo "Build $SOURCE_DIR error!"
exit 1
fi
cd ..
rm -rf $SOURCE_DIR
echo "Build $PACKAGE_FULLPATH successful!"
[color="red"]XORG7.4_Install脚本的内容如下:
#!/bin/bash
unset PACKTOOLS
export XORG_PKG_TREE="/usr/src/Xorg7.4"
export XORG_PREFIX="/usr/X11R7"
export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc --mandir=$XORG_PREFIX/share/man --localstatedir=/var"
install -v -m755 -d /etc/X11/{app-defaults,fs,twm,xdm,xinit,xkb,xsm} &&
install -v -m755 -d $XORG_PREFIX/lib/X11 &&
for link in /etc/X11/{app-defaults,fs,twm,xdm,xinit,xkb,xsm}
do
ln -sv $link $XORG_PREFIX/lib/X11
done
BUILD_DIR="$XORG_PKG_TREE/xc"
PACKTOOLS="$XORG_PKG_TREE/xc/pkgconfig.install"
# Install pkg-config-0.23
$PACKTOOLS "$XORG_PKG_TREE/pkg-config-0.23.tar.gz" "--prefix=/usr" $BUILD_DIR
if [ $? -ne 0 ] ; then
exit 1
fi
export PKG_CONFIG="/usr/bin/pkg-config"
export PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/X11R7/lib/pkgconfig"
# Install Python2.5
$PACKTOOLS "$XORG_PKG_TREE/Python-2.5.tar.bz2" "--prefix=/usr" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "ython-2.5 Install Error"
exit 1
fi
# Install libxml2-2.7.3
$PACKTOOLS "$XORG_PKG_TREE/libxml2-2.7.3.tar.gz" "--prefix=/usr" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "libxml2-2.7.3 Install Error"
exit 1
fi
# Install libxslt
$PACKTOOLS "$XORG_PKG_TREE/libxslt-1.1.24.tar.gz" "--prefix=/usr" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "libxslt-1.1.24 Install Error"
exit 1
fi
# Install libpthread-stubs
$PACKTOOLS "$XORG_PKG_TREE/libpthread-stubs-0.1.tar.bz2" "--prefix=/usr" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "libpthread-stubs-0.1 Install Error"
exit 1
fi
# Install ed-1.2
$PACKTOOLS "$XORG_PKG_TREE/ed-1.2.tar.bz2" "--prefix=/usr" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "ed-1.2 Install Error"
exit 1
fi
# Install Xorg7.4
# Install proto sub dirctory
for package in $XORG_PKG_TREE/proto/*
do
$PACKTOOLS $package "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "$package Install Error"
exit 1
fi
done
# Install util sub dirctory
for package in $XORG_PKG_TREE/util/*
do
$PACKTOOLS $package "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "$package Install Error"
exit 1
fi
done
# Install libXau-1.0.4、libXdmcp-1.0.2
for package in $XORG_PKG_TREE/lib/libXau-1.0.4.tar.bz2 $XORG_PKG_TREE/lib/libXdmcp-1.0.2.tar.bz2
do
$PACKTOOLS $package "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "$package Install Error"
exit 1
fi
done
# Install xcb-proto-1.4
$PACKTOOLS $XORG_PKG_TREE/xcb-proto-1.4.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "xcb-proto-1.4 Install Error"
exit 1
fi
install -dv -m755 ${XORG_PREFIX}/share/doc/xcb-proto-1.4
install -v -m644 doc/* ${XORG_PREFIX}/share/doc/xcb-proto-1.4
# Install libxcb-1.2
PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/X11R7/lib/pkgconfig"
$PACKTOOLS $XORG_PKG_TREE/libxcb-1.2.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "libxcb-1.2 Install Error"
exit 1
fi
echo "export LIBXCB_ALLOW_SLOPPY_LOCK=1" >> /etc/profile
# Install Xorg Libraries
for package in $XORG_PKG_TREE/lib/xtrans-1.2.1.tar.bz2 $XORG_PKG_TREE/lib/libX11-1.1.5.tar.bz2 \
$XORG_PKG_TREE/lib/libXext-1.0.4.tar.bz2 $XORG_PKG_TREE/lib/libICE-1.0.4.tar.bz2 \
$XORG_PKG_TREE/lib/libSM-1.1.0.tar.bz2 $XORG_PKG_TREE/lib/libXt-1.0.5.tar.bz2 \
$XORG_PKG_TREE/lib/libXmu-1.0.4.tar.bz2 $XORG_PKG_TREE/lib/libXpm-3.5.7.tar.bz2 \
$XORG_PKG_TREE/lib/libXp-1.0.0.tar.bz2 $XORG_PKG_TREE/lib/libXfixes-4.0.3.tar.bz2 \
$XORG_PKG_TREE/lib/libXrender-0.9.4.tar.bz2 $XORG_PKG_TREE/lib/libfontenc-1.0.4.tar.bz2 \
$XORG_PKG_TREE/lib/libxkbfile-1.0.5.tar.bz2 $XORG_PKG_TREE/lib/libXprintUtil-1.0.1.tar.bz2 \
$XORG_PKG_TREE/lib/libXv-1.0.4.tar.bz2 $XORG_PKG_TREE/lib/libAppleWM-1.0.0.tar.bz2 \
$XORG_PKG_TREE/lib/libdmx-1.0.2.tar.bz2 $XORG_PKG_TREE/lib/libFS-1.0.1.tar.bz2 \
$XORG_PKG_TREE/lib/liboldX-1.0.1.tar.bz2 $XORG_PKG_TREE/lib/libWindowsWM-1.0.0.tar.bz2 \
$XORG_PKG_TREE/lib/libXaw-1.0.4.tar.bz2 $XORG_PKG_TREE/lib/libXcomposite-0.4.0.tar.bz2 \
$XORG_PKG_TREE/lib/libXcursor-1.1.9.tar.bz2 $XORG_PKG_TREE/lib/libXdamage-1.1.1.tar.bz2 \
$XORG_PKG_TREE/lib/libXevie-1.0.2.tar.bz2 $XORG_PKG_TREE/lib/libXfont-1.3.3.tar.bz2 \
$XORG_PKG_TREE/lib/libXfontcache-1.0.4.tar.bz2 $XORG_PKG_TREE/lib/libXft-2.1.13.tar.bz2 \
$XORG_PKG_TREE/lib/libXi-1.1.3.tar.bz2 $XORG_PKG_TREE/lib/libXinerama-1.0.3.tar.bz2 \
$XORG_PKG_TREE/lib/libxkbui-1.0.2.tar.bz2 $XORG_PKG_TREE/lib/libXprintAppUtil-1.0.1.tar.bz2 \
$XORG_PKG_TREE/lib/libXrandr-1.2.3.tar.bz2 $XORG_PKG_TREE/lib/libXres-1.0.3.tar.bz2 \
$XORG_PKG_TREE/lib/libXScrnSaver-1.1.3.tar.bz2 $XORG_PKG_TREE/lib/libXTrap-1.0.0.tar.bz2 \
$XORG_PKG_TREE/lib/libXtst-1.0.3.tar.bz2 $XORG_PKG_TREE/lib/libXvMC-1.0.4.tar.bz2 \
$XORG_PKG_TREE/lib/libXxf86dga-1.0.2.tar.bz2 $XORG_PKG_TREE/lib/libXxf86misc-1.0.1.tar.bz2 \
$XORG_PKG_TREE/lib/libXxf86vm-1.0.2.tar.bz2
do
$PACKTOOLS $package "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "$package Install Error"
exit 1
fi
ldconfig
done
ln -sv $XORG_PREFIX/lib/X11 /usr/lib/X11 &&
ln -sv $XORG_PREFIX/include/X11 /usr/include/X11
# Install Xbitmaps-1.0.1
$PACKTOOLS $XORG_PKG_TREE/data/Xbitmaps-1.0.1.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "Xbitmaps-1.0.1 Install Error"
exit 1
fi
ldconfig
# Install MesaLib-7.4.1
bunzip2 < $XORG_PKG_TREE/MesaLib-7.4.1.tar.bz2 | tar -xv &&
cd MesaLib-7.4.1 &&
make linux-dri-x86 OPT_FLAGS="-O2 -fno-strict-aliasing" \
DRI_DRIVER_INSTALL_DIR=${XORG_PREFIX}/lib/X11/modules/dri \
X11_INCLUDES=-I${XORG_PREFIX}/include \
EXTRA_LIB_PATH=-L${XORG_PREFIX}/lib &&
make install INSTALL_DIR=${XORG_PREFIX} \
DRI_DRIVER_INSTALL_DIR=${XORG_PREFIX}/lib/X11/modules/dri &&
install -dv ${XORG_PREFIX}/share/doc/MesaLib-6.5.2 &&
install -v -m644 docs/* ${XORG_PREFIX}/share/doc/MesaLib-6.5.2 &&
ln -s -v ${XORG_PREFIX}/include/GL /usr/include &&
cd .. &&
rm -rf MesaLib-7.4.1
if [ $? -ne 0 ] ; then
echo "MesaLib-7.4.1 Install Error"
exit 1
fi
ldconfig
# Install Xorg Applications
for package in $XORG_PKG_TREE/app/*
do
$PACKTOOLS $package "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "$package Install Error"
exit 1
fi
done
export PATH=$PATH:/usr/X11R6/bin
echo "export PATH=$PATH:/usr/X11R6/bin" >> /etc/profile
# Install xcursor-themes-1.0.1
$PACKTOOLS $XORG_PKG_TREE/data/xcursor-themes-1.0.1.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "xcursor-themes-1.0.1 Install Error"
exit 1
fi
# Install Xorg Fonts
$PACKTOOLS $XORG_PKG_TREE/data/encodings-1.0.2.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "encodings-1.0.2 Install Error"
exit 1
fi
# Install font-cursor-misc-1.0.1
$PACKTOOLS $XORG_PKG_TREE/data/font-cursor-misc-1.0.0.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "font-cursor-misc-1.0.0 Install Error"
exit 1
fi
# Install font-misc-misc-1.0.0
$PACKTOOLS $XORG_PKG_TREE/data/font-misc-misc-1.0.0.tar.bz2 "$XORG_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "font-misc-misc-1.0.0 Install Error"
exit 1
fi
install -v -d -m755 /usr/share/fonts
ln -svn $XORG_PREFIX/lib/X11/fonts/OTF /usr/share/fonts/X11-OTF
ln -svn $XORG_PREFIX/lib/X11/fonts/TTF /usr/share/fonts/X11-TTF
mkdir /usr/X11R7/lib/X11/fonts/{O,T}TF
# Install Parser-2.34
bunzip2 < $XORG_PKG_TREE/Parser-2.34.tar.bz2 | tar -xv
cd Parser-2.34 &&
perl Makefile.PL &&
make &&
make install&&
cd .. &&
rm -rf Parser-2.34
# Install XKeyboardConfig-1.4
$PACKTOOLS $XORG_PKG_TREE/XkeyboardConfig-1.4.tar.bz2 "$XORG_CONFIG --with-xkb-rules-symlink=xorg" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "XkeyboardConfig-1.4 Install Error"
exit 1
fi
install -dv -m755 $XORG_PREFIX/share/doc/xkeyboard-config-1.2
install -v -m644 docs/{README,HOWTO}* \
$XORG_PREFIX/share/doc/xkeyboard-config-1.2
# Install Luit-1.0.2
LUIT_CONFIG="$XORG_CONFIG --with-localealiasfile=$XORG_PREFIX/share/X11/locale/locale.alias"
$PACKTOOLS $XORG_PKG_TREE/Luit-1.0.2.tar.bz2 "$LUIT_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "Luit-1.0.2 Install Error"
exit 1
fi
unset LUIT_CONFIG
# Install Xorg-Server-1.5.3
XORG_SERVER_CONFIG="./configure $XORG_CONFIG --with-mesa-source=</absolute/path/to>/Mesa-6.5.2"
XORG_SERVER_CONFIG="$XORG_SERVER_CONFIG --with-module-dir=$XORG_PREFIX/lib/X11/modules"
XORG_SERVER_CONFIG="$XORG_SERVER_CONFIG --with-dri-driver-path=$XORG_PREFIX/lib/X11/modules/dri"
XORG_SERVER_CONFIG="$XORG_SERVER_CONFIG --with-xkb-output=/var/lib/xkb --enable-install-setuid"
$PACKTOOLS $XORG_PKG_TREE/Xorg-Server-1.5.3.tar.bz2 "$XORG_SERVER_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "Xorg-Server-1.5.3 Install Error"
exit 1
fi
# Install Xorg Drivers
XORG_DRIVERS_CONFIG="$XORG_CONFIG --with-xorg-module-dir=$XORG_PREFIX/lib/X11/modules"
$PACKTOOLS "$XORG_PKG_TREE/xxx.tar.bz2" "$XORG_DRIVERS_CONFIG" $BUILD_DIR
if [ $? -ne 0 ] ; then
echo "Xorg Drivers Install Error"
exit 1
fi |
|