[lttng-dev] Debian specific userspace RCU configure override (ARMv7 Beagle Bone Black)
Thibault, Daniel
Daniel.Thibault at drdc-rddc.gc.ca
Thu Jun 12 12:46:20 EDT 2014
----------------------------------------------------------------------
> Date: Thu, 12 Jun 2014 13:51:06 +0000
> Progress on this front. I did one thing: I edited userspace-rcu/urcu/arch/arm.h to comment
>out the #ifdef CONFIG_RCU_ARM_HAVE_DMB defines so that userspace-rcu builds "dmb-less".
>Once rebuilt and re-installed, I can then move on to try lttng-tools again, and this time it passes
>the rculfhash.lo step. It dies much later for a completely unrelated reason which I expect to fix
>shortly. At this point I also expect a rebuild of lttng-ust would succeed.
Turns out this new make error is obscure (only 8 hits in Google, 3 of which are in Chinese).
make[5]: Entering directory '/usr/src/lttng-tools-2.3.0/src/lib/lttng-ctl/filter'
LEX filter-lexer.c
flex: fatal internal error, exec failed
make[5]: *** [filter-lexer.c] Error 141
It turns out /usr/bin/flex is unusable on the BBB's Angstrom distribution! It is only runnable in calls like 'flex --help' or 'flex --version'. As soon as you try to process any .l file, it will choke with an error 141. This is because /usr/bin/flex uses a hard-wired reference to the m4 executable where it lay on the machine where the Angstrom image was cross-compiled! (Thanks to Rob Clark for finding this out, http://gstreamer-devel.966125.n4.nabble.com/Installation-error-td969071.html) The ugly but simple fix is to create a symbolic link at the place flex looks for m4:
# mkdir -p /build/v2012.12/build/tmp-angstrom_v2012_12-eglibc/sysroots/x86_64-linux/usr/bin
# ln -s /usr/bin/m4 /build/v2012.12/build/tmp-angstrom_v2012_12-eglibc/sysroots/x86_64-linux/usr/bin/m4
Equivalently, invocations of flex must be preceded by setting the environment variable M4 = /usr/bin/m4. Which is what userspace-rcu must somehow do to actually install without tripping over this bug.
Daniel U. Thibault
Protection des systèmes et contremesures (PSC) | Systems Protection & Countermeasures (SPC)
Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS)
RDDC - Centre de recherches de Valcartier | DRDC - Valcartier Research Centre
2459 route de la Bravoure
Québec QC G3J 1X5
CANADA
Vox : (418) 844-4000 x4245
Fax : (418) 844-4538
NAC : 918V QSDJ <http://www.travelgis.com/map.asp?addr=918V%20QSDJ>
Gouvernement du Canada | Government of Canada <http://www.valcartier.drdc-rddc.gc.ca/>
More information about the lttng-dev
mailing list