update script

This commit is contained in:
superconvert 2022-10-14 13:15:23 +00:00
parent 94e3e14e13
commit b1356c1b65
4 changed files with 52 additions and 14 deletions

View File

@ -20,6 +20,7 @@ LINUX_SRC_URL=https://mirror.bjtu.edu.cn/kernel/linux/kernel/v5.x/linux-5.8.6.ta
#GLIBC_SRC_URL=https://ftp.gnu.org/gnu/glibc/glibc-2.32.tar.bz2 #GLIBC_SRC_URL=https://ftp.gnu.org/gnu/glibc/glibc-2.32.tar.bz2
GLIBC_SRC_URL=https://mirrors.ustc.edu.cn/gnu/glibc/glibc-2.27.tar.xz GLIBC_SRC_URL=https://mirrors.ustc.edu.cn/gnu/glibc/glibc-2.27.tar.xz
BUSYBOX_SRC_URL=https://busybox.net/downloads/busybox-1.34.1.tar.bz2 BUSYBOX_SRC_URL=https://busybox.net/downloads/busybox-1.34.1.tar.bz2
PCIUTILS_SRC_URL=http://mj.ucw.cz/download/linux/pci/pciutils-3.8.0.tar.gz
#GCC_SRC_URL=https://ftpmirror.gnu.org/gcc/gcc-7.5.0/gcc-7.5.0.tar.xz #GCC_SRC_URL=https://ftpmirror.gnu.org/gcc/gcc-7.5.0/gcc-7.5.0.tar.xz
GCC_SRC_URL=https://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.5.0/gcc-7.5.0.tar.xz GCC_SRC_URL=https://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.5.0/gcc-7.5.0.tar.xz
#BINUTILS_SRC_URL=https://ftp.gnu.org/gnu/binutils/binutils-2.36.tar.xz #BINUTILS_SRC_URL=https://ftp.gnu.org/gnu/binutils/binutils-2.36.tar.xz
@ -37,6 +38,7 @@ cd source
LINUX_SRC_NAME=$(download_src ${LINUX_SRC_URL}) LINUX_SRC_NAME=$(download_src ${LINUX_SRC_URL})
GLIBC_SRC_NAME=$(download_src ${GLIBC_SRC_URL}) GLIBC_SRC_NAME=$(download_src ${GLIBC_SRC_URL})
BUSYBOX_SRC_NAME=$(download_src ${BUSYBOX_SRC_URL}) BUSYBOX_SRC_NAME=$(download_src ${BUSYBOX_SRC_URL})
PCIUTILS_SRC_NAME=$(download_src ${PCIUTILS_SRC_URL})
GCC_SRC_NAME=$(download_src ${GCC_SRC_URL}) GCC_SRC_NAME=$(download_src ${GCC_SRC_URL})
BINUTILS_SRC_NAME=$(download_src ${BINUTILS_SRC_URL}) BINUTILS_SRC_NAME=$(download_src ${BINUTILS_SRC_URL})
cd .. cd ..
@ -51,6 +53,7 @@ mkdir -pv ${build_dir}
LINUX_SRC_DIR=$(unzip_src ".tar.xz" ${LINUX_SRC_NAME}); echo "unzip ${LINUX_SRC_NAME} source code" LINUX_SRC_DIR=$(unzip_src ".tar.xz" ${LINUX_SRC_NAME}); echo "unzip ${LINUX_SRC_NAME} source code"
GLIBC_SRC_DIR=$(unzip_src ".tar.xz" ${GLIBC_SRC_NAME}); echo "unzip ${GLIBC_SRC_NAME} source code" GLIBC_SRC_DIR=$(unzip_src ".tar.xz" ${GLIBC_SRC_NAME}); echo "unzip ${GLIBC_SRC_NAME} source code"
BUSYBOX_SRC_DIR=$(unzip_src ".tar.bz2" ${BUSYBOX_SRC_NAME}); echo "unzip ${BUSYBOX_SRC_NAME} source code" BUSYBOX_SRC_DIR=$(unzip_src ".tar.bz2" ${BUSYBOX_SRC_NAME}); echo "unzip ${BUSYBOX_SRC_NAME} source code"
PCIUTILS_SRC_DIR=$(unzip_src ".tar.gz" ${PCIUTILS_SRC_NAME}); echo "unzip ${PCIUTILS_SRC_NAME} source code"
GCC_SRC_DIR=$(unzip_src ".tar.xz" ${GCC_SRC_NAME}); echo "unzip ${GCC_SRC_NAME} source code" GCC_SRC_DIR=$(unzip_src ".tar.xz" ${GCC_SRC_NAME}); echo "unzip ${GCC_SRC_NAME} source code"
BINUTILS_SRC_DIR=$(unzip_src ".tar.xz" ${BINUTILS_SRC_NAME}); echo "unzip ${BINUTILS_SRC_NAME} source code" BINUTILS_SRC_DIR=$(unzip_src ".tar.xz" ${BINUTILS_SRC_NAME}); echo "unzip ${BINUTILS_SRC_NAME} source code"
@ -297,18 +300,29 @@ if [ ! -d "glibc_install" ]; then
--disable-werror \ --disable-werror \
--disable-werror \ --disable-werror \
CFLAGS="$CFLAGS" CFLAGS="$CFLAGS"
make -j8 && make install -j8 DESTDIR=${glibc_install} && cd .. && cd .. make -j8 && make install -j8 DESTDIR=${glibc_install}
cd .. && cd ..
fi fi
# 编译 busybox # 编译 busybox
if [ ! -d "busybox_install" ]; then if [ ! -d "busybox_install" ]; then
mkdir -pv busybox_install && cd ${BUSYBOX_SRC_DIR} && make distclean && make defconfig mkdir -pv busybox_install && cd ${BUSYBOX_SRC_DIR} && make distclean && make defconfig
# 屏蔽掉 lspci 这个自带的太简单
sed -i "s/CONFIG_LSPCI=y/# CONFIG_LSPCI is not set/" .config
# 静态编译 sed -i "s/# CONFIG_STATIC is not set/CONFIG_STATIC=y/g" .config # 静态编译 sed -i "s/# CONFIG_STATIC is not set/CONFIG_STATIC=y/g" .config
sed -i "s|.*CONFIG_SYSROOT.*|CONFIG_SYSROOT=\"${glibc_install}\"|" .config sed -i "s|.*CONFIG_SYSROOT.*|CONFIG_SYSROOT=\"${glibc_install}\"|" .config
sed -i "s|.*CONFIG_EXTRA_CFLAGS.*|CONFIG_EXTRA_CFLAGS=\"-I${linux_install}/include -I${glibc_install}/include -L${glibc_install}/usr/lib64 $CFLAGS\"|" .config sed -i "s|.*CONFIG_EXTRA_CFLAGS.*|CONFIG_EXTRA_CFLAGS=\"-I${linux_install}/include -I${glibc_install}/include -L${glibc_install}/usr/lib64 $CFLAGS\"|" .config
# 环境变量 PATH 的设定,因为 busybox 的 init 会覆盖用户设置的 PATH只能源码进行编译 # 环境变量 PATH 的设定,因为 busybox 的 init 会覆盖用户设置的 PATH只能源码进行编译
sed -i "s|#define BB_ADDITIONAL_PATH \"\"|#define BB_ADDITIONAL_PATH \":/usr/local/sbin:/usr/local/bin\"|" include/libbb.h sed -i "s|#define BB_ADDITIONAL_PATH \"\"|#define BB_ADDITIONAL_PATH \":/usr/local/sbin:/usr/local/bin\"|" include/libbb.h
make busybox -j8 && make CONFIG_PREFIX=${busybox_install} install && cd .. make busybox -j8 && make CONFIG_PREFIX=${busybox_install} install
cd ..
fi
# 编译 pciutils ( busybox 的 lspci 太简单 )
if [ ! -d "pciutils_install" ]; then
mkdir -pv pciutils_install && cd ${PCIUTILS_SRC_DIR}
CFLAGS="-L${glibc_install}/lib64 $CFLAGS" make -j8 && make install -j8 DESTDIR=${pciutils_install} PREFIX=/usr
cd ..
fi fi
# 编译 gcc # 编译 gcc
@ -323,7 +337,8 @@ fi
if [ ! -d "binutils_install" ]; then if [ ! -d "binutils_install" ]; then
mkdir -pv binutils_install && cd ${BINUTILS_SRC_DIR} && make distclean mkdir -pv binutils_install && cd ${BINUTILS_SRC_DIR} && make distclean
./configure --prefix=/usr ./configure --prefix=/usr
CFLAGS="-L${glibc_install}/lib64 $CFLAGS" make -j8 && make install -j8 DESTDIR=${binutils_install} && cd .. CFLAGS="-L${glibc_install}/lib64 $CFLAGS" make -j8 && make install -j8 DESTDIR=${binutils_install}
cd ..
fi fi
cd .. cd ..

