Solved Poudriere build of gconf2 fail in aarch64 jail

Hey all,

I’m having a little difficulty troubleshooting why devel/gconf2 is failing to build. This is my first time to use Poudriere, so any hints would be welcome. Am I reading this right and is it tripping up on devel/ORBit2? I’m failing to understand how to troubleshoot this further, and I’m not having much luck finding the same error online:

Code:
/usr/local/bin/orbit-idl-2 ./GConfX.idl
orbit-idl-2 2.14.19 compiling
  mode, hide preprocessor errors, passes: stubs skels common headers 

Processing file ./GConfX.idl
Error: Empty file

** (orbit-idl-2:11847): WARNING **: 02:20:07.640: ./GConfX.idl compilation failed
gmake[3]: *** [Makefile:1126: GConfX-common.c] Error 1
gmake[3]: Leaving directory '/wrkdirs/usr/ports/devel/gconf2/work/GConf-3.2.6/gconf'
gmake[2]: *** [Makefile:539: all-recursive] Error 1
gmake[2]: Leaving directory '/wrkdirs/usr/ports/devel/gconf2/work/GConf-3.2.6'
gmake[1]: *** [Makefile:422: all] Error 2
gmake[1]: Leaving directory '/wrkdirs/usr/ports/devel/gconf2/work/GConf-3.2.6'
*** Error code 1

Stop.

And here is the complete build log:

I tried to keep my build simple and the list of ports to a minimum:
Code:
sysutils/tmux
editors/vim-console
x11/xorg
x11-wm/fluxbox
x11/rxvt
games/nethack36
www/node8
www/npm-node8
www/seamonkey

Build command:
Code:
# poudriere bulk -f /usr/home/ec2-user/rpi3-ports -j 120aarch64

Host info:
Code:
FreeBSD freebsd 12.0-RELEASE-p3 FreeBSD 12.0-RELEASE-p3 GENERIC  amd64

Many thanks in advance for any guidance.
 
Just as a very passing note I have seen people mention there are no major browsers working on RPI3.
This is same arch as yours. Low hanging fruit would be drop SeaMonkey and try that run.
 
I'd try turning off the GCONF option. If you don't need the Gnome compatibility you can safely turn it off.
 
Phishfry, yeah I saw that issue and some hints around recompiling webkit with --disable-jit, so I assumed I may be in for more bugs.

Actually I do need Javascript function in my browser. Nevertheless, I was aware of dillo, but have never tried netsurf before. I’d still like to check it out. :^)

SirDice, good call out. I’ll give it a shot. I guess I get nervous about disabling defaults but I should have tried it. You’re right though. I really do not need any Gnome compatibility.
 
have you tried on real hardware (qemu has a lot of bugs)?
If you need firefox on aarch64:
I have and my RPi3 kept swapping, thrashing and crashing. I wanted to give Poudriere a shot. Unfortunately every course has bugs or obstacles of some sort. :^/
 
So, I’m having a little difficulty preventing this gconf2 dependency. Maybe I’m just making a newb mistake...

There was no gconf2 information in www/seamonkey Makefile to omit, so I tried to see if gconf2 is a dependency of a dependency. This was my attempt, but maybe there is a better way?
Code:
$ for file in `make all-depends-list`; do grep -R gconf2 $file; done
/usr/local/poudriere/ports/default/audio/pulseaudio/Makefile:GCONF_USE= GNOME=gconf2
/usr/local/poudriere/ports/default/devel/gconf2/Makefile:# $FreeBSD: head/devel/gconf2/Makefile 439137 2017-04-22 08:28:19Z miwi $
/usr/local/poudriere/ports/default/devel/gconf2/Makefile:#   $MCom: ports/trunk/devel/gconf2/Makefile 20031 2014-11-02 21:47:55Z kwm $
/usr/local/poudriere/ports/default/devel/gconf2/Makefile:PORTNAME=      gconf2

I commented out the above lines in the audio/pulseaudio Makefile.

I also created a make.conf in two places:
  • /etc/make.conf
  • /usr/local/etc/poudriere.d/make.conf

...with the following contents:
Code:
OPTIONS_UNSET= PULSEAUDIO PULSE GCONF2

However, gconf2 still comes up when I run make all-depends-list or poudriere options -f /usr/home/ec2-user/rpi3-ports -j 120aarch64. Perhaps I’m overreacting and it would build anyway without the dependency?

Is there a better way to sort this out, or any suggestions for a better approach? Or am I doing it all wrong?
 
There was no gconf2 information in www/seamonkey Makefile to omit
Yes, there is.

Code:
===> The following configuration options are available for seamonkey-2.49.4_23:
     CANBERRA=on: Sound theme alerts
     DBUS=on: D-Bus IPC system support
     DEBUG=off: Build with debugging support
     FFMPEG=on: FFmpeg support (WMA, AIFF, AC3, APE...)
     GCONF=on: GConf configuration backend support
     LDAP=on: LDAP support for Mailnews
     LIBPROXY=off: Proxy support via libproxy
     LIGHTNING=on: Calendar extension
     OPTIMIZED_CFLAGS=on: Use extra compiler optimizations
     PROFILE=on: Build with profiling support
     RUST=off: Build with components written in Rust language
     TEST=off: Build and/or run tests
====> Options available for the multi AUDIO: you have to choose at least one of them
     ALSA=on: ALSA audio architecture support
     JACK=on: JACK audio server support
     PULSEAUDIO=on: PulseAudio sound server support
     SNDIO=off: Sndio audio support
====> Options available for the single TOOLKIT: you have to select exactly one of them
     GTK2=off: GTK+ 2 GUI toolkit support
     GTK3=on: GTK+ 3 GUI toolkit support
===> Use 'make config' to modify these settings
 
Thanks for the tip, SirDice!
I was able to lookup your advice and see a make showconfig command that I was completely overlooking to get more insights on the ports I’m working with. I’m reading ports(7) now to learn more. Following poudriere(8), there is also a section called “Custom build options” where I learned that I’m likely setting my earlier configs all wrong.

I took other advice first to build another www port instead, and after that completes, I’ll try this out to confirm that the process just works as expected.

Thanks again! ^_^
 
I got the blacklist working to block devel/gconf2, but unfortunately this prevents www/seamonkey from building altogether. There are plenty of other www ports I have already built, so I’m going to give those a shot after I rebuild my RPi3 and point it to my new package repo. We’ll see if the webkit / jit related bug comes up...
 
Found this: PR 218810:
Code:
It was local problem.
After rebuild devel/ORBit2, devel/gconf2 upgraded without any errors.

Try remove the devel/ORBit2 package from poudriere repo and build it again.
 
Oh? Thanks for finding that!
I’ll give it a shot. I feel like I tried that already when I had local build issues, but I could be wrong.
 
Well, gconf2 finally built. I’d like to say I knew for certain whether or not it was simply rerunning the build on dependencies as talsamon suggested, and if so, what exactly was fixed. But unfortunately I fee like it’s like rolling dice and guessing at this point, which is not completely satisfactory for me.

I ran into other compile issues for seamonkey, but as far as this thread goes, I’d say that it is resolved. Thanks all! ^_^/
 
Back
Top