crates-build-env
crates-build-env copied to clipboard
`libunwind-14-dev` breaks `libunwind` on Linux
I am attempting to add a package to the linux image.
During the process of building the image (with libc++-dev and libc++abi-dev added to packages.txt), I get an error saying:
#6 302.5 Some packages could not be installed. This may mean that you have
#6 302.5 requested an impossible situation or if you are using the unstable
#6 302.5 distribution that some required packages have not yet been created
#6 302.5 or been moved out of Incoming.
#6 302.5 The following information may help to resolve the situation:
#6 302.5
#6 302.5 The following packages have unmet dependencies:
#6 302.6 libunwind-14-dev : Breaks: libunwind-dev
#6 302.6 E: Unable to correct problems, you have held broken packages.
I have seen on a thread on some other forum that Ubuntu 22.04 has issues with libunwind-14
Please advise on what action is needed, I am a bit lost...
@jyn514 @Nemo157 what are your thoughts on this?
I have seen on a thread on some other forum that Ubuntu 22.04 has issues with libunwind-14
@OWissett what were the issues that were described? Depending on the actual issues it actually feels like this could be a problem.
Do other packages here depend on it?
I see a chance that it could be removed, depending on the above, following this comment related to the distro upgrade:
here's what I did last time I upgraded the image: For each package that's been removed in the new version,
* See which commit it was added in. a) If it was present all the way back to the initial commit, it's likely just what was installed on our server at the time and you can safely remove it. b) If it was explicitly added in a PR to this repo, post here pinging the author of the PR, and asking whether they still need the package.
and that libunwind
was added in the initial commit ( edab36e7794bde1a66632741c27c755acc59ed64 ).
@OWissett can you confirm that switching to libunwind14-dev
doesn't break the build script for libunwind-sys
(https://docs.rs/crate/libunwind-sys/latest/source/build.rs)? If so, this change seems ok to me.
I tried pinging the author of libunwind-sys, but they appear to have been banned from crates.io or something like that ... not sure how that's possible.
I think they changed github username (https://crates.io/users/anfedotoff), which hits a edgecase that docs.rs identifies crates.io accounts by username rather than userid and doesn't update them until a new version of the crate is published. (Interestingly we do show the new github username in the repository link because of the periodic repo-data updates).
Also, there's an upstream bug about this linked in https://github.com/rust-lang/crates-build-env/pull/121
@syphar This is where I have seen this similar problem reported: https://bugs.launchpad.net/ubuntu/+source/google-glog/+bug/1991919
If we have libunwind-14-dev
instead of libunwind-dev
, then libgstreamer1.0-dev
breaks:
#7 12.66 The following packages have unmet dependencies:
#7 12.74 libgstreamer1.0-dev : Depends: libunwind-dev
Same thing happens if you just delete the libunwind-dev package
Ok, then I think we're blocked on the upstream bug.
It seems to work if I install libc++abi-dev
and libc++-dev
after installing all of the main packages, since it resolves the conflicts.
However, it looks like it is removing some packages and replacing them with other ones... I am not sure if this is an issue?
Do you know which crates depend on libgstreamer
?
The crate I working on freesasa-sys
, works now when I build it locally using the docker image (as described at https://forge.rust-lang.org/docs-rs/add-dependencies.html)
I need to check that libgstreamer is working
any progress made on this?
no progress that I know of.
It would still need some figuring out if another combination of ubuntu packages can still compile the crates that need compiling. I believe it should be possible, but needs some trial & error.