[ltt-dev] building ust for android/arm

Mathieu Desnoyers compudj at krystal.dyndns.org
Wed Apr 20 14:12:39 EDT 2011


* Xing Fan (xing.fan0302 at googlemail.com) wrote:
> I am building lttng ust-0.6 for android/Arm platform.
> 
> However, I have problems to build libust.so. The error msg is:  make: *** No
> rule to make target `build/core/libust-initializer.c', needed by
> `out/target/product/u8500/obj/SHARED_LIBRARIES/libust_intermediates/libust-initializer.o'.
> Stop.
> 
> It is very strange that the compiler tries to pick up libust-initializer.c
> from build/core folder, even though I have specified that the source file is
> in my LOCAL_PATH;
> 
> Anyone has clue how to write a Android.mk for this?

ARM support only came with UST 0.12 (see Changelog file in UST tree). I
recommend you try the new version and see if the problem is still there.

Thanks,

Mathieu

> 
> /Stella
> 
> 
> 
> My Android.mk file looks like this:
> ===========================================================
> include $(call all-subdir-makefiles)
> 
> LOCAL_PATH := $(call my-dir)
> 
> include $(CLEAR_VARS)
> LOCAL_MODULE := libust
> LOCAL_SRC_FILES := libust-initializer.c
> LOCAL_C_INCLUDES += \
>         $(LOCAL_PATH) \
>         $(LOCAL_PATH)/include \
>         external/userspace-rcu-0.4.6
> include $(BUILD_SHARED_LIBRARY)
> ===============================================================
> 
> 
> The Makefile.am looks like this
> =========================================================================
> 
> ACLOCAL_AMFLAGS = -I config
> 
> # The order here is tricky. SUBDIRS applies both to compilation and
> # installation. Programs depending on the libs must be built after
> # libust and '.' (that contains the linker script). However, '.'
> # must be installed after libust so it can overwrite libust.so with
> # the linker script.
> SUBDIRS = snprintf libustcomm libust . tests libustinstr-malloc libustd ustd
> ustctl libustfork include doc
> 
> EXTRA_DIST = libust.ldscript.in libust-initializer.c
> dist_bin_SCRIPTS = usttrace
> 
> ldscriptsdir = $(libdir)
> ldscripts_DATA = libust.so libust-initializer.o
> 
> CLEANFILES = $(ldscripts_DATA) ./tests/libust-initializer.Po
> 
> libust.so: libust.ldscript.in
>     $(SED) -e "s@\@FORMAT\@@$(LIBFORMAT)@" < $< > $@
> 
> # It is very important to compile the initializer with PIC otherwise we
> # may get obscure errors when linking to shared libraries.
> libust-initializer.o: libust-initializer.c
>     $(CC) $(CFLAGS) -fno-strict-aliasing -fPIC -c -I$(top_srcdir)/include -o
> $@ $<
> ===========================================================

> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev


-- 
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com




More information about the lttng-dev mailing list