LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Compiling XFE File Manager Using SlackBuild.org or src2pkg (https://www.linuxquestions.org/questions/slackware-14/compiling-xfe-file-manager-using-slackbuild-org-or-src2pkg-607148/)

Woodsman 12-16-2007 01:40 PM

Compiling XFE File Manager Using SlackBuild.org or src2pkg
 
With respect to my post in another thread about loading large directories in a GUI file manager, I decided to once again try XFE. Other than cosmetic issues, XFE is much faster than Konqueror or Thunar and a potential candidate for improving my experience with older hardware.

A few months ago when I first tested XFE I used the SlackBuild script from SlackBuild.org. That was for version 0.99. The software compiled and installed with no issues.

Yesterday I checked the XFE site for updates and found two: version 1.00 and 1.04. I downloaded the sources and tried to compile with the original SlackBuild script. (I remembered to modify the version number. :)) No success with either of the newer versions. The SlackBuild process ends with the following:

main.o: In function `FX::FXDCWindow::drawText(int, int, char const*, unsigned int)':
main.cc:(.text+0x259e): undefined reference to `XftDrawStringUtf8'
main.cc:(.text+0x25e0): undefined reference to `XftDrawString8'
main.o: In function `FX::FXFont::getTextWidth(char const*, unsigned int) const':
main.cc:(.text+0x2666): undefined reference to `XftTextExtentsUtf8'
main.cc:(.text+0x26a1): undefined reference to `XftTextExtents8'collect2: ld returned 1 exit status
make[2]: *** [xfe] Error 1

I next downloaded and compiled the latest stable Fox Toolkit (1.6.31) and had no issues compiling or installing. As I watched the XFE compilation I noticed no issues with the new Fox Toolkit package, but 1.00/1.04 still would not compile.

I next again compiled 0.99 with the newer Fox Toolkit and had no problems.

I next tried src2pkg 1.7 (I saw the new thread that version 1.8 is available :)). I am not fully acquainted yet with this versatile tool, but I modified the /etc config file to use my build directories and had no issues with those mods. However, the compile failed with the following:

Configuration has been - Successful!
Continue with the build? [ y or n ] > y
Compiling sources - Using: 'make'
ERROR! Compiling source code has failed.
This usually happens because of missing libraries, or
badly written Makefiles or configure scripts.
Found an RPM .spec file which shows this:
Requires: fox >= 1.6 libpng >= 1.2
BuildRequires: fox-devel >= 1.6 libpng-devel >= 1.2

I'm running Slackware 12.0, with libpng 1.2.23 and as I mentioned, Fox Toolkit 1.6.31.

I again ran src2pkg in verbose mode, hoping to find a clue. Src2pkg gets through the configuration and make clean sections with no noticeable error messages. However, in the compiler messages section, the compile terminates with the following messages:

main.o: In function `FX::FXDCWindow::drawText(int, int, char const*, unsigned int)':
main.cc:(.text+0x1bc3): undefined reference to `XftDrawStringUtf8'
main.cc:(.text+0x1bfe): undefined reference to `XftDrawString8'
main.o: In function `FX::FXFont::getTextWidth(char const*, unsigned int) const':
main.cc:(.text+0x2a0b): undefined reference to `XftTextExtentsUtf8'
main.cc:(.text+0x2a45): undefined reference to `XftTextExtents8'
collect2: ld returned 1 exit status
make[2]: *** [xfe] Error 1

I found a thread that I thought would solve the issue, but no success. Same failure.

So what changed between 0.99 and 1.00/1.04 to cause the SlackBuild script and src2pkg to fail?

I appreciate any help. Thanks

gnashley 12-16-2007 02:50 PM

Perhaps this is a gcc-4 issue? I see that the other src2pkg user who reported this problem was also using slack-12/gcc-4. I'll have alook and see what the problem might be. It appears to be related to either gcc version or a freetype problem.

Woodsman 12-16-2007 03:20 PM

Hmm. I have recompiled the freetype package with the bytecode interpreter enabled. Been running that way on 12.0 (11.0, 10.x) from the beginning (I always recompile the freetype package).

gnashley 12-16-2007 03:28 PM

I'm looking into this at the moment -that is compiling the fox libs 1.6.31 which takes quite a while. Then I'll try to see what's happening with xfe. Meanwhile, I remember working on this problem before, but don't remember the outcome.
At one time I had the idea of using xfe or one of the other fox-based filers. But, the trouble is that they all require the fox-libs which are quite large. The limited number of programs that are available don't really justify them for me. There is one especially cute and useful screenshot program called shutterbug that I really like. But darned if I'd install 40MB of libs just to use it. Instead I wrote a couple of ROX Appdirs which provide similar functionality.

While I look into this, I'll point out that the foxlibs themselves contain the pathfinder filer which is nearly the same as xfe. So, since you were able to compile fox-libs, you might try out the pathfinder application to see what you think. The look, features and usage are really quite similar to xfe -similar to windows explorer. As I said I kinda like the filer, but there are only about a dozen programs compatible with the fox libs.

Did you try the pcmanfm after all? It's a regular GTK app so Slackware already includes everything it needs, I think.

titopoquito 12-16-2007 03:37 PM

Is there any reason that you installed the newest fox version? At slackbuild.org 1.6.25 is linked, and I have installed 1.6.21 with xfe 1.04. Maybe the newer version breaks somehow backward compatibility?

EDIT: I get also errors with fox 1.6.25 in a vmware stock Slackware system and the slackbuild.org for xfe 1.04. :(

gnashley 12-16-2007 04:11 PM

I think you are probably right- I'm coming up with problems so far using fox-1.6.31. This is one of the reasons I hate stuff written in C++ -there are nearly always compatibility problems unless you use the exact same versions that the software was written for and compiled with.

titopoquito 12-16-2007 04:38 PM

I have successfully compiled fox 1.6.25 (with own buildscript) and xfe 1.04 (from slackbuild.org, just changed the version number). The options I chose for configuring fox:
Code:

          CFLAGS="$SLKCFLAGS" \
                ./configure \
                  --prefix=/usr \
                  --sysconfdir=/etc \
                  --program-prefix="" \
                  --program-suffix="" \
                  --localstatedir=/var \
                --with-xft \
                  $ARCH-slackware-linux # $ARCH is i486

EDIT: to make it complete, SLKCFLAGS="-O2 -march=i486 -mtune=i686", although I don't think it's important here :)

Woodsman 12-16-2007 07:02 PM

Quote:

Did you try the pcmanfm after all? It's a regular GTK app so Slackware already includes everything it needs, I think.
I answered your question in the original thread about listing huge directories. :) I have tried pcmanfm but the program was problematic for me. But that was this past summer and now I don't remember the actual problem. I might compile again and pay more attention this time. I do like the tabbed concept, although dual panes in XFE is satisfactory too. Thanks for asking.

Regarding Pathfinder, I have not tried that app. I checked the Fox web site and the Pathfinder web page was empty. :scratch:

Quote:

Is there any reason that you installed the newest fox version?
I updated because I could not compile XFE 1.04 with version 1.6.25. I could not get the SlackBuild to compile with 1.04 so I tried installing 1.6.31. Then I tried src2pkg and failed again.

With that said ---

After reading the responses in this thread, I removed 1.6.31 and reinstalled 1.6.25. I again then tried src2pkg, using:

src2pkg -e='--with-included-gettext --enable-release' xfe-1.04.tar.gz

No luck, same errors as before.

I then modified the SlackBuilds.org Fox Toolkit SlackBuild to include:

--sysconfdir=/etc \
--localstatedir=/var \
--with-xft \

I compiled version 1.6.31 rather than 1.6.25 (just to be cantankerous and daring).

I then ran the SlackBuilds.org XFE SlackBuild modifying only the version number. Success! I think the --with-xft option was the trick.

BTW, the fonts in XFE now look much better too, which was one reason I stayed away from XFE.

I did not try recompiling Fox Toolkit with src2pkg and the same previously mentioned new options. At that point I was pretty much exhausted for the day (compiling takes a long time on these old boxes!). gnashley, would you please add a post how users should run src2pkg when compiling Fox Toolkit?

Robbie W. (anybody from SlackBuilds.org), would you please consider updating the SlackBuild.org script for Fox Toolkit with at least a commented section about --with-xft?

Thanks for all the help everybody!

rworkman 12-16-2007 09:27 PM

Quote:

Originally Posted by Woodsman (Post 2992669)
Robbie W. (anybody from SlackBuilds.org), would you please consider updating the SlackBuild.org script for Fox Toolkit with at least a commented section about --with-xft?

