Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.kernel > #82026

Bug#1065416: [Cross-toolchain-base-devs] Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely

From Bastian Blank <waldi@debian.org>
Newsgroups linux.debian.bugs.dist, linux.debian.kernel
Subject Bug#1065416: [Cross-toolchain-base-devs] Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely
Date 2024-03-04 23:10 +0100
Message-ID <IeoFr-erMG-17@gated-at.bofh.it> (permalink)
References (4 earlier) <IeboS-ejA0-5@gated-at.bofh.it> <IeePL-elKF-13@gated-at.bofh.it> <Ienq1-eqRa-1@gated-at.bofh.it> <IeboS-ejA0-5@gated-at.bofh.it> <Ienq1-eqRa-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Cross-posted to 2 groups.

Show all headers | View raw


On Mon, Mar 04, 2024 at 01:49:24PM +0100, Helmut Grohne wrote:
> The packaged gcc cross toolchain uses a sysroot during its own build
> still. As it is implemented now, it searches /usr/<triplet>/include, but
> not /usr/include/<multiarch>. So quite fundamentally, the Provides that
> we two agreed do break the build of cross toolchains right now.

Okay, so this problem is about the build of the toolchain, _not_ for
everything that comes after.

> Arguably, a cross toolchain build should probably search
> /usr/include/<multiarch>. I went back and forth a bit with Matthias
> about whether we could add this and did not fully understand his
> reasons, but there is one technical reason we want to avoid it for now.
> We can have both libc6-dev:TARGET and libc6-dev-TARGET-cross installed
> and these packages can have differing versions. When that happens and we
> search both /usr/<triplet>/include and /usr/include/<multiarch>, we'd
> mix two glibc versions with usually bad results (been there).

But this is a search path.  If a file exists in one, the second one is
not found.  So nothing can happen even from version skew.

> The other aspect here is that it is not sufficient to add
> /usr/include/<multiarch> to the search path as you also need
> /usr/include to get a complete linux kernel headers experience. We
> definitely do not want to add /usr/include, because that is known to
> misguide configure tests performed for the target architecture.

We are talking about the toolchain itself.  What configure tests could
that be?  Or is that premature optimization of the gcc build?

> So at least for now, I am convinced that we will need
> /usr/<triplet>/include to be provided by the package providing
> linux-libc-dev-arch-cross.

You just said that the search path used during the build of the
toolchain and the one for everything else are unrelated.  So you are
free to create $BUILD/tmp-include with symlinks for asm, asm-generic,
linux.

The toolchain as installed already finds all headers.  So I still don't
see why we need this in the final system.

> That still leaves the question of which package would have to build that
> new linux-libc-dev-cross. The two obvious answers are linux and
> cross-toolchain-base. Do you have a preference here?

No, the gcc build itself, because it is the only part that needs it from
what you said here.

> I hope this all makes more sense now.

At least to show where it breaks.

Bastian

-- 
Each kiss is as the first.
		-- Miramanee, Kirk's wife, "The Paradise Syndrome",
		   stardate 4842.6

Back to linux.debian.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Matthias Klose <doko@debian.org> - 2024-03-04 09:00 +0100
  Processed: Re: Bug#1065416: linux-libc-dev claims to provide  linux-libc-dev-ARCH-cross, but it doesn't do that completely "Debian Bug Tracking System" <owner@bugs.debian.org> - 2024-03-04 11:30 +0100
  Bug#1065416: [Cross-toolchain-base-devs] Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Bastian Blank <waldi@debian.org> - 2024-03-04 12:40 +0100
  Processed: Re: Bug#1065416: linux-libc-dev claims to provide  linux-libc-dev-ARCH-cross, but it doesn't do that completely "Debian Bug Tracking System" <owner@bugs.debian.org> - 2024-03-04 17:20 +0100
  Bug#1065416: [Cross-toolchain-base-devs] Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Bastian Blank <waldi@debian.org> - 2024-03-04 23:10 +0100
    Bug#1065416: [Cross-toolchain-base-devs] Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Bastian Blank <waldi@debian.org> - 2024-03-05 07:50 +0100
  Bug#1065416: marked as done (linux-libc-dev claims to provide  linux-libc-dev-ARCH-cross, but it doesn't do that completely) "Debian Bug Tracking System" <owner@bugs.debian.org> - 2024-03-20 22:00 +0100
  Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Matthias Klose <doko@debian.org> - 2024-03-20 22:10 +0100
    Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Bastian Blank <waldi@debian.org> - 2024-03-21 08:10 +0100
  Bug#1065416: linux-libc-dev claims to provide linux-libc-dev-ARCH-cross, but it doesn't do that completely Bastian Blank <waldi@debian.org> - 2024-03-21 20:00 +0100
  Bug#1065416: requesting input on recent posts to #1065416 Stefano Rivera <stefanor@debian.org> - 2024-08-16 13:10 +0200
    Bug#1065416: requesting input on recent posts to #1065416 Bastian Blank <waldi@debian.org> - 2024-08-16 20:00 +0200
      Bug#1065416: requesting input on recent posts to #1065416 stefanor@debian.org - 2024-08-17 10:50 +0200
    Bug#1065416: requesting input on recent posts to #1065416 Stefano Rivera <stefanor@debian.org> - 2024-09-04 16:00 +0200

csiph-web