Hi everybody! First of all, I'm not sure if I'm posting to right mailing list. My question is concerning lttv. If I'm not, please point me at correct one. Thank you!
I'm facing some unpleasant issue with latest lttv (both 0.12.30 and git snapshot). After lttv packages installation, if I try to compile some simple application (just open and then close trace), I see following: In file included from test.c:2: /usr/include/ltt/trace.h:24:29: error: ltt/ltt-private.h: No such file or directory In file included from test.c:2: /usr/include/ltt/trace.h: In function ‘ltt_tracefile_name’: /usr/include/ltt/trace.h:96: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_long_name’: /usr/include/ltt/trace.h:101: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_cpu’: /usr/include/ltt/trace.h:108: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_tid’: /usr/include/ltt/trace.h:114: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_pgid’: /usr/include/ltt/trace.h:119: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_creation’: /usr/include/ltt/trace.h:124: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_get_trace’: /usr/include/ltt/trace.h:129: error: dereferencing pointer to incomplete type /usr/include/ltt/trace.h: In function ‘ltt_tracefile_block_number’: /usr/include/ltt/trace.h:136: error: dereferencing pointer to incomplete type After short investigation, I have found, that public header file trace.h includes private libltt header private-ltt.h. I have that by removing private-ltt.h reference and putting all inlined functions into library body (and preserving current ABI in that way) --- see attached patch, but it resulted in another compilation failure, this time in lttv: batchtest.c: In function ‘trace_event’: batchtest.c:175: error: dereferencing pointer to incomplete type batchtest.c: In function ‘save_state_copy_event’: batchtest.c:233: error: dereferencing pointer to incomplete type batchtest.c: In function ‘compute_tracefile’: batchtest.c:332: error: dereferencing pointer to incomplete type Reason for this failure is that batchtest.c relies on private declaration of LttTracefile :) outcome: I'm willing to fix all that stuff, but I'm *very* new to ltt, and I would like someone to define libltt API. Nikita
0001-fix-trace.h-dereferencing-pointer-to-incomplete-ty.patch
Description: Binary data
_______________________________________________ ltt-dev mailing list [email protected] http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
