SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
HOWTO Install X11R7 on Slackware 10.2 (may work on other distros too.)
THIS is a 1-19-2006 update. If you do it this way it is alot easier to recover if things go wrong. (As suggested by Ladak, Post #17. Thanks.)
Either download the everything directory or all directories except everything and extras.
NOTE: The extras directory has external dependancies which you might need (I had to get libdrm.)
NOTE: Each tarball comes in 2 flavors, (.gz or .bz2) so choose your favorite and only download that type.
Put the build-from-tarballs.sh script in your path and make it executable.
If you only want to build for your particular video card and not all 40 some which Xorg supports (at this time.) You just edit the script build-from-tarballs.sh and comment out the unnecessary cards in the function build_driver_video(). So this is what my script looks like after I edited it:
Notice I built drivers for my savage chip set and also a couple generic drivers, just in case. Another way to do this, I think you can just delete the tarballs for the video cards you don't need.
Exit out of X
To start the build go to your download directory (the everything directory if you downloaded that directory.) If you downloaded the modular directories go to the directory from which you can see all the modular directories.
Start the build-from-tarballs.sh script. If building from the everything directory: build-from-tarballs.sh -e [-gz] prefix. If building from the modular directory: build-from-tarballs.sh [-gz] prefix. NOTE: -bz2 is default so if you chose to download the .gz files then you need to use -gz option. This is what I did in the everything directory:
build-from-tarballs.sh -e -s sudo /usr/X11R7 #NOTE: /usr/X11R7 is the prefix i used.
Go take a nap....
chmod u+s /usr/X11R7/bin/Xorg #Must SUID the Xorg file for it to work properly.
cd /usr
ln -s X11R7 X11R6
cd X11R7
rm -fr var #This and the next step is not necessary. Remove /usr/X11R7/var and replace with a symlink to /var.
ln -s /var var #If you choose not to do these steps, just remember Xorg.0.log is now in a different directory (/usr/X11R7/var/log/Xorg.0.log.)
cd /usr/X11R7/lib/X11
lndir /etc/X11 #This will symlink any missing files back to the original files.
cd /usr/bin
rm X11
ln -s /usr/X11R7/bin X11
startx #If startx doesn't work try reboot.
NOTE: A note about the libdrm error: ( configure: error: Package requirements (libdrm) were not met: ) I've been studying this one a little bit. It seems you can get the error even if you have libdrm installed. I had libdrm installed in /usr/local/lib but I got that error, SEE BELOW. If you have libdrm installed you can tell by running this:
ldconfig -p|grep libdrm
If it is installed then look for the libdrm.pc file in the libpath+pkgconfig e.g. /usr/local/lib/pkgconfig. If you have the libdrm.pc file then the proper way to fix the error is to set the PKG_CONFIG_PATH variable, like this:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
Then rerun the build-from-tarball.sh script.
I think that is about it. This is a crude and hastily written summary and quite likely has errors. But between this and reading the documentation provided by x.org you should get through it.
If it doesn't work and you want to undo it just delete /usr/X11R7 then untar the backup copy of /usr/X11R6 you made, then change the symlink in /usr/bin back to /usr/X11R6/bin. And you'll probably need to reboot.
Hope this helps someone.
<edit> Just found a typo in instructions, sorry about that.
ln -s X11R6 X11R7
s/b
ln -s X11R7 X11R6
If things get bad just reverse everything you did from 25 back to 14. And you'll probably need to reboot.
Yes that is quite optimistic on my part, but it can be undone.
The documentation at x.org leaves out the details on switching from X11R6 to X11R7. This is the results of my "trial and error" approach of solving all the "missing files and libraries" errors I had when I did this. It is probably not the proper way but it should get you going untill some better documentation comes out.
I thought all I would have to do was change a couple symlinks and everything would work fine. That wasn't the case though, I found there are alot of missing files and libraries in the X11R7 directory tree. But by keeping a copy of the old X11R6.bak you should be able to make it work if you have missing files. You could just copy the missing files into the X11R7 directory and not symlink like I did.
I tried and end up with error while compiling xserver files (in xorg-server-X11R7.0-1.0.1/hw/xfree86/os-support/). So I am curious if you made such experience as well, wether you downloaded CVS version or official X11R7 release and what version of gcc you used.
Record of whole error message is placed on separate page www dot razdva.cz/ladak/x11r7_build_error.html, because it's bloody long. (Sorry, as I am still greenhorn on Linuxquestions I can't post a link to other page so exchange please "dot" with "." to navigate there).
I built with tarballs. If you are downloading and building using cvs then these instructions do not apply. It's similar but you should be using the build.sh script in the util/modular directory.
The only error I had while building was libdrm missing.
configure: error: Package requirements (libdrm) were not met:
The way I fixed it was like this:
NOTE: Before you try this read Post #1 again. You might just need to set PKG_CONFIG_PATH to fix this problem. If that doesn't work then you can try this:
tar xjvf ../extras/libdrm-2.0.tar.bz2
cd libdrm-2.0
./configure --prefix=/usr/X11R7
make
sudo make install
cd ../
Well, installing libdrm in /usr/X11R7 solved problem with compiling xserver. But a new one appeared. I am starting to believe gremlins exist :-).
Just for info, my new error looks like:
I'll try ggc version from slackware-current (3.4.5). Hope this will help.
Why? Do you think that the new version of gcc will ignore permissions issues? Seems permissions is where you should start looking. Not only does the indicated error message suggest this, but it is also much easier than going through gcc upgrades.
Next I thought I had full hard drive. I have still 1,9 GB available.
So I looked in execvp man page. I thing execvp is something about C language so I assume it could by problem among gcc, C language and execvp function.
Even if I installed font-adobe-utopia-type1-X11R7.0-1.0.1 manually I ended with the same error. So I run build-from-tarballs.sh script with -n optin (-n : do not quit after error; just print error message) and solve the problem with mentioned font after whole build will be done
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.