LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   HELP - How do I run 32 bit applications on 64 bit Slackware 13? (http://www.linuxquestions.org/questions/slackware-14/help-how-do-i-run-32-bit-applications-on-64-bit-slackware-13-a-772221/)

CCR_Diver 11-29-2009 02:09 AM

HELP - How do I run 32 bit applications on 64 bit Slackware 13?
 
Hi:

I've just installed Slackware 13 (64 bit) on my ASUS labtop. So far I have only one show stopper. I'm trying to run CISCO Packettracer5.2 (linux 32 bit version) and it does not seem to run on my 64 bit system. I've seen related posts for other distros that mention a ia32-libs package, but I cannot find a Slackware version of this, or source code. Any ideas and/or advice.


Vital stats:

Slackware 13.0.0.0.0
Intel Core 2 Duo T6400@2.00Ghz
vmlinuz-huge-2.6.29.6

I also have the nvidia binary drivers installed and working.

I've been using Slackware for years but I'm new to the 64 bit game.

Thanks.

CCR_Diver

rg3 11-29-2009 02:36 AM

http://alien.slackbook.org/dokuwiki/...kware:multilib

Cheesesteak 11-29-2009 02:38 AM

Out of the box, Slackware64 is pure 64-bit only. Read the following to learn what you need to run 32-bit as well:

http://alien.slackbook.org/dokuwiki/...kware:multilib

I was beaten to the punch by rg3... can't win 'em all.

zbreaker 11-29-2009 03:12 PM

Just follow the procedure per the link(s) above and you'll be in business. My Slackware64-multilib is smooth & sweet.....

MQMan 11-30-2009 01:36 PM

You could also try this solution.

It might be easier than installing the multilib stuff. But, you will need access to a 32-bit system, to create the static linked version.

Cheers.

cwwilson721 11-30-2009 03:08 PM

Quote:

Originally Posted by MQMan (Post 3774695)
You could also try this solution.

It might be easier than installing the multilib stuff. But, you will need access to a 32-bit system, to create the static linked version.

Cheers.

THE EASIEST WAY IS ALIEN BOB'S

The way you describe only does java. My system is a heck of a lot more than java.

And what's easier than:
  • Download the packages
  • Install them
Doesn't get any easier

MQMan 11-30-2009 05:16 PM

Quote:

Originally Posted by cwwilson721 (Post 3774795)
THE EASIEST WAY IS ALIEN BOB'S

That's a matter of opinion.
Quote:

Originally Posted by cwwilson721 (Post 3774795)
The way you describe only does java. My system is a heck of a lot more than java.

If you read the thread, you'll find that I couldn't get it working for Java.

But, it does work perfectly for other applications.

Cheers.

cwwilson721 12-01-2009 05:31 AM

Well, I followed the "official ?Slackware way to make multilib".

And guess what? Java works.

Skype works.

Wine works.

All other apps work, that would work on 32 bit SW.

So...

(And it took less than 5 min)

The question is, now:

Do you want to mess around with symlinks, statically linking files in folders all over your system, a "system" that doesn't work?

Or do you want to use the route the the main developer of SW 64bit designed?

I think I'd choose Alien Bob's way, thank you very much.

CCR_Diver 12-02-2009 06:15 PM

Thanks to all who posted to this thread. This sounds like just the info I need. Sorry to take so long getting back to this post, but I have a daytime job that leaks over into nigh time (if you know what I mean).

CCR_Diver

CCR_Diver 12-03-2009 07:11 PM

Ok, I finally got a few moments to take a shot at this and I must be missing something. I used the instructions in the "Quick and Dirty" section and I still cannot run 32 bit binaries. Also, when I follow the instructions to compile 32 bit code, I get the following.

bash-3.1$ . /etc/profile.d/32dev.sh
bash-3.1$ cc -o foo3 foo.c
In file included from /usr/include/features.h:354,
from /usr/include/stdio.h:28,
from foo.c:1:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory

My Slack 13/32 is about 14 days older than my Slack 13/64. Any chance they made a stealth update between the two downloads? Can anybody clue me in?

CCR

vik 12-03-2009 07:37 PM

You need to use $CC (which points to /usr/bin/32/gcc) instead of cc to compile your program--cc is symlinked to /usr/bin/gcc which is the 64-bit version, while /usr/bin/32/gcc is the 32-bit version.

CCR_Diver 12-03-2009 11:02 PM

Quote:

Originally Posted by vik (Post 3779064)
You need to use $CC (which points to /usr/bin/32/gcc) instead of cc to compile your program--cc is symlinked to /usr/bin/gcc which is the 64-bit version, while /usr/bin/32/gcc is the 32-bit version.

Been there done that, still don't work. Also, I cannot run any programs compiled on a 32 bit Linux system (my old laptop that sill runs Slack 11). When I try to run a 32 bit binary it just gives me "No such file or directory". I think I have some kind of library problem, but at this point I'm stumped. What am I doing wrong? Anyone got any ideas?

Do I need to do something to the kernel? I've read other posts that lead me to think I need some kind of 32bit driver linked into the kernel. Can anyone confirm or this?

vik 12-05-2009 03:03 AM

OK, then it looks like you're missing the file /usr/include/gnu/stubs-32.h. In pkgtool, do you have glibc-2.9-multilib-x86_64-3alien installed? That package contains the file you need: it's one of the packages created when you follow the wiki. Did you have any error messages following the wiki instructions?

One thing to watch out for with multilib is the video driver install--if you choose the option to create the Slackware package, you only get 64-bit video drivers.

Hangdog42 12-05-2009 07:31 AM

Quote:

Do I need to do something to the kernel? I've read other posts that lead me to think I need some kind of 32bit driver linked into the kernel. Can anyone confirm or this?
If you're using a stock Slackware kernel you should be fine. If you rolled your own, you need to make sure it can run 32 bit binaries (IA32 Emulation should be enabled in the Executable File Formats section of the kernel config).


All times are GMT -5. The time now is 01:34 AM.