[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Debian for x86-64 (AMD Opteron)

Previously Michael Banck wrote:
> [just replying to bring this to the attention of the dpkg-maintainers.
> At least Wichert does not read -devel. I hope that's alright.]


On Thu, Apr 10, 2003 at 10:12:25AM +0900, GOTO Masanori wrote:
> I think generic 64bit libraries should put on {/lib64, /usr/lib64/,
> /usr/local/lib64, /usr/X11R6/lib64, ...}. Debian 64bit architecture
> packages should have only 64 bit libraries because it saves storage,
> and once we prepare 64bit port, we have no need to use 32bit
> binaries/libraries.  To use 32 bit old libraries, dpkg and apt may
> be needed to modify handling both 32 bit and 64 bit packages like:
> 	apt-get install libgtk2.0-0(32) libgtk2.0-0
> 	dpkg -i libgtk2.0-0_ver_i386.deb libgtk2.0-0_ver_x8664.deb

I don't think that would work: you suddenly have two packages with
the exact same name and version, only with a different architecture.
This would mean that suddenly everywhere there would be an implicit
extra key in identifying a package: besides its name and version
the architecture would be important.

This would mean major changes to how things work:

* dpkg, apt and others would need to store the architecture for each
  package after installation
* all code that deals with package relations needs to be updated to
  check architectures
* dpkg would have to allow two different versions of the same package 
  to be installed

Since dependencies do not specify an architecture we could also run into
all sorts of problem when trying to resolve them.

So basically, I don't think this is a very good idea. However I think we
can solve it differently in a much simpler way:

* modify dpkg (already planned) to allow it to install packages from
  different architectures on a system where it makes sense
* change the naming of the libraries, for example by adding '64' to the
  64bit version of a library

That way you could do something like:

# echo x86-64 >> /etc/dpkg/legal-archs
# dpkg -i libgtk2-2.0-1_i386.deb
# dpkg -i lib64gtk2-2.0-1_x8664.deb


Wichert Akkerman <wichert@wiggy.net>           http://www.wiggy.net/
A random hacker

Reply to: