Summary: | media-gfx/povray-3.7.0.0-r1: configure.ac:171: error: required file 'unix/config/ar-lib' not found | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Tee KOBAYASHI <xtkoba> |
Component: | Current packages | Assignee: | Gentoo Science Related Packages <sci> |
Status: | UNCONFIRMED --- | ||
Severity: | normal | CC: | sam |
Priority: | Normal | Keywords: | PATCH |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=828944 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build.log
config.log Add --with-boost config option Make configure script cross-build friendly Use unsigned int instead of uint |
Description
Tee KOBAYASHI
2021-08-25 02:37:27 UTC
Created attachment 735817 [details]
build.log
Created attachment 735819 [details]
config.log
Wondering if it's as simple as this being wrong:
> --with-boost-libdir=/usr/lib
(In reply to Sam James from comment #3) > Wondering if it's as simple as this being wrong: > > --with-boost-libdir=/usr/lib Could you try modifying the ebuild? Change these lines: -e 's:"/usr/include":"'${EPREFIX}'/usr/include":' \ -e 's:"/usr/lib":"'${EPREFIX}'/usr/'$(get_libdir)'":' \ to: -e 's:"/usr/include":"'${ESYSROOT}'/usr/include":' \ -e 's:"/usr/lib":"'${ESYSROOT}'/usr/'$(get_libdir)'":' \ and --with-boost-libdir="${EPREFIX}/usr/$(get_libdir)" \ to --with-boost-libdir="${ESYSROOT}/usr/$(get_libdir)" \ (In reply to Sam James from comment #4) > Could you try modifying the ebuild? > > Change these lines: > -e 's:"/usr/include":"'${EPREFIX}'/usr/include":' \ > -e 's:"/usr/lib":"'${EPREFIX}'/usr/'$(get_libdir)'":' \ > to: > -e 's:"/usr/include":"'${ESYSROOT}'/usr/include":' \ > -e 's:"/usr/lib":"'${ESYSROOT}'/usr/'$(get_libdir)'":' \ > > and > --with-boost-libdir="${EPREFIX}/usr/$(get_libdir)" \ > to > --with-boost-libdir="${ESYSROOT}/usr/$(get_libdir)" \ This does not seem to change the config result. Possibly both EPREFIX and ESYSROOT are expanded as empty strings? Created attachment 735955 [details, diff]
Add --with-boost config option
Now I'm trying to build manually because I don't know an appropriate alternative to EPREFIX that expands to /usr/armv7a-softfloat-linux-musleabi.
And I have found that without specifying --with-boost option the configure script uses -I/usr/include as CPPFLAGS when checking for Boost library.
Created attachment 735957 [details, diff]
Make configure script cross-build friendly
Aside from the above issue, the configure script has problems for cross-build. These are mainly because it tries to execute built binaries even when cross-compiling.
A patch is attached to fix this.
Created attachment 735959 [details, diff]
Use unsigned int instead of uint
The make step stops by errors saying that type name 'uint' is unknown.
It might suffice to include <sys/types.h>, but the attached patch substitutes unsigned int for uint.
These look OK but have you sent them upstream? Ah, ESYSROOT is empty because of EAPI=6? (In reply to Sam James from comment #9) > These look OK but have you sent them upstream? No, not yet. As for musl, there is also an issue of the default thread stack size being too small for povray to run. This can be worked around by including -Wl,-z,stack-size=2097152 (can be smaller) in LDFLAGS. (Another problem is that now I am not much interested in cross-emerging povray.) I can reproduce without static-libs on musl amd64 |