I will :)
I read through the thread, but please summarize the issue for me (I'm looking for something short and sweet to comment the build script with) :)

Also, for future reference, please mail one of us directly or preferably our users mailing list for stuff like this -- several of us follow this forum, but sometimes we miss posts.

gnashley 12-17-2007 05:40 AM

It was indeed the missing --with-xft option to configure which was causing problems. Strangely enough, using the option *breaks* the foxlib bbuild under Slack-11. But to compile fox-1.6.31 under Slack 12 you should use this command line with src2pkg:
"src2pkg -e='--with-xft --enable-release' fox-1.6.3.tar.gz"
If you include the '-A' option it will create the script for you and a nice slack-desc file which lists the names of the packages fox depends on.

Then to compile xfe:
"src2pkg -A -e='--enable-release' xfe-1.04.src.rpm"
You may be using a tar.gz tarball so adjust accordingly. I usually use source rpm's when available as since they may contain valuable info in the spec files.

About the pathfinder filer, as I said it's included and installed with the fox libs package. The executable is name 'PathFinder' -very much like xfe except with a more 'windowsy' look.

Woodsman 12-21-2007 07:00 PM

Quote:

I read through the thread, but please summarize the issue for me (I'm looking for something short and sweet to comment the build script with)
Simply to add the option to compile --with-xft option. gnashley pretty much explained the issue in the previous post. Using the SlackBuild.org script I could not compile XFE in Slackware 12 until I added that option.

gnashley 12-22-2007 01:39 AM

Woodsman, how do you like XFE? if you are still not happy I have a couple of more suggestions.
There is a filer called uxplor which is a GTK-1.2 filer with a somewhat similar look and functionality - I mean it is a dual-pane filer with a tree-view on the left and a list/icon view on the right. It was originally written for the WHAMp media player, was then adapted by the author of wxoaf (windows X on a floppy) and has been used in puppy-linux. I have done some work on fixing it up for better general usage but have not finished. There is a package for the original version here:
http://distro.ibiblio.org/pub/linux/...ers/uxplor-24/

If you like it I'll try to get some more work done on it.

The other suggestion is that you use the old xfce filer. A couple of years ago I hacked around on the old xfce3 sources and cut out the window manager. The sources contain several useful GTK-1.2 programs which I use. I don't use the filer myself but it works quite well and is very lightweight. The window manager is what was mostly slow about the old xfce. I also use the GUI diff program. I do like the filer because it is compatible with my favorite ROX filer -files can be dragged from one to the other -mostly.
I call the tools-only package xftools and you can get a package here:
http://distro.ibiblio.org/pub/linux/...jects/XFtools/

I'm curious -why don't you like ROX? Is it because t doen't have tree-view. I sometimes think I miss that. But, fact is, I started using ROX about 5 years ago and don't really want to use anything else now. I have mdoified the last GTK-1.2 version with a few added features and it allows me to really 'scream' through my work. I can't imagine using anything else... (I don't care for the newer versions as they are too slow and 'busy' to my way of thinking). Anyway, just wondered what you don't like about it?

Woodsman 12-22-2007 07:39 PM

Quote:

Woodsman, how do you like XFE?
No opinion yet. :)

The last time I tested XFE I saw potential but did not like because the fonts looked terrible. With the results of this thread, however --- enabling XFT support --- the fonts look much nicer now. (I use True Type fonts and always recompile FreeType with the bytecode interpreter enabled.) With the successful results of this thread I plan to test XFE more as the weeks go by.

Question:
I probably should place this question in a new thread, but does anybody know how to completely disable tool tips in XFE? I really do not care for them (that goes for Konqueror and Thunar too) and usually am not interested in all the meta data info. If I want more info about a file I can select the Properties menu option.

Quote:

I'm curious -why don't you like ROX? Is it because t doesn't have tree-view.
That is one reason. I'm also a text person and I detest icon views in any file manager. Most file managers allow configuring the default view, but yes, I do like a tree view on the left side. I last looked at Rox Filer a while ago and my memory is muddy about all I disliked. However, I'll be diplomatic and respond that perhaps I should once again take a look.

I was a great fan of the File Manager in WFWG 3.11 and initially struggled with adapting to File Explorer in NT4. But after many years I now like File Explorer, although those dual panes in WFWG 3.11 were gold. XFE provides both. The one significant caveat to File Explorer is the way the System attribute is not accessible. Not a problem for a command line person, of course, but still a nag. The old 3.11 File Manager had no such problem.

Konqueror provides dual panes too, but tends to be slow with large directories, hence my post in that other thread. I like Konqueror but with a file manager I want speed. Konqueror is great at some things, like the fish or man (page) protocols, but for basic file management I don't think I'm odd in wanting immediate response. And I do not like midnight commander. :)

titopoquito 12-23-2007 05:47 AM

I used xfe a long time and use it still, but since I have switched to xfce4 I like thunar, too. Maybe it's another choice for you. It has a tree view, although I like xfe's a little bit more. thunar is generally fast, and I like the way it handles USB devices and lets me mount them. Speed can be a problem like you wrote in your other post, showing the content of /usr/bin you will see that xfe is MUCH faster than thunar on the same folder.

rworkman 12-28-2007 05:06 PM

Okay, guys, I'm looking at this now.
I'm just going to add the --with-xft to the build script and be done with it, since it's needed on 12.0 and later. Any drawbacks to this of which anyone is aware? (I'm not concerned with 11.0 breakage, as this script is intended for 12.0 and later only)


All times are GMT -5. The time now is 11:01 PM.