I usually can't find binary rpms for software I want to use or try so I often try to download source and compile it. I can't remember any such attempt ever working. It has been so bad that I even wiped FC1 and reinstalled, selecting all the default packages in the "developers tools" section. Still, I can't ever get a damn thing to compile. For example, I'm desperately trying to get *any* gnutella client to run on this machine so I don't have to boot to Windows for bearshare. Should be simple, right? I tried mutella but running the 'make' step generates errors including: [...] g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include -D_REENTRANT -D_MIT_POSIX_THREADS -fno-exceptions -fno-check-new -g -O0 -c -o gnushare.o `test -f 'gnushare.cpp' || echo './'`gnushare.cpp gnushare.cpp: In member function `void MGnuShare::ResetDirectories(long unsigned int&, u_long*)': gnushare.cpp:220: error: `assert' undeclared (first use this function) gnushare.cpp:220: error: (Each undeclared identifier is reported only once for each function it appears in.) [...] (Actually that's copied from another person's post who had the same problem.) I posted to the help forums for that software but no one replied so I gave up and tried qtella. It claims: 'All you need are the Qt libraries compiled with thread support. You can check whether these libraries exists by typing "locate qt-mt". If locate does not list the libraries...' No problem, on my system "locate qt-mt" says: [trevor@localhost qtella-0.6.4]$ locate qt-mt /usr/lib/qt-3.2/lib/libqt-mt.so.3.2.3 /usr/lib/qt-3.2/lib/libqt-mt.so.3 /usr/lib/qt-3.2/lib/libqt-mt.so.3.2 I figure that means yes, I have them so I try to follow the instructions: 1. tar xzf qtella-VERSION.tar.gz 2. cd qtella-VERSION 3. ./configure ... But at step 3 I get: [trevor@localhost qtella-0.6.4]$ ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes /home/trevor/qtella-0.6.4/missing: Unknown `--run' option Try `/home/trevor/qtella-0.6.4/missing --help' for more information configure: WARNING: `missing' script is too old or missing checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for g++... g++ checking for C++ compiler default output file name... a.out checking whether the C++ compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... gcc3 checking for gcc... gcc checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking dependency style of gcc... gcc3 checking for a BSD-compatible install... /usr/bin/install -c checking for Qt moc... Qt's moc not found! If you have installed Qt in an unusual place, please use the "--with-qt-moc=" option So obviously "all I need" is not what is claimed. :-( One caveat: I did upgrade to the new KDE beta release so I have some newer version of Qt on my system I think. 1. Should someone without system-level programming experience on linux ever attempt to compile software? It is certainly incomprehensible to me and any error stops me dead in the water. The info generated never enlightens me or gives me any idea how to "fix" the problem of the moment. 2. Why can a plain vanilla, out of the box FC1 system never successfully compile any source I ever download? Is there something else I should install on my system to be able to compile most software out there? Or do I generally need to become an expert on each individual package I download and try to install? 3. How many years of computer science classes will I realistically need to attend before I can understand half of what is going on when I try to compile any non-trivial linux program? frustrated beyond description at all the days I've wasted without any results. :-( -- Trevor Smith | trevor@xxxxxxxxxxxxxx