Slackware :: Compiling Libraries So They Install To */lib64
Jul 16, 2011
what system variables should I set to what and what options do I pass to ./configure so it builds and install libraries in */lib64 come on a 64bit system should be native 64bit not guest 64bit the guest should be 32bit as in /lib32 for multilib
I just finished compiling xephem to run on fc14 64 bit and the main change was to specify lib64 instead of lib. Is there a document or tutorial that has some general suggestions for getting software to compile for the 64 bit platform?
While trying to compile itcl, one of the error messages caused me to look inside /usr/lib64/tclConfig.sh. I found many paths that were in /tmp, such as...
Code:
# String to pass to linker to pick up the Tcl library from its # build directory. TCL_BUILD_LIB_SPEC='-L/tmp/tcl8.5.8/unix -ltcl8.5'
I'm reading the 3rd official handbook in beta version and I learn that the automated tool "slackpkg" exists only since Slackware 12.1.Before that, how did users install new packages and their libraries ? Did they search each package with their web browsers and then install manually? For me, it seems tedious because I usually work with distributions like Fedora, Debian which use an online package management.Is there another way to download it from console and without web browser?
i wanted to know whether the gcc,g++ libraries are pre-installed i slackware 12.1 or not. if not then from where can i download them .how do i install them? how do i install the java jdk package also?
I tried to compile C program that uses Openssl libraries on shell but got this error. I guess libraries are not linked properly. undefined reference to SSL_library_init()
I just did a fresh install of Slackware 13.0 on a Toshiba laptop, and the ONLY thing I did on it after creating a user and switching to init 4 was to run upgrades. After doing so several applications failed to launch, so I rebooted the machine. I get the following error followed by a login prompt:
Code:
/bin/sh: error while loading shared libraries: libtermcap.so.2: cannot open shaed object file: no such file or directory And nobody can log in, including root. I've got another laptop running 13.0 with all the latest upgrades and it runs fine.
I'm compiling a project that uses boost libraries (1.45.0) for a MIPS target, and when trying to compile with bjam I get the following error:
Code: libboost_system-mt.a(error_code.o): In function `(anonymous namespace)::generic_error_category::message(int) const': error_code.cpp:(.text+0x55c): undefined reference to `__glibc_strerror_r' collect2: ld returned 1 exit status
Basically, I'm trying to compile program A, which depends on LibA and LibB. LibA would not build with my version of G++ 4.4.3 due to a bug, so I've compiled the latest G++ 4.5 (installed in /opt directory) and built that library successfully (also installed in /opt).
I have LibB on my system already, but it was built with the 4.4.3 version. When compiling my final program, am I going to have issues because the .so files were built with different versions of gcc/g++? Or should I just rebuild a special version of LibB with the later version of the compiler just for that program? I can proceed and just see what happens, but I'm a little confused about how things work in a situation like this.
I've never used a 64bit system set up this way. They've been pure 64bit with everything simply in /usr/lib with no /usr/lib64. IIRC That's how Arch used to do it.
My question is, should I continue patching all these makefiles that have libdir=/usr/lib hard coded to keep a sane system? What are the side effects of not putting all the libs in /usr/lib64? These are for the sources that don't use or follow --libdir= and LDFLAGS="-L/usr/lib64".
Can I rm -rf /usr/lib then ln -s /usr/lib64 /usr/lib and still have things work. There are a couple of files in /usr/lib now {codecs/ crda/ libsyslinux.a rpm/ sendmail siconv/ syslinux/ terminfo/ trn/} which came from a stock install.
There are not any 32bit programs I need to run. If I did, that's what KVM is for
I noticed that the official Slackware packages don't contain static libraries. The SlackBuild scripts from slackbuilds.org or from Slackware DVD usually contain --disable-static option to prevent building the .a file. And if configure script doesn't allow such option, the .a file is deleted before the package is created.I am wondering what is the reason for that? Is it just the matter of conserving disk space? Are there also other reasons?
Now i have 64 bit computer i installed Slackware 23 64 bit on it. i followed Alien Bob's multi lib how to and installed needed libraries one by one. everything is fine expect wine configure script can not find some libraries needed: libgsm, libmpg123, libopenal, libxcomposite.
I have already installed 32 bit compatibility packages and used /etc/profile.d/32bit.sh as recommended in Alien Bob's howto. configure -- does not really list anything for pointing for libraries.
I'm trying to compile gwenhywfar-2.6.2 on Slackware64 13.1. That's the error I get:
Code: checking if profiling is to be supported... no checking if OpenSSL should be used... yes checking for openssl includes... -I/usr/include checking for openssl libs... checking whether openssl is usable... configure: error: ssl libraries not found.
As I am learning everyday Slackware, there is something that it doesn't make sense to me. It is about libraries. I tried to install Playonlinux via slackbuild and if I am not wrong this package required a library named libnss3 ). This library was found in seamonkey, a program uninstalled by me. I had to reinstall it in order to build Playonlinus. Now playonlinux runs fine. My question is: why aren't all the libraries included separately on Slackware or its website in order to build automatically everypackage? Is is a huge list? It doesn't make sense to install a package that I will never use in order to have a library..
I installed ripperX using a slackware package I found online. When I try to run the program however I get the following error:
Code: RipperX: error while loading shared libraries: libid3-3.8.so.3: cannot open shared object file: No such file or directory I downloaded what I thought was this library and installed - now if I look in /usr/local/lib, I have the following:
I have a need to recompile mesa. The --enable-32-bit option falls over every header and basic 32 bit lib, and won't compile. But if I try to install 32 bit packages, I could slap a 32 bit binary straight on top of my 64 bit one. What's the accepted way of doing this? I can't seem to find a package in Slackware 13.0
i try to compile freej on slackware 13.1 the problem is with ffmpeg >= 0.6 i have this error
Quote:
In file included from /usr/include/libavutil/avutil.h:81, from /usr/include/ffmpeg/avcodec.h:30, from ../src/include/video_layer.h:22, from ../src/include/impl_layers.h:48,
I'm running 13.1 64bit with alienbob's multilib extension and want to add openmotif. I used Eric's Slackbuild from [URL] applying it to openmotif-2.3.3 and succeeded in compiling the 64bit-version.Next I tried to compile in 32bit-mode, following alienbob instructions:
move lib64 to lib in openmotif.Slackbuild export ARCH=x86_64 . /etc/profile.d/32dev.sh ./openmotif.Slackbuild
linking stops with error-message
Quote:
/usr/lib64/gcc/x86_64-slackware-linux/4.4.4/../../../../lib/crt1.o: In function `_start': /glibc-tmp-88b9835d8519e3638ef4d116a6932cb2/glibc-2.11.1/csu/../sysdeps/i386/elf/start.S:115: undefined reference to `main' collect2: ld returned 1 exit status
Specifically, where does /usr/lib64/gcc/ come from?
Having trouble compiling the regular par2cmdline-0.4, I stumbled upon [URL] modified version of par2cmdline-0.4 with tbb which allows for concurrent processing of files. I have tried compiling this with no luck on my system and was wondering if anyone has had any luck. The ./configure goes through fine, and tbb is detected and used however it craps out just moments after issuing the make command. I have tried both tbb 2.2 and 3.0, but to no avail.
I downloaded wxGTK-2.8.11.tar.gz , compiled and installed ok. here's the problem, there's library lib libwx_gtk2_richtext-2.8.so.0 exist in my directory /usr/local/lib but no lib libwx_gtk2u_richtext-2.8.so.0, look this:
Im trying to recompile glibc from a working slackware-current system using source from a slackware mirror. I'm doing it for testing purpose only. Never done that before, so i'm not sure if i'm doing it right. I get the following error:
Code:
make[2]: Entering directory `/glibc-tmp-a44be92860d34519b0c9a4500878e2e6/glibc-2.11.1/iconvdata' ../Makeconfig:85: ../i486/config.make: No such file or directory /bin/sh: line 0: cd: ../i486: No such file or directory The GNU C library has not been configured.
I'm trying to compile imlib against libpng 1.4. I am using the slack sources from slackware64 13.1, and a SlackBuild file modified with the extra configure parameter "--with-png=/usr/lib64/libpng.so.14"
The final crashing portion of my output is as follows:
I'm trying to build some boot and kernel images for my WD Mybook world edition, which uses an arm processor on my x86_64 host box. Ultimately i'd like to install slackarm. Lilo doesn't work on arm so you have to compile your own kernel and have the bootloader statically linked to kernel inorder to boot the OS. So i'm using my slackware install to cross compile the boot loaders (u-boot) and kernel image (uImage).
I've successfully compiled the buildroot environment which has generated the arm-linux-* binaries, eg, gcc 3.4.2 for arm.
Code:
These are in a build folder (shortened in text below), which i add to my PATH
Code:
I then move to the directory where i want to build the stage1 boot loader, which is supplied in the GPL code from WD.
Code:
However the build fails with a segfault, which looks to be caused by the incorrect libraries and compiler being used:
Code:
It seems to be using my x86_64 libs and gcc 4.4.4 which is the host compiler not the target.
I've tried setting ARCH=arm but got the same results.
Do i need to export some additional variables or unset some to prevent the host files being used instead of the targets?
I'm trying to install squidGuard-1.4, I have a minimal install. I have installed squid-3.2.0.5 without any problems, but squidGuard is driving me crazy
I can run the ./configure with no problems but when I run make, or make install I keep getting this error:
Code: make: *** [y.tab.c] Error 141 And that is is all, no more verbosity or anything else. Error suggests that YACC is missing but bison is present, also db4 (tried with db44 and db3, same story).
Just in case you can see anything I cannot I've attached the config.log