LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 01-19-2011, 07:06 PM   #1
tpreitzel
Member
 
Registered: Aug 2007
Posts: 253

Rep: Reputation: 28
Multi-Lib Compat32 Binaries


Aren't these binaries supposed to be installed in /usr/bin/32?

Apparently, some of the compat32 packages are installing binaries in /usr/bin ...e.g,

gtk+2-compat32-2.22.1-x86_64-3

Although I haven't checked, I don't believe this particular package is the only one.
 
Old 01-20-2011, 01:19 AM   #2
gnashley
Amigo developer
 
Registered: Dec 2003
Location: Germany
Distribution: Slackware
Posts: 4,752

Rep: Reputation: 462Reputation: 462Reputation: 462Reputation: 462Reputation: 462
multi-lib *Linux* systems don't use separate directories for binary executables -only the libs are separated into /lib[64] and /usr/lib[64]
 
Old 01-20-2011, 02:09 AM   #3
tpreitzel
Member
 
Registered: Aug 2007
Posts: 253

Original Poster
Rep: Reputation: 28
Quote:
Originally Posted by gnashley View Post
multi-lib *Linux* systems don't use separate directories for binary executables -only the libs are separated into /lib[64] and /usr/lib[64]
I don't think so unless such a change is very recent and since the release of 13.1 ... at least not on my Slackware64 system. *

I think that I'm receiving an error on boot due to the inclusion of a 32 bit binary in /usr/bin instead of /usr/bin/32 ... which is where Slackware64 normally installs 32 bit binaries.

* I'll admit that I'm still carrying most of the 32 bit compat32 libraries from 13.1 though as I don't want to keep updating them until an actual release is made.

Last edited by tpreitzel; 01-20-2011 at 02:18 AM.
 
Old 01-20-2011, 04:02 AM   #4
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 5,223

Rep: Reputation: Disabled
Quote:
Originally Posted by gnashley View Post
multi-lib *Linux* systems don't use separate directories for binary executables -only the libs are separated into /lib[64] and /usr/lib[64]
Well, my convertpkg-compat32 script moves 32-bit binaries into a "32" subdirectory of bin, in order not to overwrite the 64-bit original on a 64-bit Slackware system.

I treat some packages differently, like the gtk+2, gdk-pixbuf2 and pango packages, because the files these packages install into the bin directory are renamed with a "-32" suffix instead of moving them into a "32" subdirectory. This is explicitly supported in the Slackware boot scripts.

Quote:
which is where Slackware64 normally installs 32 bit binaries
Slackware64 does not have 32-bit binaries at all. My multilib packages are not official Slackware packages.

Eric
 
Old 01-20-2011, 04:46 AM   #5
tpreitzel
Member
 
Registered: Aug 2007
Posts: 253

Original Poster
Rep: Reputation: 28
Quote:
Originally Posted by Alien Bob View Post
Well, my convertpkg-compat32 script moves 32-bit binaries into a "32" subdirectory of bin, in order not to overwrite the 64-bit original on a 64-bit Slackware system.
It sounds logical to me ...

Quote:
I treat some packages differently, like the gtk+2, gdk-pixbuf2 and pango packages, because the files these packages install into the bin directory are renamed with a "-32" suffix instead of moving them into a "32" subdirectory. This is explicitly supported in the Slackware boot scripts.
Wonderfully consistent ... Well, one of those 32 bit packages is causing an error on boot-up which is probably related to my incomplete upgrade of the compat32 packages. I doubt other systems running Alien-Bob-Ware64 are immune, either, due to similar reasons, i.e. the refusal to constantly upgrade compat32 packages during the development cycle.

Quote:
Slackware64 does not have 32-bit binaries at all. My multilib packages are not official Slackware packages.

Eric
Well, if carrying the name of Slackware isn't an official sanction of your multi-lib packages, can we convince Pat to use a system similar to BW64 instead of your multi-lib approach and moderate the use of the label, Slackware64, to mean strictly 64 bit Slackware and dub your 32 bit additions to Slackware64 as AlienBobWare64?

Personally, I don't care all that much as both approaches have their problems ...

Last edited by tpreitzel; 01-20-2011 at 05:28 AM.
 
Old 01-20-2011, 05:52 AM   #6
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 5,223

Rep: Reputation: Disabled
Quote:
Originally Posted by tpreitzel View Post
one of those 32 bit packages is causing an error on boot-up which is probably related to my incomplete upgrade of the compat32 packages
Can you be specific about the error message? You've made me curious now.

