View previous topic :: View next topic |
Author |
Message |
9a3eedi n00b
Joined: 12 Jul 2007 Posts: 14
|
Posted: Sat Nov 19, 2016 12:37 pm Post subject: harbuzz does not compile on Raspberry Pi 3 |
|
|
Hi,
I've installed a minimal version of Gentoo so far on my Raspberry pi 3, and before continuing to install the desktop environment and the applications I want, I decided to emerge world to keep everything up to date.
Unfortunately, harfbuzz does not build. This is the error I'm getting
Code: |
libtool: link: armv7a-hardfloat-linux-gnueabi-g++ -O2 -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -fno-rtti -fno-exceptions -Wcast-align -fvisibility-inlines-hidden -Wl,-O1 -Bsymbolic-functions -o .libs/hb-shape hb-shape.o options.o -Wl,--as-needed ../src/.libs/libharfbuzz.so -lm -lglib-2.0 -lfreetype
libtool: link: armv7a-hardfloat-linux-gnueabi-g++ -O2 -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -fno-rtti -fno-exceptions -Wcast-align -fvisibility-inlines-hidden -Wl,-O1 -Bsymbolic-functions -o .libs/hb-ot-shape-closure hb-ot-shape-closure.o options.o -Wl,--as-needed ../src/.libs/libharfbuzz.so -lm -lglib-2.0 -lfreetype
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_end'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_recv'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_pointer_map_init'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_send_ctrl_begin'
/opt/vc/lib/libGLESv2.so: undefined reference to `client_tls'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_pointer_map_insert'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_flush'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_pointer_map_lookup'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_send_ctrl_write'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_pointer_map_iterate'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_send_ctrl_end'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_error_assist'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_begin'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_pointer_map_delete'
/opt/vc/lib/libGLESv2.so: undefined reference to `rpc_send_bulk'
/opt/vc/lib/libGLESv2.so: undefined reference to `platform_tls_get'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_pointer_map_term'
/opt/vc/lib/libGLESv2.so: undefined reference to `platform_memcpy'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_platform_malloc'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_platform_free'
/opt/vc/lib/libGLESv2.so: undefined reference to `khrn_get_type_size'
collect2: error: ld returned 1 exit status
Makefile:577: recipe for target 'hb-view' failed
|
Looking the error up on google, it seems I have to add gles2 to the USE flags, which is what I did, but that still didn't fix the problem. I found this out from this thread:
https://forums.gentoo.org/viewtopic-t-1041628-highlight-libglesv2.html
This is my current make.conf
Code: |
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable before changing.
CHOST="armv7a-hardfloat-linux-gnueabi"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
# This sets the language of build output to English.
# Please keep this setting intact when reporting bugs.
LC_MESSAGES=C
CFLAGS="-O2 -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j5"
USE="gles2"
|
I am not using distributed compilation (yet!).
Any other ideas? Also, any comments about my configuration would be welcome. |
|
Back to top |
|
|
9a3eedi n00b
Joined: 12 Jul 2007 Posts: 14
|
Posted: Sat Nov 19, 2016 12:52 pm Post subject: |
|
|
Found the solution here:
https://forums.gentoo.org/viewtopic-t-1051724.html
In short, select the opengl provided by the raspberry pi userland, using the following command:
Code: | eselect opengl set 1 |
You can look at the list of OpenGL providers like this, for reference:
Code: | eselect opengl list |
I should've looked harder. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|