[ltt-dev] LTTV under MinGW

Nigel Hathaway Nigel.Hathaway at ubiquisys.com
Mon Jun 30 10:10:06 EDT 2008


I know there's a separate list for LTTV, but I haven't had any luck
subscribing to it, so I am posting here instead.

 

I saw on the LTTV list what appears to be an abortive attempt to get
this going in December 2006. This being the case, I have succeeded where
others have failed.

 

The problem that we have here - I know many corporate environments with
the same problem - is that we have Windows desktops and command-line
access to Linux build servers and embedded targets. We capture
everything from our embedded Linux targets, copying trace files from
there to our build servers via NFS and then getting them from there via
Samba to our Windows desktops.

 

We have VMWare virtualised Linux desktops as well, but it is a hassle
switching between the two, so it's much more preferable to have a native
Windows trace viewer.

 

We are using a 2.6.18 kernel on our targets, which means we are building
and LTTV from December 2006.

 

So, attached is a patch for that version of the LTTV which adapts it for
building under Windows (MinGW). There is a readme inside for MinGW.

 

The real problem, however, has not so much been the patches needed for
the source code, but the changes needed to the build system. There is a
fundamental difference between Linux shared objects and Windows DLLs,
and the way that LTTV is built under Linux relies on characteristics of
.so's which are not present in Windows DLLs. What I have to do is make
the binary that corresponds to lttv.real under Linux to be liblttv-0.dll
under Windows, and create a dummy main for lttv.real.exe.

 

If the maintainers of LTT consider it worthwhile maintaining LTTV as
buildable under Windows, then changes to the build so that it builds the
same way in both environments will be necessary (taking into account the
limitations of Windows DLLs). In addition, it is possible to remove all
conditional compilation by doing certain things a different way -
Wireshark achieves this as I understand it. They also have a very good
Windows build.

 

One thing that would be quite good: remote control of the trace
facilities on the target. The control facility currently just does 'su'
onto the local machine and controls tracing on that local machine.

 

I hope others find this patch useful.

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.casi.polymtl.ca/pipermail/lttng-dev/attachments/20080630/aa34ba27/attachment-0003.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: LinuxTraceToolkitViewer-0.8.72-06122006.mingw.patch.gz
Type: application/x-gzip
Size: 240597 bytes
Desc: LinuxTraceToolkitViewer-0.8.72-06122006.mingw.patch.gz
URL: <http://lists.casi.polymtl.ca/pipermail/lttng-dev/attachments/20080630/aa34ba27/attachment-0003.bin>


More information about the lttng-dev mailing list