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