Quote:
Well, if carrying the name of Slackware isn't an official sanction of your multi-lib packages, can we convince Pat to use a system similar to BW64 instead of your multi-lib approach and moderate the use of the label, Slackware64, to mean strictly 64 bit Slackware and dub your 32 bit additions to Slackware64 as AlienBobWare64?
I am certain that Pat has used my multilib packages at some point, but the fact is that Slackware64 was conceived to be a pure 64-bit OS, while still allowing for the possibility to add an optional 32-bit layer without much effort.
As such, the multilib packages are "unofficial" in the sense that only packages inside the Slackware package tree are "official".
Yes, I host my multilib packages on slackware.com, I am one of the "core team" and I built slackware64 from scratch way back. That still does not make my packages "official". But being close to the official source allows me to be ready with updated multilib gcc and glibc packages whenever Pat upgrades the 64-bit originals in Slackware64. That way, users of multilib Slackware64 are not left out in the cold for more than a few hours.

Eric
 
Old 01-20-2011, 06:09 AM   #7
tpreitzel
Member
 
Registered: Aug 2007
Posts: 253

Original Poster
Rep: Reputation: 28
Quote:
Originally Posted by Alien Bob View Post
Can you be specific about the error message? You've made me curious now.



I am certain that Pat has used my multilib packages at some point, but the fact is that Slackware64 was conceived to be a pure 64-bit OS, while still allowing for the possibility to add an optional 32-bit layer without much effort.
As such, the multilib packages are "unofficial" in the sense that only packages inside the Slackware package tree are "official".
Yes, I host my multilib packages on slackware.com, I am one of the "core team" and I built slackware64 from scratch way back. That still does not make my packages "official". But being close to the official source allows me to be ready with updated multilib gcc and glibc packages whenever Pat upgrades the 64-bit originals in Slackware64. That way, users of multilib Slackware64 are not left out in the cold for more than a few hours.

Eric
Eric

The error is related to some cache ... Are you using a 32 bit program at boot-up? I'll have to recheck later today as I may be wrong ...BTW, I DO appreciate your work in creating this 32 bit layer. It's one approach and I've grown use to it... I'll try to provide further details on the error later today.

Last edited by tpreitzel; 01-20-2011 at 06:11 AM.
 
Old 01-20-2011, 11:10 AM   #8
gnashley
Amigo developer
 
Registered: Dec 2003
Location: Germany
Distribution: Slackware
Posts: 4,752

Rep: Reputation: 462Reputation: 462Reputation: 462Reputation: 462Reputation: 462
Oh, my apologies, tpreitzel!
@ Eric, has this been the policy from the beginning of Slackware64? If so, then this looks very much like Solaris or other Unix system. I don't see the sense of it ,frankly. Why should there be a need for separate bin dirs? I mean, why would you have to accomodate binary executables for both arches on one system? As far as I know, nobody else is doing that on a linux system. If a 32-bit binary executable is overwriting an existing 64-bit one, that looks like a bug in the compat32 package to me -or it means that the 32-bit exe is not needed at all.
So does multi-lib slack64 have all of these?:
/bin, /bin32, /sbin, /sbin/32, /usr/bin, /usr/bin32, /usr/sbin, and /usr/sbin32? (What about /usr/local??)
Does it also have /etc/32 and /usr/etc32?
 
Old 01-20-2011, 11:48 AM   #9
Darth Vader
Member
 
Registered: May 2008
Location: Romania
Distribution: DARKSTAR Linux 2008.1
Posts: 599

Rep: Reputation: 109Reputation: 109
Come on! I hope that we will not now begin to talk about personalities and other nice things.

You know that's my opinion about Multi-Lib?

Imagine that you married a black girl from Sudan, then ask her to dye her hair blond, wearing blue contact lenses, and to depigment her skin. If you want a blonde with blue eyes, it's not more easy to marry a Swedish?

If you really like 64, you must stay in Pure64, for God's sake! Or go back into 32! NO PUN INTENDED!
 
Old 01-20-2011, 12:37 PM   #10
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 5,223

Rep: Reputation: Disabled
Quote:
Originally Posted by Darth Vader View Post
Come on! I hope that we will not now begin to talk about personalities and other nice things.

You know that's my opinion about Multi-Lib?

Imagine that you married a black girl from Sudan, then ask her to dye her hair blond, wearing blue contact lenses, and to depigment her skin. If you want a blonde with blue eyes, it's not more easy to marry a Swedish?

If you really like 64, you must stay in Pure64, for God's sake! Or go back into 32! NO PUN INTENDED!
You are of course entitled to your opinion :-) And Slackware64 will be ideal for you, now and in the future.

I have a more pragmatic view, and therefore, for the rest of the people who want the strengths of a 64-bit OS but with more compatibility, I will keep maintaining a multilib subsystem.

Eric
 
Old 01-20-2011, 12:58 PM   #11
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 5,223

