なぜならアクセシビリティエラーXorg-server 1.13~1.15は使用できません。 CentOS 7が使用されているのを見てください。1.15.0。CentOS 7で最新バージョンのXorg-serverを使用する方法はありますか?
Fedora 23Xorg-server 1.18.0があります。将来、FedoraがRHELとCentOSのテストプラットフォームにほぼ参入することを考えると、CentOSでFedoraのXorg-serverを使用する方法はありますか?
答え1
rhelとfedoraの間のライブラリの依存関係が変更されていない場合(低い確率)、RedHat 7はFedora 19に基づいているため、fedoraパッケージを使用できます。
RHEL7システムのfedoras srpmから必要なパッケージを再構築できます。
編集する:
それで、el7用の最新のxorgを再コンパイルすることが可能かどうか疑問に思います。 (私はFedoraパッケージがほとんど行き届いた路地のようで、インストールを試みませんでした。)
驚いたことに、私はその仕事をしました。動作していることを確認するために、サーバーをテストまたは起動せずに生成されたrpmをDockerコンテナにインストールしました。
編集2:
すべてのlibXパッケージをビルドするコマンドが追加されました。メサを再構築することはできません(更新されたclangパッケージやその他の項目が必要なため、作業が多すぎます)。
これが私がビルドするために使用するスクリプトです。すべての操作はドッカーコンテナで行われます。
docker run --rm -it _your_container_ bash
#!/bin/bash
rm -f /etc/yum.repos.d/*
# I built packages from rawhide, you should use fedora23 probably
# we need yum-plugin-priorities and priority=1 for srpm repo
# if you use oracle linux, remove centos repo
# and add oracles ol_latest and ol_optional
cat > /etc/yum.repos.d/extra_repos.repo <<EOF
[fedora_srpm]
#baseurl=https://dl.fedoraproject.org/pub/fedora/linux/releases/23/Everything/source/SRPMS/
baseurl=https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/source/SRPMS/
name=fedora_srpm
enabled=1
gpgcheck=0
priority=1
[centos]
baseurl=http://mirror.centos.org/centos/7/os/x86_64
name=centos
enabled=1
gpgcheck=0
EOF
yum groupinstall "Development Tools" -y
yum install -y yum-utils yum-plugin-priorities rpmdevtools libxcb libpng libfontenc \
freetype fontconfig ghostscript xmlto java-1.7.0 java-1.7.0-openjdk-devel \
zziplib cairo poppler xorg-x11-glamor libdrm valgrind mtdev libXvMC xcb-util \
xorg-x11-server-utils pyparsing opus libiscsi glusterfs-api opus-devel \
celt051-devel cyrus-sasl-devel celt051 mesa-private-llvm libdmx libXxf86dga \
xorg-x11-util-macros xorg-x11-proto-devel python-six nss-util nspr nss libaio \
xorg-x11-xbitmaps libXaw libXpm xorg-sgml-doctools passivetex gl-manpages \
graphviz chrpath libXres xcb-util-wm xcb-util-keysyms xcb-util-image \
xcb-util-renderutil rsh xorg-x11-xtrans-devel cmake asciidoc python-mako \
imake || exit 1
# reinstall locales in docker
yum reinstall -y glibc glibc-common
yum update -y
rpmdev-setuptree
export QA_RPATHS=0x0001
## You will need those extra packages during builds from fedora rawhide
cd && mkdir extras && cd extras
pkg_extra=(libFS mcpp libdrm libevdev libinput spice-protocol spice libunwind wayland libxshmfence xcb-util)
for pkg in ${pkg_extra[@]}; do
yumdownloader --source $pkg
yum-builddep -y $pkg-*.fc2*.src.rpm && spectool -g -R $pkg-*.fc2*.src.rpm && rpmbuild --rebuild $pkg-*.fc2*.src.rpm || exit 1
# we keep installing what we built nutil now for the next builds
rm -f $pkg-*.fc2*.src.rpm && yum install -y ~/rpmbuild/RPMS/*/*
done
# for xorg server we need libepoxy for which we have to fix the spec file (needs python3 to compile)
yumdownloader --source libepoxy
rpm -i libepoxy*
sed s/python3/python2/g -i ~/rpmbuild/SPECS/libepoxy.spec
yum-builddep -y ~/rpmbuild/SPECS/libepoxy.spec && \
spectool -g -R ~/rpmbuild/SPECS/libepoxy.spec && \
rpmbuild -ba ~/rpmbuild/SPECS/libepoxy.spec || exit 1
rm -f libepoxy* && yum install -y ~/rpmbuild/RPMS/*/libepoxy-*
# Start building xorg
cd && mkdir xorg-x11 && cd xorg-x11
yumdownloader --source xorg-x11-*
# remove packages that complain about x86_64 architecture
rm -f xorg-x11-drv-armsoc* xorg-x11-drv-freedreno* xorg-x11-drv-geode* xorg-x11-drv-omap* xorg-x11-drv-opentegra*
# I couldn't compile xorg-x11-drv-intel, so we will install it later
rm -f xorg-x11-drv-intel-*
## we need those package built and installed first
pkg_order=(xorg-x11-proto-devel xorg-x11-font-utils xorg-x11-fonts xorg-x11-xtrans-devel xorg-x11-server-utils)
for pkg in ${pkg_order[@]}; do
rpm_name=$pkg-*.src.rpm
yum-builddep -y $rpm_name && spectool -g -R $rpm_name && rpmbuild --rebuild $rpm_name || exit 1
rm -f $rpm_name && yum install -y ~/rpmbuild/RPMS/*/$pkg*
done
# drivers need to be compiled for this server version, so we compile and install the server
# remove fedora20 checks and build a package for wayland also
rpm -i xorg-x11-server-*.rpm
sed 's/0%{?fedora} > 20/0%{?el7:1}/g' -i ~/rpmbuild/SPECS/xorg-x11-server.spec
yum-builddep -y ~/rpmbuild/SPECS/xorg-x11-server.spec && \
spectool -g -R ~/rpmbuild/SPECS/xorg-x11-server.spec && \
rpmbuild -ba ~/rpmbuild/SPECS/xorg-x11-server.spec || exit 1
rm -f xorg-x11-server-*.rpm && yum install -y ~/rpmbuild/RPMS/*/*
# those need half of python3 packages for tests, so we disable tests in the spec file
pkg_notests=(xorg-x11-xauth xorg-x11-xbitmaps)
for pkg in ${pkg_notests[@]}; do
rpm -i $pkg-*.rpm
sed 's/BuildRequires: cmdtest/#BuildRequires: cmdtest/g' -i ~/rpmbuild/SPECS/$pkg.spec
sed 's/make check/#make check/g' -i ~/rpmbuild/SPECS/$pkg.spec
yum-builddep -y ~/rpmbuild/SPECS/$pkg.spec && \
spectool -g -R ~/rpmbuild/SPECS/$pkg.spec && \
rpmbuild -ba ~/rpmbuild/SPECS/$pkg.spec || exit 1
rm -f $pkg-*.rpm && yum install -y ~/rpmbuild/RPMS/*/$pkg-*
done
# compile everything but drivers
ls *.rpm | grep -v 'xorg-x11-drv' | sort | while read pkg;do
yum-builddep -y $pkg && spectool -g -R $pkg && rpmbuild --rebuild $pkg || exit 1
rm -f $pkg
done
# build drivers at last
ls xorg-x11-drv*.rpm | sort | while read pkg;do
yum-builddep -y $pkg && spectool -g -R $pkg && rpmbuild --rebuild $pkg || exit 1
rm -f $pkg
done
# this conflicts with other packages
yum remove -y xorg-x11-server-debuginfo
# install everything for testing
yum install -y ~/rpmbuild/RPMS/*/* https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/x86_64/os/Packages/x/xorg-x11-drv-intel-2.99.917-16.20150729.fc24.x86_64.rpm
# recompile all libX packages
yumdownloader --source libX\*
# fix unpackaged files
rpm -i libXaw-*.rpm
sed 's/%dir %{_pkgdocdir}/%{_pkgdocdir}/' -i ~/rpmbuild/SPECS/libXaw.spec
yum-builddep -y ~/rpmbuild/SPECS/libXaw.spec && \
spectool -g -R ~/rpmbuild/SPECS/libXaw.spec && \
rpmbuild -ba ~/rpmbuild/SPECS/libXaw.spec || exit 1
rm -f libXaw-*.rpm
rpm -i libXt-*.rpm
sed 's/%dir %{_docdir}/%{_docdir}/' -i ~/rpmbuild/SPECS/libXt.spec
yum-builddep -y ~/rpmbuild/SPECS/libXt.spec && \
spectool -g -R ~/rpmbuild/SPECS/libXt.spec && \
rpmbuild -ba ~/rpmbuild/SPECS/libXt.spec || exit 1
rm -f libXt-*.rpm
ls *.rpm | sort | while read pkg;do
yum-builddep -y $pkg && spectool -g -R $pkg && rpmbuild --rebuild $pkg || exit 1
rm -f $pkg
done
echo SUCCESS
答え2
そのニュースを伝えてうれしいです。CentOS 7-1511はXorg-server 1.17.2を使用しています。、それは苦しむことはありませんアクセシビリティエラー。したがって、このバージョンはパッチなしで使用できます。