SlackwareThis Forum is for the discussion of Slackware Linux.
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.
I'm using slack 9, and at the package groups'selction screen, as far as i can remember I just deselected those package group that were realted to X (GNOME, Qt, KDE, X server itself, a package group wich description said something like this: Software libraries some needed by both Gnome and KDE, and TeTex package too), afert that I picked full installation to avoid package selection questions during the installation process.
Now that I try and compiled a kernel using "menu config" i get this error:
root@aspire:/usr/src/linux# make menuconfig
rm -f include/asm
( cd include ; ln -sf asm-i386 asm)
make -C scripts/lxdialog all
make: Entering directory `/usr/src/linux-2.4.20/scripts/lxdialog'
/usr/lib/gcc-lib/i386-slackware-linux/3.2.2/../../../../i386-slackware-linux/bin/ld: cannot open crt1.o: No such file or directory
collect2: ld returned 1 exit status
>> Unable to find the Ncurses libraries.
>> You must have Ncurses installed in order
>> to use 'make menuconfig'
I resolved this issue by using installpkg on the package named "glibc-2.3.1-i386-3" in the "a" directory on the Slack 9.0 cd. Sadly, this is a *huge* package and perhaps constitutes overkill in order to get a simple little "Hello World" C program to compile. It's big, but it works.
I should point out that I was able to compile kernel modules without this library. I'm guessing it's because they have no interface.
ps: if anyone learns how to resolve the "crt1.o" issue without installing a huge library, (static compilation?) please post back, I have limited space on some machines, it would be nice to dump the huge library.
Glibc is not installed by default because not everyone wants to compile C programs. ncurses doesn't have anything to do with compiling programs. It's just neede to run the program menuconfig. If you don't have ncurses installed you can still configure the kernel with make config, or with xconfig if you have X. A part of ncurses is installed along with many other (apparently incomplete) libs in the package elflibs. Some programs will require you to install the full package for them to run. make menuconfig also needs gawk or you'll get a funny menuconfig without any options. In order to compile the kernel you'll need all tese installed: binutils, findutils, gawk, gcc, grep, make, kernel-headers, kernel source. For most other C programs you'll need the same without the kernel source, but some do require the kernel source to be present just to know what version to compile for. Some programs will need autoconf and automake. Still others will require libtool and m4.