[lttng-dev] Problem compiling on Raspberry Pi 3

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Mon Nov 20 16:24:14 UTC 2017


----- On Nov 19, 2017, at 5:43 AM, Adrià Arcarons <adria.arcarons at gmail.com> wrote: 

> Hi,
> I'm trying to compile lttng-ust library on a Raspberry Pi 3 and I get the
> following error when make is compiling librinbuffer:

> /tmp/ccczexgU.s:2010: Error: selected processor does not support `dmb' in ARM
> mode

> I guessed the configure script is not detecting my processor correctly.
> Raspberry Pi 3 has a Cortex-A53 which is armv8, and has DMB.

> To overcome this, I'm specifying additional CFLAGS to force to compile on the
> armv8 architecture:

> CFLAGS="-mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -mneon-for-64bits
> -mtune=cortex-a53" ./configure

> Then I run make again. libringbuffer is compiled correctly, but now another
> error appears (see the bottom of this mail). I think it's related to liburcu.
> It seems lttng-ust-statedump.c is using some macros defined in hlist.c of the
> liburcu library, although I can't see no includes of that file.

> Some context:
> - I have compiled and installed the v0.7.2 of liburcu on my system.
> - gcc version: gcc (Raspbian 6.3.0-18+rpi1) 6.3.0 20170516
> - OS: Linux raspberrypi 4.9.35-v7+

What version of lttng-ust are you building ? 

Thanks, 

Mathieu 

> The `make` output with the error:

> CC lttng-ust-statedump.lo
> lttng-ust-statedump.c: In function ‘find_or_create_dl_node’:
> lttng-ust-statedump.c:179:38: error: ‘node’ undeclared (first use in this
> function)
> cds_hlist_for_each_entry_2(e, head, node) {
> ^~~~
> lttng-ust-statedump.c:179:44: error: expected ‘;’ before ‘{’ token
> cds_hlist_for_each_entry_2(e, head, node) {
> ^
> lttng-ust-statedump.c:174:7: warning: unused variable ‘found’
> [-Wunused-variable]
> bool found = false;
> ^~~~~
> lttng-ust-statedump.c:193:1: warning: no return statement in function returning
> non-void [-Wreturn-type]
> }
> ^
> lttng-ust-statedump.c: In function ‘iter_begin’:
> lttng-ust-statedump.c:384:39: error: ‘node’ undeclared (first use in this
> function)
> cds_hlist_for_each_entry_2(e, head, node)
> ^~~~
> lttng-ust-statedump.c: In function ‘iter_end’:
> lttng-ust-statedump.c:433:39: error: ‘node’ undeclared (first use in this
> function)
> cds_hlist_for_each_entry_2(e, head, node) {
> ^~~~
> lttng-ust-statedump.c:433:45: error: expected ‘;’ before ‘{’ token
> cds_hlist_for_each_entry_2(e, head, node) {
> ^
> lttng-ust-statedump.c: In function ‘ust_dl_table_statedump’:
> lttng-ust-statedump.c:542:39: error: ‘node’ undeclared (first use in this
> function)
> cds_hlist_for_each_entry_2(e, head, node) {
> ^~~~
> lttng-ust-statedump.c:542:45: error: expected ‘;’ before ‘{’ token
> cds_hlist_for_each_entry_2(e, head, node) {
> ^
> lttng-ust-statedump.c: In function ‘ust_dl_state_destroy’:
> lttng-ust-statedump.c:642:3: warning: implicit declaration of function
> ‘cds_hlist_for_each_entry_safe_2’ [-Wimplicit-function-declaration]
> cds_hlist_for_each_entry_safe_2(e, tmp, head, node)
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> lttng-ust-statedump.c:642:49: error: ‘node’ undeclared (first use in this
> function)
> cds_hlist_for_each_entry_safe_2(e, tmp, head, node)
> ^~~~
> lttng-ust-statedump.c:643:4: error: expected ‘;’ before ‘free_dl_node’
> free_dl_node(e);
> ^~~~~~~~~~~~
> At top level:
> lttng-ust-statedump.c:411:6: warning: ‘trace_lib_unload’ defined but not used
> [-Wunused-function]
> void trace_lib_unload(const struct bin_info_data *bin_data, void *ip)
> ^~~~~~~~~~~~~~~~
> lttng-ust-statedump.c:390:6: warning: ‘trace_lib_load’ defined but not used
> [-Wunused-function]
> void trace_lib_load(const struct bin_info_data *bin_data, void *ip)
> ^~~~~~~~~~~~~~
> lttng-ust-statedump.c:307:6: warning: ‘trace_baddr’ defined but not used
> [-Wunused-function]
> void trace_baddr(struct bin_info_data *bin_data, void *owner)
> ^~~~~~~~~~~
> lttng-ust-statedump.c:196:6: warning: ‘remove_dl_node’ defined but not used
> [-Wunused-function]
> void remove_dl_node(struct lttng_ust_dl_node *e)
> ^~~~~~~~~~~~~~
> lttng-ust-statedump.c:131:5: warning: ‘compare_bin_data’ defined but not used
> [-Wunused-function]
> int compare_bin_data(const struct bin_info_data *a,
> ^~~~~~~~~~~~~~~~
> lttng-ust-statedump.c:122:6: warning: ‘free_dl_node’ defined but not used
> [-Wunused-function]
> void free_dl_node(struct lttng_ust_dl_node *e)
> ^~~~~~~~~~~~
> lttng-ust-statedump.c:84:27: warning: ‘alloc_dl_node’ defined but not used
> [-Wunused-function]
> struct lttng_ust_dl_node *alloc_dl_node(const struct bin_info_data *bin_data)
> ^~~~~~~~~~~~~

> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

-- 
Mathieu Desnoyers 
EfficiOS Inc. 
http://www.efficios.com 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.lttng.org/pipermail/lttng-dev/attachments/20171120/f22c7571/attachment-0001.html>


More information about the lttng-dev mailing list