Ports with binary bootstrap packages and CURRENT+ino64
Don Lewis
truckman at FreeBSD.org
Thu Jan 25 00:37:45 UTC 2018
On 24 Jan, Anthony Jenkins via freebsd-ports wrote:
> On 01/04/18 12:15, Dmytro Bilokha wrote:
>> On Thu, Jan 04, 2018 at 03:31:46PM +0100, Jean-Sébastien Pédron wrote:
>>> On 03.01.2018 01:06, Anthony Jenkins wrote:
>>>> I'm having trouble building ports with a new Poudriere rig on a
>>>> 12.0-CURRENT (git commit 423586ee). The ports that fail are ones that
>>>> require a binary bootstrap package (e.g. lang/rust and java/openjdk8).
>>>> The executables in these bootstrap packages fail with a segfault as do
>>>> all executables build with a non-ino64 FreeBSD box.
>>>
>>> Like Jan, I'm surprised that it crashes. AFAIK, Rust builds fine in the
>>> official package building cluster, which is also running FreeBSD
>>> 12-CURRENT.
>>>
>>> I don't know what to suggest at this point, so I'll wait that you
>>> provide the information requested by Jan.
>
> Sorry for the reply delay - apparently I wasn't an actual member of the
> @ports mailing list, and I've had a bunch of stuff going on.
>
> I've been looking into the lang/rust problem, and it looks like the
> cargo binary is built against a pre-ino64 FreeBSD. The cargo binary
> comes from
> distfiles/rust/2017-10-12/cargo-0.22.0-x86_64-unknown-freebsd.tar.gz:
>
> [ajenkins at ajenkins-hplaptop /usr/ports/lang/rust]$ tar tvzf
> /usr/ports/distfiles/rust/2017-10-12/cargo-0.22.0-x86_64-unknown-freebsd.tar.gz
> | grep bin/cargo
> -rwxr-xr-x 0 2000 2000 14719904 Oct 9 18:21
> cargo-0.22.0-x86_64-unknown-freebsd/cargo/bin/cargo
>
> This binary is not affected by the patch Jan referred to, AFAICT. I'm
> trying my hand at writing a wrapper for cargo that uses LD_PRELOAD to
> call a hand-rolled pre-ino64 stat() that calls the post-ino64 stat(). I
> have no idea how/why a 12-CURRENT system can build the lang/rust port -
> I have two CURRENT systems that fail to build it. Here's my OSVERSION
> variable:
>
> [ajenkins at ajenkins-hplaptop /usr/ports/lang/rust]$ make -v OSVERSION
> 1200053
>
> This kicks in the patch, but I still have the issue.
I haven't seen this problem here. Are you running the GENERIC kernel or
a customized kernel? If the latter, does the configuration include the
COMPAT_FREEBSD* options? The bootstrap is probably compiled for an older
FreeBSD release, and if those options aren't present, then the syscall
emulation for the pre-ino64 syscall ABI probably won't be there.
More information about the freebsd-ports
mailing list