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

Re: Confusing versioning of libstdc++6[-...]



Package: gcc-3.4
Version: 3.4.6-5
Severity: important

Stephan Krempel writes:
> Dear Debian GCC Maintainers,
>
> first I want to wish you a happy new year and thank you for your work.
>
> This time I am a bit confused about some of the package names and
> versions.
>
> libstdc++6 is from source gcc-4.1, but libstdc++6-dbg, -dev, -doc,
> -pic are still from gcc-3.4. As a simple user I would expect that
> installing libstdc++6[-...] give me everything in matching versions.
>
> Is there any reason why libstdc++6[-...] are not only dependency
> packages depending on the respective package with the default
> compiler ABI, at the moment libstdc++6-4.1[-...]?
>
> As long as we are in unstable this wouldn't be of high interest, but
> in the upcomming stable release some users could become very
> confused.
>
> I hope this is not an already discussed issue, couldn't find an old
> thread about it.

Indeed, this is confusing.

The gcc-3.4 source package builds libstdc++6-{dbg,dev,pic} which
depend on libstdc++6 (>= 3.4.6-5).

The gcc-4.1 source package builds libstdc++6-4.1-{dbg,dev,pic} which
depend on libstdc++6 (>= 4.1.1-19).

The current version of libstdc++6 satisfies both dependencies, and
this is proably wrong.

Stephan, the workaround for now is to install
libstdc++6-4.1-{dbg,dev,pic}, and remove libstdc++6-{dbg,dev,pic}.

Proposed solution 1:
1) Do not build libstdc++6-{dbg,dev,pic} from gcc-3.4 anymore.
2) In gcc-4.1, change libstdc++6-4.1-{dbg,dev,pic} to
   libstdc++6-{dbg,dev,pic}, with Conflicts and Replaces.

Proposed solution 2:
1) In gcc-4.1, change libstdc++6-4.1-{dbg,dev,pic} to Conflict with
   and Replace libstdc++6-{dbg,dev,pic}.

Proposed solution 3:
1) Do not build libstdc++6-{dbg,dev,pic} from gcc-3.4 anymore.
2) In gcc-defaults, build libstdc++6-{dbg,dev,pic} that, in etch,
   depend on libstdc++6-4.1-{dbg,dev,pic}.

I personally vote against solution 2, since we don't build g++-3.4
anymore and so the libstdc++6-{dbg,dev,pic} from gcc-3.4 are useless
anyway.  I think solution 3 is the best if we want to support multiple
versions of g++.

-- 
Ludovic Brenta.



Reply to: