Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Requires newer libarchive but doesn't show that prior to building #13

Closed
hsitter opened this issue Jul 29, 2016 · 4 comments
Closed

Requires newer libarchive but doesn't show that prior to building #13

hsitter opened this issue Jul 29, 2016 · 4 comments

Comments

@hsitter
Copy link
Contributor

hsitter commented Jul 29, 2016

$ dub build
Performing "debug" build using gdc for x86_64.
mustache-d 0.1.1: building configuration "library"...
appstream-generator 0.4.0+commit.27.g8623924: building configuration "application"...
/tmp/ccIWdw3U.o: In function `_D2ag7archive15compressAndSaveFAhxAyaE2ag7archive11ArchiveTypeZv':
/home/me/src/git/appstream-generator/source/archive.d:424: undefined reference to `archive_write_set_format_raw'
collect2: error: ld returned 1 exit status
gdc failed with exit code 1.

Ideally it should build. Non-ideally it should at least do a version detection on libarchive and fail properly instead of randomly attempting to link stuff that might or might not be there.

@ximion
Copy link
Owner

ximion commented Jul 29, 2016

Yeah, the build-system can't do a proper version detection, so this is the best it can do (I am thinking of maybe switching to cmake or some other build system).
@iainlane is working on a Xenial backport of libarchive to solve this.
Since the build system doesn't allow me to detect the version properly, I can also not automatically switch to a different codepath at compile time if the symbol is not present.
So, the best way to resolve this for users is to just install a recent libarchive.

@ximion ximion changed the title not building on ubuntu 16.04 Requires newer libarchive but doesn't show that prior to building Jul 29, 2016
@ximion
Copy link
Owner

ximion commented Jul 29, 2016

I reported dlang/dub#906, to get this addressed by the dub maintainers in any case.

@iainlane
Copy link
Collaborator

I didn't test this with asgen yet, but https://launchpad.net/ubuntu/+source/libarchive/3.2.1-2~ubuntu16.04.1 should help.

@ximion ximion closed this as completed in a60865b Aug 17, 2016
@ximion
Copy link
Owner

ximion commented Aug 17, 2016

Since dub is taking long, I am exploring building asgen with Meson, which just gained support for proper version checks, and in general is the much better build system (dub is more like a toy for small and quick-to-setup-and-run projects, Meson is a lot more powerful, while being a bit more complex).

As far as asgen is concerned, I think this bug is closed with that change (there is still a dub bug though). Since a very very recent version of Meson is needed to build this, at time dub is still the way to go. But the future could likely be Meson.
In any case, both buildsystems will stay in place for a while, as long as they are maintainable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants