Slackware64 multilib, can't compile 32-bit apps.
I installed Slackware64 13.1 two days ago for the first time ever on my Dell Inspiron 1525 after using linux for about a year (Debian and Fedora, though I've installed a few others in VMs). I've really enjoyed Slackware so far, it's been comparatively trouble free. However, I decided to follow AlienBOB's instructions to make it multilib, and though I thought I'd done everything right - I can't seem to compile any 32-bit 13.1 slackbuilds; I've tried with sbopkg as well as the normal method, but it simply won't work. I must have done something wrong, but I've re-read the instructions on getting mutilib working several times and I can't work out what it is. This is the first time I've joined a Linux-oriented forum, so I'm not used to telling other people what's going wrong. What sort of info should I give? Also, is this the right place for this question? :P
Cheers. |
Yes, here's the right place for your question. Maybe Alien Bob himself will come here to give you proper advice. But, for now, have you fallowed the steps to compile 32 bit programs on a 64 bit environment?
http://alien.slackbook.org/dokuwiki/...2-bit_programs By having the multilib support on your system, it will make you able to _run_ 32bit programs without any needed action. But, compiling 32 bit programs will need some modifications, specified on the above link. |
I just did this an hour ago in order to run Skype, Alien Bob's guide works perfectly...............Thanks Alien, may need to throw a few more $$ to your fund soon. (Gotta get a new job 1st)
|
Quote:
RajahBrooke read Alien Bob's guide, its easy. I just compiled wine in Slackware64 using the same info. It works. |
Thankyou for the replies.
@ rfernandez: As I said in the OP - I followed every instruction - including typing Code:
. /etc/profile.d/32dev.sh @ Daedra and SqdnGuns: I know the instructions are supposed to be easy to follow, and I read every post on the internet mentioning AlienBOB's instructions, as well as re-reading his instructions endlessly. So, though I am very happy that it works for you - it clearly hasn't for me. I want to give useful information so I can get this sorted and get out of everyone's hair - please, tell me how I can be more helpful. |
ignore this
wrong post, sorry |
are you sourcing /etc/profile.d/32dev.sh and launching the slackbuilds as root (needed)?
which slackbuilds are you trying to build for 32bit? post the modified slackbuilds and output of the failing build: if it's an huge output you can use http://pastebin.com |
Sounds like you've done everything right.
Here's one more modification to try in the build script: CFLAGS="-m32" CXXFLAGS="-m32" |
hello, when you say "sourcing", what exactly do you mean? I do "su -" then I type ". /etc/profile.d/32dev.sh" and press enter before trying to compile anything. Is that the correct order?
I've mostly been trying to install skype (though I've tried virtualbox, which completely fails to compile) - it appears to work, but then when I try to launch skype, the icon flashes for a moment, than disappears. Here's the slackbuild - note the only change I've made was to the ARCH - which you have to do, unless I completely misunderstood: Code:
#!/bin/sh It's obvious that I've done something wrong while following the instructions to make the system multilib, but I don't know where - I was very careful to follow the instructions... I don't know what to do to find where I've messed up. This is frustrating because, otherwise, this is pretty much the most trouble-free install I've had... a little problem with mplayerplug-in (occasionally sound stops working for no good reason) and the fact that I need to do "modprobe -r b43 ; modprobe -r wl ; modprobe wl" everytime I reboot otherwise my system won't detect my wireless (it's put wireless as eth1 instead of wlan0 and doesn't think the former exists). Otherwise - rock solid. |
that skype script doesn't compile to you a 32bit skype, it simply take the skype distribution tarball and packages it following some standard slackware paths.
so, in this special case and a few others like this where you don't have to compile, the ". /etc/profile.d/32dev.sh" (same thing as "source /etc/profile.d/32dev.sh") is not really needed (it contains some environment stuff that you should need only at build time). you can't probably run it because to run 32bit apps you need in your multilib system also a set of basic -compat32 packages (because the 32bit binaries need 32bit libs on the system), as the ones generated by the massconvert32.sh script (you should have it available, is in the compat32-tools package). you can convert them yourself from a slackware-13.1 mirror and install the results running as root Code:
mkdir compat32 these are the libraries skype uses (the ones on /usr/lib are from the -compat32 packages) Code:
$ ldd skype |
@ ponce: I said I followed every instruction - I used massconvert, with the -u option, and pointed it at a UK slack mirror. I have all the compat32 tools, and I installed all the compat32 packages; I can see them all installed with pkgtool. Should I try following the instructions again from the start, as if I'd not done any of it? Is this safe?
Nothing will compile - virtualbox fails altogether. I know I must have either misunderstood, or missed something in the AlienBOB's guide - I know it's a good guide since I'm the only one with any problems :P |
can you please post the output of
Code:
ldd /usr/bin/skype Code:
skype and the output of Code:
zgrep IA32 /proc/config.gz also the output of Code:
ls -1 /var/log/packages/* if something else doesn't build we should see the output errors you got from building, so we have something to base on our guesses (if not we blind-shoot) ;) |
alright - I've got an exam now, so I can't do all that now. However, when I get back, I'll try and build virtualbox - since I know that doesn't work. I've uninstalled the skype package already, I'm afraid - but I will post the output of "ls -l /var/log/packages/*" when I get back... won't that be absolutely massive? I must have like 15000 packages on this or something (full install, plus things I needed for whatever reason). Not used the pastebin before - when I work it out, I'll post.
edit - here's the result for "ls -l /var/log/packages/*" |
to try help you i need also the other outputs: virtualbox is not a 32bit application, and so is not related to your multilib problem.
remember to post the errors you got: "this doesn't work/build" is not enough to have help. but, as first thing that I can see from the /var/log/packages stuff, you have not installed alien glibc multilib packages. |
Looks like you've upgraded to these packages:
gcc-4.4.4_multilib-x86_64-1alien.txz gcc-g++-4.4.4_multilib-x86_64-1alien.txz gcc-gfortran-4.4.4_multilib-x86_64-1alien.txz gcc-gnat-4.4.4_multilib-x86_64-1alien.txz but missed all these: gcc-java-4.4.4_multilib-x86_64-1alien.txz gcc-objc-4.4.4_multilib-x86_64-1alien.txz glibc-2.11.1_multilib-x86_64-3alien.txz glibc-i18n-2.11.1_multilib-x86_64-3alien.txz glibc-profile-2.11.1_multilib-x86_64-3alien.txz glibc-solibs-2.11.1_multilib-x86_64-3alien.txz glibc-zoneinfo-2.11.1_multilib-noarch-3alien.txz |
All times are GMT -5. The time now is 03:01 PM. |