View File

@ -95,6 +95,9 @@ echo "${CYAN}--- build initrd ---${NC}"
# 这种方法也可以 mkinitramfs -k -o ./${diskfs}/boot/initrd 4.14.9 # 这种方法也可以 mkinitramfs -k -o ./${diskfs}/boot/initrd 4.14.9
# 利用 Busybox 采用脚本制作 init 脚本 https://blog.csdn.net/embeddedman/article/details/7721926 # 利用 Busybox 采用脚本制作 init 脚本 https://blog.csdn.net/embeddedman/article/details/7721926
# 光驱挂载 : /dev/cdrom 是 /dev/sr0 的软连接,也就是说 /dev/sr0 才是实际意义上的光驱。所以没有软连接,
# 照样可以挂载光驱。使用命令"mount /dev/sr0 /mnt/cdrom"便可以实现挂载。
make_init() { make_init() {
cat<<"EOF">init cat<<"EOF">init
@ -110,7 +113,7 @@ mount -t ext3 /dev/sda1 /mnt
# 关闭内核烦人的输出信息 # 关闭内核烦人的输出信息
echo 0 > /proc/sys/kernel/printk echo 0 > /proc/sys/kernel/printk
# 热插拔处理都交给 mdev # 热插拔处理都交给 mdev
echo /sbin/mdev > /proc/sys/kernel/hotplug # echo /sbin/mdev > /proc/sys/kernel/hotplug
echo -e "\n\e[0;32mBoot took $(cut -d' ' -f1 /proc/uptime) seconds\e[0m" echo -e "\n\e[0;32mBoot took $(cut -d' ' -f1 /proc/uptime) seconds\e[0m"
mkdir -p /dev/pts mkdir -p /dev/pts
mount -t devpts devpts /dev/pts mount -t devpts devpts /dev/pts
@ -121,7 +124,7 @@ mount --move /proc /mnt/proc
mount --move /tmp /mnt/tmp mount --move /tmp /mnt/tmp
# 切换到真正的磁盘系统上 rootfs ---> diskfs # 切换到真正的磁盘系统上 rootfs ---> diskfs
export LD_LIBRARY_PATH="/lib:/lib64:/usr/lib:/usr/lib64:/usr/local/lib:/usr/local/lib64:/usr/lib/x86_64-linux-gnu" export LD_LIBRARY_PATH="/lib:/lib64:/usr/lib:/usr/lib64:/usr/local/lib:/usr/local/lib64:/usr/lib/x86_64-linux-gnu"
exec switch_root -c /dev/console /mnt /sbin/init exec switch_root /mnt /sbin/init
EOF EOF
# /sbin/init [switch_root 执行] ---> /etc/inittab [定义了启动顺序] ---> # /sbin/init [switch_root 执行] ---> /etc/inittab [定义了启动顺序] --->
@ -169,6 +172,14 @@ cd ..
#-------------------------------------------------------------- #--------------------------------------------------------------
echo "${CYAN}--- build diskfs ---${NC}" echo "${CYAN}--- build diskfs ---${NC}"
cp rootfs/* ${diskfs} -r cp rootfs/* ${diskfs} -r
# 单独的 pciutils
cp ${pciutils_install}/* ${diskfs} -r
if [ -f "${diskfs}/usr/share/pci.ids.gz" ]; then
mkdir -pv ${diskfs}/usr/local/share
mv ${diskfs}/usr/share/pci.ids.gz ${diskfs}/usr/local/share/pci.ids.gz
fi
# 带有 gcc 编译器 # 带有 gcc 编译器
if [ "${with_gcc}" = true ]; then if [ "${with_gcc}" = true ]; then
echo "${RED} ... build with-gcc${NC}" echo "${RED} ... build with-gcc${NC}"
@ -177,12 +188,6 @@ if [ "${with_gcc}" = true ]; then
fi fi
rm -rf ${diskfs}/init ${diskfs}/lost+found rm -rf ${diskfs}/init ${diskfs}/lost+found
# lspci 显示厂商 ( 下面的是 ubuntu 的 )
if [ -f "/usr/share/misc/pci.ids" ]; then
mkdir -p ${diskfs}/usr/share/misk
cp /usr/share/misc/pci.ids ${diskfs}/usr/share/misk/pci.ids
fi
# 测试用户登陆模式: root/123456 # 测试用户登陆模式: root/123456
if [ "${with_login}" = true ]; then if [ "${with_login}" = true ]; then
echo "${RED} ... build with-login${NC}" echo "${RED} ... build with-login${NC}"

View File

@ -92,7 +92,7 @@ else
fi fi
# 指定内存 # 指定内存
memory="-m 4G" memory="-m 8G"
# 主磁盘 # 主磁盘
disk="-drive format=raw,file=disk.img" disk="-drive format=raw,file=disk.img"
@ -105,10 +105,10 @@ logfile="-serial file:./qemu.log"
network="-netdev tap,id=nd0,ifname=tap0,script=no,downscript=no -device e1000,netdev=nd0" network="-netdev tap,id=nd0,ifname=tap0,script=no,downscript=no -device e1000,netdev=nd0"
# 显卡参数 需要编译 xf86-video-vmware, see mk_xfce.sh # 显卡参数 需要编译 xf86-video-vmware, see mk_xfce.sh
display="-vga vmware" display="-vga qxl"
# 启动镜像 网络对应 run_nat.sh 里面的配置 ( -enable-kvm : vmware 里面 CPU 设置需要支持虚拟化 Intel VT-x/EPT 或 AMD-V/RVI ) # 启动镜像 网络对应 run_nat.sh 里面的配置 ( -enable-kvm : vmware 里面 CPU 设置需要支持虚拟化 Intel VT-x/EPT 或 AMD-V/RVI )
# 命令 qemu-system-x86_64 -device help 可以查看支持哪些设备 # 命令 qemu-system-x86_64 -device help 可以查看支持哪些设备
qemu-system-x86_64 -enable-kvm ${display} ${memory} ${disk} ${sdb_img} ${network} ${logfile} qemu-system-x86_64 ${display} -device qxl ${memory} ${disk} ${sdb_img} ${network} ${logfile}
# stop nat # stop nat
stop_nat stop_nat

View File

@ -142,12 +142,15 @@ XSERVER_SRC_URL=https://www.x.org/releases/individual/xserver/xorg-server-21.1.4
FONTUTIL_SRC_URL=https://www.x.org/releases/individual/font/font-util-1.3.3.tar.xz FONTUTIL_SRC_URL=https://www.x.org/releases/individual/font/font-util-1.3.3.tar.xz
FONTMISC_SRC_URL=https://www.x.org/releases/individual/font/font-misc-misc-1.1.2.tar.bz2 FONTMISC_SRC_URL=https://www.x.org/releases/individual/font/font-misc-misc-1.1.2.tar.bz2
XF86INPUT_SRC_URL=https://www.x.org/releases/individual/driver/xf86-input-libinput-1.2.1.tar.xz XF86INPUT_SRC_URL=https://www.x.org/releases/individual/driver/xf86-input-libinput-1.2.1.tar.xz
XF86VIDEOATI_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-ati-19.1.0.tar.bz2
XF86VIDEOVESA_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-vesa-2.5.0.tar.bz2 XF86VIDEOVESA_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-vesa-2.5.0.tar.bz2
XF86VIDEOINTEL_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-intel-2.99.917.tar.bz2
XF86VIDEOQXL_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-qxl-0.1.5.tar.bz2 XF86VIDEOQXL_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-qxl-0.1.5.tar.bz2
XF86VIDEOAMD_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-amd-2.7.7.7.tar.bz2 XF86VIDEOAMD_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-amd-2.7.7.7.tar.bz2
XF86VIDEOFBDEV_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-fbdev-0.5.0.tar.bz2 XF86VIDEOFBDEV_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-fbdev-0.5.0.tar.bz2
XF86VIDEOVMWARE_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-vmware-13.3.0.tar.bz2 XF86VIDEOVMWARE_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-vmware-13.3.0.tar.bz2
XF86VIDEOAMDGPU_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-amdgpu-21.0.0.tar.bz2 XF86VIDEOAMDGPU_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-amdgpu-21.0.0.tar.bz2
XF86VIDEODUMMY_SRC_URL=https://www.x.org/releases/individual/driver/xf86-video-dummy-0.4.0.tar.xz
XKBDATA_SRC_URL=https://www.x.org/releases/individual/data/xkbdata-1.0.1.tar.bz2 XKBDATA_SRC_URL=https://www.x.org/releases/individual/data/xkbdata-1.0.1.tar.bz2
XKBDCFG_SRC_URL=https://www.x.org/releases/individual/data/xkeyboard-config/xkeyboard-config-2.36.tar.xz XKBDCFG_SRC_URL=https://www.x.org/releases/individual/data/xkeyboard-config/xkeyboard-config-2.36.tar.xz
@ -264,7 +267,10 @@ LIBWACOM_SRC_NAME=$(download_src ${LIBWACOM_SRC_URL})
LIBINPUT_SRC_NAME=$(download_src ${LIBINPUT_SRC_URL}) LIBINPUT_SRC_NAME=$(download_src ${LIBINPUT_SRC_URL})
SPICEPROT_SRC_NAME=$(download_src ${SPICEPROT_SRC_URL}) SPICEPROT_SRC_NAME=$(download_src ${SPICEPROT_SRC_URL})
XF86INPUT_SRC_NAME=$(download_src ${XF86INPUT_SRC_URL}) XF86INPUT_SRC_NAME=$(download_src ${XF86INPUT_SRC_URL})
XF86VIDEOATI_SRC_NAME=$(download_src ${XF86VIDEOATI_SRC_URL})
XF86VIDEOVESA_SRC_NAME=$(download_src ${XF86VIDEOVESA_SRC_URL}) XF86VIDEOVESA_SRC_NAME=$(download_src ${XF86VIDEOVESA_SRC_URL})
XF86VIDEOINTEL_SRC_NAME=$(download_src ${XF86VIDEOINTEL_SRC_URL})
XF86VIDEODUMMY_SRC_NAME=$(download_src ${XF86VIDEODUMMY_SRC_URL})
XF86VIDEOQXL_SRC_NAME=$(download_src ${XF86VIDEOQXL_SRC_URL}) XF86VIDEOQXL_SRC_NAME=$(download_src ${XF86VIDEOQXL_SRC_URL})
XF86VIDEOAMD_SRC_NAME=$(download_src ${XF86VIDEOAMD_SRC_URL}) XF86VIDEOAMD_SRC_NAME=$(download_src ${XF86VIDEOAMD_SRC_URL})
XF86VIDEOFBDEV_SRC_NAME=$(download_src ${XF86VIDEOFBDEV_SRC_URL}) XF86VIDEOFBDEV_SRC_NAME=$(download_src ${XF86VIDEOFBDEV_SRC_URL})
@ -394,7 +400,10 @@ LIBEVDEV_SRC_DIR=$(unzip_src ".tar.xz" ${LIBEVDEV_SRC_NAME}); echo "unzip ${LIBE
LIBINPUT_SRC_DIR=$(unzip_src ".tar.xz" ${LIBINPUT_SRC_NAME}); echo "unzip ${LIBINPUT_SRC_NAME} source code" LIBINPUT_SRC_DIR=$(unzip_src ".tar.xz" ${LIBINPUT_SRC_NAME}); echo "unzip ${LIBINPUT_SRC_NAME} source code"
SPICEPROT_SRC_DIR=$(unzip_src ".tar.xz" ${SPICEPROT_SRC_NAME}); echo "unzip ${SPICEPROT_SRC_NAME} source code" SPICEPROT_SRC_DIR=$(unzip_src ".tar.xz" ${SPICEPROT_SRC_NAME}); echo "unzip ${SPICEPROT_SRC_NAME} source code"
XF86INPUT_SRC_DIR=$(unzip_src ".tar.xz" ${XF86INPUT_SRC_NAME}); echo "unzip ${XF86INPUT_SRC_NAME} source code" XF86INPUT_SRC_DIR=$(unzip_src ".tar.xz" ${XF86INPUT_SRC_NAME}); echo "unzip ${XF86INPUT_SRC_NAME} source code"
XF86VIDEOATI_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOATI_SRC_NAME}); echo "unzip ${XF86VIDEOATI_SRC_NAME} source code"
XF86VIDEOVESA_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOVESA_SRC_NAME}); echo "unzip ${XF86VIDEOVESA_SRC_NAME} source code" XF86VIDEOVESA_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOVESA_SRC_NAME}); echo "unzip ${XF86VIDEOVESA_SRC_NAME} source code"
XF86VIDEOINTEL_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOINTEL_SRC_NAME}); echo "unzip ${XF86VIDEOINTEL_SRC_NAME} source code"
XF86VIDEODUMMY_SRC_DIR=$(unzip_src ".tar.xz" ${XF86VIDEODUMMY_SRC_NAME}); echo "unzip ${XF86VIDEODUMMY_SRC_NAME} source code"
XF86VIDEOQXL_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOQXL_SRC_NAME}); echo "unzip ${XF86VIDEOQXL_SRC_NAME} source code" XF86VIDEOQXL_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOQXL_SRC_NAME}); echo "unzip ${XF86VIDEOQXL_SRC_NAME} source code"
XF86VIDEOAMD_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOAMD_SRC_NAME}); echo "unzip ${XF86VIDEOAMD_SRC_NAME} source code" XF86VIDEOAMD_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOAMD_SRC_NAME}); echo "unzip ${XF86VIDEOAMD_SRC_NAME} source code"
XF86VIDEOFBDEV_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOFBDEV_SRC_NAME}); echo "unzip ${XF86VIDEOFBDEV_SRC_NAME} source code" XF86VIDEOFBDEV_SRC_DIR=$(unzip_src ".tar.bz2" ${XF86VIDEOFBDEV_SRC_NAME}); echo "unzip ${XF86VIDEOFBDEV_SRC_NAME} source code"
@ -864,11 +873,20 @@ llvm_build() {
meson_build libinput ${LIBINPUT_SRC_DIR} meson_build libinput ${LIBINPUT_SRC_DIR}
# xf86input ( libinput 的封装,使 libinput 用于 X 上的输入设备代替其他用于 X 输入的软件包即以 xf86-input- 为前缀的软件包 ) # xf86input ( libinput 的封装,使 libinput 用于 X 上的输入设备代替其他用于 X 输入的软件包即以 xf86-input- 为前缀的软件包 )
common_build xf86input ${XF86INPUT_SRC_DIR} common_build xf86input ${XF86INPUT_SRC_DIR}
# xf86videoati ( 为了虚拟机上能显示图形,我们把常用的显卡驱动全部编译了 )
# common_build xf86videoati ${XF86VIDEOATI_SRC_DIR}
# xf86videovesa ( vesa是一个支持大部分显卡的通用驱动不提供任何 2D 和 3D 加速功能 也可以 apt install libgl1-mesa-dri ) # xf86videovesa ( vesa是一个支持大部分显卡的通用驱动不提供任何 2D 和 3D 加速功能 也可以 apt install libgl1-mesa-dri )
common_build xf86videovesa ${XF86VIDEOVESA_SRC_DIR} common_build xf86videovesa ${XF86VIDEOVESA_SRC_DIR}
# xf86videointel
# common_build xf86videointel ${XF86VIDEOINTEL_SRC_DIR}
# xf86videodummy
common_build xf86videodummy ${XF86VIDEODUMMY_SRC_DIR}
# xf86videoamd ( qemu 要模拟 vmware 的显卡,需要编译此工程 -vga vmware ) # xf86videoamd ( qemu 要模拟 vmware 的显卡,需要编译此工程 -vga vmware )
# common_build xf86videoamd ${XF86VIDEOAMD_SRC_DIR} # common_build xf86videoamd ${XF86VIDEOAMD_SRC_DIR}
# xf86videoqxl ( 需要: spice_protocol, qemu 要模拟 vmware 的显卡,需要编译此工程 -vga vmware ) # xf86videoqxl ( 需要: spice_protocol, qemu 要模拟 vmware 的显卡,需要编译此工程 -vga vmware )
if [ ! -f ".xf86videoqxl" ]; then
sed -i "s/value.bool/value.boolean/" ${XF86VIDEOQXL_SRC_DIR}/src/qxl_option_helpers.c
fi
common_build xf86videoqxl ${XF86VIDEOQXL_SRC_DIR} common_build xf86videoqxl ${XF86VIDEOQXL_SRC_DIR}
# xf86videofbdev ( qemu 要模拟 vmware 的显卡,需要编译此工程 -vga vmware ) # xf86videofbdev ( qemu 要模拟 vmware 的显卡,需要编译此工程 -vga vmware )
common_build xf86videofbdev ${XF86VIDEOFBDEV_SRC_DIR} common_build xf86videofbdev ${XF86VIDEOFBDEV_SRC_DIR}