Rep: Reputation: Disabled
Quote:
Originally Posted by gnashley View Post
Oh, my apologies, tpreitzel!
@ Eric, has this been the policy from the beginning of Slackware64? If so, then this looks very much like Solaris or other Unix system. I don't see the sense of it ,frankly. Why should there be a need for separate bin dirs? I mean, why would you have to accomodate binary executables for both arches on one system? As far as I know, nobody else is doing that on a linux system. If a 32-bit binary executable is overwriting an existing 64-bit one, that looks like a bug in the compat32 package to me -or it means that the 32-bit exe is not needed at all.
So does multi-lib slack64 have all of these?:
/bin, /bin32, /sbin, /sbin/32, /usr/bin, /usr/bin32, /usr/sbin, and /usr/sbin32? (What about /usr/local??)
Does it also have /etc/32 and /usr/etc32?
There are no "bin32" directories in Slackware64 and there will not be. When you convert a 32-bit Slackware package using my "convertpkg-compat32" script so that it can be installed on Slackware64, some files in the package are re-arranged so that they do not overwrite a 64-bit binary. The "compat32" packages are stripped from all binaries anyway, except those in /usr/bin and these are moved to subdirectory /usr/bin/32 before re-packaging. You will probably never use these binaries and they are not in the Slackware $PATH either.

What other Linux distros do is of no interest to me.

Eric
 
Old 01-20-2011, 04:13 PM   #12
cwizardone
Senior Member
 
Registered: Feb 2007
Distribution: Slackware64-current & "True Multilib." PC-BSD.
Posts: 2,231

Rep: Reputation: 176Reputation: 176
Quote:
Originally Posted by Alien Bob View Post
...I have a more pragmatic view, and therefore, for the rest of the people who want the strengths of a 64-bit OS but with more compatibility, I will keep maintaining a multilib subsystem. Eric
Thank you very much! All your hard work is truly appreciated!!!

Last edited by cwizardone; 01-20-2011 at 04:15 PM.
 
Old 01-20-2011, 06:45 PM   #13
slackass
Member
 
Registered: Apr 2006
Location: SE Texas
Distribution: Slack64-C ML
Posts: 883

Rep: Reputation: 78
Talking

Quote:
Originally Posted by Darth Vader View Post

If you really like 64, you must stay in Pure64, for God's sake! Or go back into 32! NO PUN INTENDED!


Well, I run 8 gigs of ram that 32 bit won't pick up so I use Slack64.
The 3 gigs that 32 will detect don't float my boat because I also run Win7 with VirtualBox that I allocate 3 gigs to.
I also use some 32 bit apps.
So for me there is no other option but to run “Slack64 Multi-Lib”.
 
Old 01-20-2011, 07:14 PM   #14
Darth Vader
Member
 
Registered: May 2008
Location: Romania
Distribution: DARKSTAR Linux 2008.1
Posts: 599

Rep: Reputation: 109Reputation: 109
Quote:
Originally Posted by slackass View Post
Well, I run 8 gigs of ram that 32 bit won't pick up
Err... That silly 32 will pick-up up to 64G, with HIGHMEM64G/aka PAE kernel. You will be limited by the motherboard first, before to shot the processor barrier. Usually, 16G. Trust me, I tested.

Quote:
Originally Posted by slackass View Post
The 3 gigs that 32 will detect don't float my boat because I also run Win7 with VirtualBox that I allocate 3 gigs to.
You can allocate up to 4G per process/application in the PAE mode. Where is the problem?

Quote:
Originally Posted by slackass View Post
I also use some 32 bit apps.
I like some blondes too...

Quote:
Originally Posted by slackass View Post
So for me there is no other option but to run “Slack64 Multi-Lib”.
Option 1: a PAE kernel on Slackware(32) will make you happy.
Option 2: a x86_64 kernel on top of Slackware(32) will make you happy.
Option 3: Port/patch those 32 bit apps into 64.
Option 4. Just using PURE64 will make you happy.

Like I said previously, no pun intended!

Last edited by Darth Vader; 01-20-2011 at 07:22 PM.
 
Old 01-20-2011, 07:35 PM   #15
slackass
Member
 
Registered: Apr 2006
Location: SE Texas
Distribution: Slack64-C ML
Posts: 883

Rep: Reputation: 78
But, "for me" it's so much simpler just to run Slack64-ML without going through all that stuff.

re:
Option 4. Just using PURE64 will make you happy.
I'm not real sharp on this stuff but I was under the impression that GoogleEarth won't run on pure 64.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Missing libuuid.so.1 in multi-lib samac Slackware 7 02-23-2011 02:51 PM
Multi lib with current LFS? ProtoformX Linux From Scratch 6 08-06-2010 02:31 PM
[SOLVED] multi-lib Slackware64 13.1 slugman Slackware 5 07-10-2010 01:40 PM
Multi-Lib from Pure-64 reptiler Linux - General 10 04-01-2009 11:01 PM


All times are GMT -5. The time now is 10:46 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration