List of instructions on howto install XFCE4.4 on Slamd64
Hello,
I've been trying to install XFCE4.4 on a 64-bit version of slackware linux called Slamd64. Unfortunatly, there are no pacakges in existance for all the various dependencies of XFCE4.4 on Slamd64, so they need to be compiled by source. While I can compile ok (in the sense I don't get any errors) some things will *not* work, in particular getting hal/messagebus to automount a cd-rom drive. Having said that XFCE4.4 *will* run :) with the following procedure, this is what I tried and it seemed to run. For this, I'll assume a normal "default" of slamd64. Note1: Make sure you install the libjpeg library and python! Note2: Some of this has, most noticbly the scripts came from CBLFS. To do this, you'll need to download the following files (found elsewhere on the 'net, for example in freedesktop.org); * libICE-1.0.3 * libSM-1.0.2 * xproto-7.0.10 * xtrans-1.0.3 * vte-0.15.0 * Linux-pam-0.99.7.1 * gnutls-1.6.1 * libprelude-0.9.12.2 * Linux-pam-0.99.7.1 * policykit ( git clone git://anongit.freedesktop.org/git/PolicyKit ) * docbook-xsl-1.71.0 * docbook-xml-4.4 * xmlto-0.0.18 * dbus-1.0.2 * dbus-glib-0.72 * hal-0.5.8.1 * URI-1.35 * blfs-bootscripts (http://lfs.osuosl.org/blfs/downloads...060910.tar.bz2) Note that the best way since these files will often be .tar.gz'd is to decompress each one in its own directory. And it begins :) 1. Compile xtrans-1.0.3; ./configure --prefix=/usr --libdir=/usr/lib64 make make install 2. Compile xproto-7.0.10; ./configure --prefix=/usr --libdir=/usr/lib64 make make install 3. Compile libICE-1.0.3; ./configure --prefix=/usr --libdir=/usr/lib64 make make install 4. Compile libSM-1.0.2 ./configure --prefix=/usr --libdir=/usr/lib64 make make install 5. Compile vte-0.15.0 ./configure --prefix=/usr --libdir=/usr/lib64 make make install 6. Compile gnutls-1.6.1 ./configure --prefix=/usr --libdir=/usr/lib64 make make install 7. Compile libprelude-0.9.12.2 ./configure --prefix=/usr --libdir=/usr/lib64 make make install 8. Compile linux-pam-0.99.7.1 ./configure --prefix=/usr --libdir=/usr/lib64 make make install 9. Install docbook-xsl-1.71.0; install -v -m755 -d /usr/share/xml/docbook/xsl-stylesheets-1.71.0 cp -v -R VERSION common eclipse extensions fo highlighting html htmlhelp images javahelp lib manpages params profiling slides template website xhtml /usr/share/xml/docbook/xsl-stylesheets-1.71.0 10. Install docbook-xml-4.4; install -v -d -m755 /usr/share/xml/docbook/xml-dtd-4.4 install -v -d -m755 /etc/xml chown -R root:root . cp -v -af docbook.cat *.dtd ent/ *.mod /usr/share/xml/docbook/xml-dtd-4.4 Then run these 3 scripts: script1: Code:
if [ ! -e /etc/xml/docbook ]; then Code:
if [ ! -e /etc/xml/catalog ]; then Code:
for DTDVERSION in 4.1.2 4.2 4.3 ./configure --prefix=/usr --libdir=/usr/lib64 make make install 12. dbus-1.0.2 -- add group and user; groupadd -g 28 messagebus useradd -c "D-BUS Message Daemon User" -d /dev/null -u 28 -g messagebus -s /bin/false messagebus Then compile with ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib64 make make install install -v -m755 -d /usr/share/doc/dbus-1.0.2 install -v -m644 doc/{TODO,*.{dtd,xml,xsl,txt,c}} /usr/share/doc/dbus-1.0.2 dbus-uuidgen --ensure 13. Compile dbus-glib-0.72; ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib64 make make install 14. Add group & user for policykit; groupadd -g 26 polkit useradd -c "Policy Kit Daemon User" -d /dev/null -u 26 -g polkit -s /bin/false polkit ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib64 make make install Then run these 3 scripts; script1; Code:
cat > /etc/rc.d/init.d/polkitd << "EOF" Code:
for link in /etc/rc.d/rc{{0,1,6}.d/K29,{2,3,4,5}.d/S20}polkitd; do Code:
sed -i "s/^Allow=.*/Allow=gid:users/" /etc/PolicyKit/privilege.d/desktop-console.privilege groupadd -g 23 haldaemon useradd -c "HAL Daemon User" -d /dev/null -u 23 -g haldaemon -s /bin/false haldaemon Then compile with: ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/hal --localstatedir=/var --libdir=/usr/lib64 make make install install -v -m755 -d /var/run/hald 16. Download the blfs-bootscripts, decompress and type "make install-haldaemon". 17. Install the Perl modules URI-1.35 ( http://search.cpan.org/~gaas/URI-1.35/); perl Makefile.PL make make test make install 18. Now use a softlink for the jpeg library in /usr/local/lib, i.e. ln -s /usr/lib/libjpeg62.0.0 /usr/local/lib/libjpeg.so 19. Download Thunar-0.8.0-installer.run from XFCE4.4's website and run it. 20. Download Thunar-Bundle-0.8.0-installer.run from XFCE4.4's website and run it. 21. Make a softlink from /usr/lib64 to /usr/local/lib for file libSM.so, i.e. ln -s /usr/lib64/libSM.so /usr/local/lib/libSM.so 22. Download xfce-4.4.4.0-installer.run and run it. 23. Download xfce-goodies-4.4.0-installer.run and run it. 24. You'll need rc.messagebus and rc.hal -- these two scripts need to go into /etc/rc.d; rc.hal Code:
#!/bin/sh Code:
#!/bin/sh Code:
/usr/sbin/polkitd desktop-console.privilege hal-storage-fixed-mount-all-options.privilege hal-storage-fixed-mount.privilege hal-storage-removable-mount-all-options.privilege hal-storage-removable-mount.privilege 25. CD to /media, and chmod 0777 * 26. Restart the PC. 27. Log back into slackware as non root, but log in as root and run "polkitd". Then go back to non-root, and run XFCE4.4 with startxfce4. Bad points: A) CD-ROM drive mounting dosen't seem to work at all, I do not know how to configure hal,dbus,policykit, etc. Hopefully that should be it and at the very least XFCE4.4 should be working in Slamd64 (64-Bit slackware 11). ljones |
Some points...
The instructions in CBLFS presume that you are working with a system built using the CLFS instructions. Make sure you understand the differences between a CLFS and a Slamd64 system. Further, the CBLFS non-multilib and multilib instructions presume you used the non-multilib (pure 32- or pure 64-bit) and multilib CLFS book respectively. */lib64 is only needed on multilib PPC64, s390x, sparc64 and AMD64 systems. If you have a pure 64-bit system or a multilib IA64, you don't need to pass the --libdir switch since 64-bit libraries install to */lib. Check your system's layout to confirm, but if you follow the CBLFS instructions, use the Non-Multilib instructions for a pure 64-bit system. The first four libraries are provided by X Windows and you probably don't need to re-install them. The symlinks to libjpeg and libSM shouldn't be needed. Setting the appropriate environment variables would be a better approach. I'm guessing you forgot to add /usr/lib64 to /etc/ld.so.conf and update the cache. The first four packages are provided by X Windows and probably already exist in /usr/X11R6. This assumes that you are adhering to the FHS. You may be missing the "development" files, however. That said, if you re-install them, the prefix should be /usr/X11R6. You now have part of your X11 in /usr/X11R6 and part in /usr. It may not cause problems, but it's sloppy. You will also need git to checkout a copy of PolicyKit unless PolicyKit has been released since the CBLFS instructions were written. You don't need to restart the PC ins step 26, just restart the X server. You don't need to start the PolicyKit daemon if you reboot and have created a polekit init script. The init script is a good idea otherwise you'll need to start PolicyKit every time you reboot. The GID used above for HAL, PolicyKit, and D-BUS are the ones used in CBLFS. They may or may not be appropriate depending on existing GID on you system. If you use the XFCE-Installer, you won't get the patch that allows transparent panels. If you're going to install all that other stuff by hand, why not XFCE too? CBLFS has instructions for XFCE and, trust me, XFCE doesn't take nearly as long as GNOME. Finally, CD-ROM mounting does work. |
Some intresting points :) thanks there in fact I've decided to go right back to square one and restart what I did. This time though I've not compiled the libs for libSM (though you're right: I don't have any development packages for these but I've been unable to find them), just the other ones such as dbus, policykit, etc. I believe my system is a multilib system, as I have /lib, /lib64, /usr/lib and /usr/lib64 on my system. It is indeed a AMD64 system.
I also decided to get the latest version of HAL, but it plain blank refuses to compile. Right now, I get this; Code:
bash-3.1# ./autogen.sh I don't know about this :( x.x SP |
Also, Your policykit startup script shouldn't work. {load,kill,status}proc are functions called from /etc/rc.d/init.d/functions. I could be wrong, but I don't think you'll find anything of the sort on slackware or slackware based systems. That's traditionally a SysVinit call. I'm pretty sure your instructions didn't include installing the LFS bootscripts...
Pulling verbatum from *LFS is a really bad idea unless your running an LFS variant, which Slamd is not... |
Quote:
Quote:
Quote:
I would agree with jong357 that using CBLFS instructions on a non-CLFS system isn't a great idea unless you understand the differences and can adjust the instructions appropriately. Especially things like the bootscripts. The build instructions will work as written in general, but certainly not universally. It might be OK to look there for informational purposes such as patches, etc. But, even many of the patches are only needed if you have a base CLFS system and applying them elsewhere may break something. |
:) Thanks for the info there, and really I'm inclined to agree with you there - you're both right -- pinching the LFS instructions and trying to refit them to slackware is a bad idea. Snag is :( that I haven't been able to find any other instructions, esp. slackware specific instructions so really I don't have that much to go on. I understand webpages do have instructions, but sometimes they aren't specific, or solving dependencies without some form of fallack or help can be a real problem.
I'm not aware of any other slackware (slamd) specific instructions .... I guess the only other options are to wait for packages, or to give up? Right now I've just finished getting HAL-0.5.8.tar.gz and trying to compile it but with errors (there's a problem in classdev.c). SPb |
Quote:
|
Will do shortly, but just before I do -- I did turn up one site finally with some packages ( http://saxa.droplinegnome.org/x86_64/2.16/2.16.2/ ) this appears to have HAL & Dbus already as packages. I've tried those however and it made no difference, the cdrom remains ignored.
SP |
autogen.sh is part of a 'make your own config file' kit that should hardly be run directly if you have a Makefile.in. Get a Version with a Makefile and go for ./configure --help |less. Then guess. Find what it misses, and add it to the configure line
I've done LFS, BLFS, and HLFS in the past. The script stuff will not be too far out because slamd64 or slackware anyhow has symlinks that will allow them to work. Their patches, otoh, might be off the wall, as they use tweaks to make things compile on their system. Likewise their configure lines. Watch yourself with Perl and CPAN. Some of the modules use /usr/lib/perl/<blah>/ and others use /usr/local/lib/perl/<blah>. Perl opnly checks one of them. I have found a symlink in /usr/local/lib and a mass copy usually gets you away with it. Just don't overwrite. Where the hell did you get the polkit source? I am looking everywhere for it. I'm trying for network manager on slamd64 for my new notebook. |
Quote:
|
Quote:
Thank you kindly. Now to solve our friwend's problems STOP BUILDING!! I have put (the DVD of) slamd64-12.2 on my new HP 6715s laptop and XFCE IS there. You don't see it in the list to install - it's hidden in 'window managers' I think. Try 'which xfce4-session'. I think you might have it, or you certainly can get it. Now all I have to do is figure our wireless, acpi, etc. etc. |
2 years too late for his liking, however I'm sure he's very grateful now ;)
|
Yea... I was staying out of that one... ;)
|
Quote:
That's me clicking too quick on google links. Cheers :-) http://www.linuxquestions.org/questi...d.php?t=524447 |
All times are GMT -5. The time now is 11:16 AM. |