Re: Architecture questions
John Goerzen <jgoerzen@complete.org> writes:
> Hello,
>
> I have some questions about what the architecture should look like on
> AMD64.
>
> On the Alioth environment, I see this:
>
> CHROOT root@arwen:~/port/tar-1.13.92# dpkg --print-architecture
> amd64
> CHROOT root@arwen:~/port/tar-1.13.92# dpkg-architecture
> DEB_BUILD_ARCH=amd64
> DEB_BUILD_GNU_CPU=x86_64
> DEB_BUILD_GNU_SYSTEM=linux
> DEB_BUILD_GNU_TYPE=x86_64-linux
> DEB_HOST_ARCH=amd64
> DEB_HOST_GNU_CPU=x86_64
> DEB_HOST_GNU_SYSTEM=linux
> DEB_HOST_GNU_TYPE=x86_64-linux
Thats the correct information.
> Now, when I use that environment to build a pure 64-bit dpkg and gcc,
> using unpatched packages from sid, I get this result:
>
> PURETEST root@arwen:/port/t/elvis-tiny-1.4# dpkg --print-architecture
> dpkg: warning, architecture `x86_64-linux' not in remapping table
> x86_64-linux
> PURETEST root@arwen:/port/t/elvis-tiny-1.4# dpkg-architecture
> dpkg-architecture: warning: Unknown gcc system type x86_64-linux,
> falling back to default (native compilation)
> dpkg-architecture: warning: Specified GNU system type does not match
> gcc system type x86_64-linux.
> DEB_BUILD_ARCH=x86_64-linux-gnu
> DEB_BUILD_GNU_CPU=
> DEB_BUILD_GNU_SYSTEM=
> DEB_BUILD_GNU_TYPE=
> DEB_HOST_ARCH=x86_64-linux-gnu
> DEB_HOST_GNU_CPU=
> DEB_HOST_GNU_SYSTEM=
> DEB_HOST_GNU_TYPE=
>
> So I have these questions:
>
> 1. Is the proper Debian architecture amd64 or x86_64-linux?
>
> 2. Is the proper GNU architecture x86_64-linux-gnu or x86_64-linux?
>
> 3. How do I fix incorrect ideas about GNU architecture if necessary?
>
> One other interesting tidbit: that dpkg that reported an architecture of
> x86_64-linux had no problem installing .debs with an arch of amd64, and
> in fact, its own package has that arch.
>
> Thanks,
> John Goerzen
You need the patches adding amd64 support to dpkg which are part of
the multiarch stuff. Use the dpkg from alioth, shouldn't harm.
dpkg has:
dpkg --print-architecture
Print target architecture (for example, "i386"). This
option uses gcc.
dpkg --print-gnu-build-architecture
Print GNU version of target architecture (for example,
"i486").
dpkg --print-installation-architecture
Print host architecture for installation.
One of those is used when installing.
MfG
Goswin
Reply to: