When building a ARM Funtoo stage (either a stage1, or freshening a stage3), dev-lang/python-3.4.1-r1000 fails with the following :
[...] *** WARNING: renaming "_multiprocessing" since importing it failed: build/lib.linux-armv7l-3.4/_multiprocessing.cpython-34.so: undefined symbol: _PyMp_sem_unlink [...]
Failed to build these modules:
_multiprocessing
Then, chrooting in the stage3 environment and compiling Python works.
# mount --bind /dev /var/tmp/metro/work/funtoo-current/stage3-armv6j_hardfp-funtoo-current-2014-06-04/dev # mount --bind /proc /var/tmp/metro/work/funtoo-current/stage3-armv6j_hardfp-funtoo-current-2014-06-04/proc # chroot /var/tmp/metro/work/funtoo-current/stage3-armv6j_hardfp-funtoo-current-2014-06-04/ /bin/bash # env-update && source /etc/profile # emerge -1 python:3.4 And then it builds fine... The _multiprocessing extension builds correctly!
The main difference seems to be in the configure part, in metro:
checking whether POSIX semaphores are enabled... no checking for broken sem_getvalue... yes
In chroot:
checking whether POSIX semaphores are enabled... yes checking for broken sem_getvalue... no
See attached build.log and config.log for each environment (metro and chroot). I really don't know if this is a metro bug, I don't know a lot about Metro internals, so a little help would be greatly appreciated!