SOLVED (was Re: Ports with binary bootstrap packages and CURRENT+ino64)

2018-01-24 Thread Anthony Jenkins via freebsd-ports
On 01/24/18 19:37, Don Lewis wrote:
> 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@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@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.
[ajenkins@ajenkins-hplaptop ~]$ grep COMPAT
/usr/src/sys/amd64/conf/MYKERNEL
options COMPAT_FREEBSD32    # Compatible with i386 binaries
options COMPAT_FREEBSD4 # Compatible with FreeBSD4
options COMPAT_FREEBSD5 # Compatible with FreeBSD5
options COMPAT_FREEBSD6 # Compatible with FreeBSD6
options COMPAT_FREEBSD7 # Compatible with FreeBSD7
options COMPAT_FREEBSD9 # Compatible with FreeBSD9
options COMPAT_FREEBSD10    # Compatible with FreeBSD10

Am I missing a COMPAT_FREEBSD11?  I see it in the GENERIC config.  I'll
add that, rebuild the kernel and try again.

GRRR that was it!  It's building now on my laptop, I'll whip up a
new kernel for my poudriere box I put together and see if that fixes
this issue.

Thanks for the help, sorry for the noise.

Anthonuy
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Ports with binary bootstrap packages and CURRENT+ino64

2018-01-24 Thread Don Lewis
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@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@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.

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Ports with binary bootstrap packages and CURRENT+ino64

2018-01-24 Thread Anthony Jenkins via freebsd-ports
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@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@ajenkins-hplaptop /usr/ports/lang/rust]$ make -v OSVERSION
1200053

This kicks in the patch, but I still have the issue.

Anthony



>>
>> -- 
>> Jean-Sébastien Pédron
>>
>
> Hi, guys!
>
> I have the same trouble with building java/openjdk8 with Poudriere:
>
> configure: Found potential Boot JDK using configure arguments
> configure: Potential Boot JDK found at /usr/local/bootstrap-openjdk8
> is incorrect JDK version (Error occurred during initialization of VM);
> ignoring
> configure: (Your Boot JDK must be version 7 or 8)
> configure: error: The path given by --with-boot-jdk does not contain a
> valid Boot JDK
> configure exiting with result code 1
> ===>  Script "../../configure" failed unexpectedly.
>
> My version is 11.1-RELEASE-p4, so it is possible that the issue is not
> specific for the 12.0-CURRENT.
> I have an idea, that openjdk8 build process fails in a Poudriere jail,
> because of not mounted fdescfs and procfs. I've tried to mount these
> fs in the Poudriere jail, but failed.
>

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Ports with binary bootstrap packages and CURRENT+ino64

2018-01-04 Thread Dmytro Bilokha

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.

--
Jean-Sébastien Pédron



Hi, guys!

I have the same trouble with building java/openjdk8 with Poudriere:

configure: Found potential Boot JDK using configure arguments
configure: Potential Boot JDK found at /usr/local/bootstrap-openjdk8 is 
incorrect JDK version (Error occurred during initialization of VM); ignoring
configure: (Your Boot JDK must be version 7 or 8)
configure: error: The path given by --with-boot-jdk does not contain a valid 
Boot JDK
configure exiting with result code 1
===>  Script "../../configure" failed unexpectedly.

My version is 11.1-RELEASE-p4, so it is possible that the issue is not specific 
for the 12.0-CURRENT.
I have an idea, that openjdk8 build process fails in a Poudriere jail, because 
of not mounted fdescfs and procfs. I've tried to mount these fs in the 
Poudriere jail, but failed.

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Ports with binary bootstrap packages and CURRENT+ino64

2018-01-04 Thread Jean-Sébastien Pédron
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.

-- 
Jean-Sébastien Pédron



signature.asc
Description: OpenPGP digital signature


Re: Ports with binary bootstrap packages and CURRENT+ino64

2018-01-02 Thread Jan Beich
Anthony Jenkins writes:

> (gdb) where
> #0  stat () at freebsd11_stat.S:3
> #1  0x016a94a0 in std::sys::imp::fs::stat () at 
> /checkout/src/libstd/sys/unix/fs.rs:732
> #2  0x016a1a76 in std::fs::metadata<::path::Path> () at 
> /checkout/src/libstd/fs.rs:1271
> #3  std::path::Path::exists () at /checkout/src/libstd/path.rs:2247
> #4  0x014e4f19 in home::cargo_home_with_cwd ()
> #5  0x0130a7f4 in cargo::util::config::homedir ()
> #6  0x012fa71b in cargo::util::config::Config::default ()
> #7  0x010c396e in cargo::main ()
> #8  0x016b5bbd in panic_unwind::__rust_maybe_catch_panic () at 
> /checkout/src/libpanic_unwind/lib.rs:99
> #9  0x016af58c in std::panicking::try<(),closure> () at 
> /checkout/src/libstd/panicking.rs:459
> #10 std::panic::catch_unwind () at 
> /checkout/src/libstd/panic.rs:361
> #11 std::rt::lang_start () at /checkout/src/libstd/rt.rs:61
> #12 0x01080db1 in _start ()

Not sure how you've hit this after
https://svnweb.freebsd.org/changeset/ports/441843

Can you show output for the following?

  $ make -V OSVERSION

For 423586ee (aka r326754) it should be 1200054.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"