Hi,

1. You need to have the LOCAL_PATH := $(call my-dir) as the first line in
the makefile.  Don't put this line in again after that.

2. At the beginning of the file, and after each of the include $(BUILD_*)
lines, except the last one, you need to have an include $(CLEAR_VARS) line.
So an Android.mk file looks like this:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
# Set some LOCAL_* variables
include $(BUILD_XXX)

include $(CLEAR_VARS)
# Set some LOCAL_* variables
include $(BUILD_YYY)

3. If you are building a shared library, use the include
$(BUILD_SHARED_LIBRARY) at the end.  However, you need to say what that
library is called.  You do that by saying LOCAL_MODULE :=
lib<your-lib-name>.  I'm not sure which library you're trying to build in
your example, because you don't have a LOCAL_MODULE line, and I'm not even
sure if you're trying to build a shared library.


This is the last time I am going to be posting to this thread.  After that,
you are all going into my killfile.  If you aren't going to read my posts,
I'm not going to spend time trying to help you.  If you have more questions,
feel free to ask, but if you clearly haven't read this email or any of the
other ones on this list, I will just ignore you.

-joe






On Tue, Feb 10, 2009 at 9:27 PM, John Cola <jt...@marvell.com> wrote:

>
> Hi Ravi
>
> I am working on gps porting and need 3'rd party's libraries.
> Here is the contents I modified from mydroid\hardware\libhardware\gps
> \Android.mk
>
> ============================================================
> # Use hardware GPS implementation if available.
> #
> LOCAL_PREBUILT_LIBS :=  3rdpartygps1.a \
>                        3rdpartygps2.a \
>                        3rdpartygps3.a \
>                        3rdpartygps4.a
> include $(BUILD_MULTI_PREBUILT)
>
> BOARD_GPS_LIBRARIES := 3rdpartygps1 3rdpartygps2.a 3rdpartygps3.a
> 3rdpartygps4.a
>
> ifneq ($(BOARD_GPS_LIBRARIES),)
>  LOCAL_CFLAGS           += -DHAVE_GPS_HARDWARE
>  LOCAL_STATIC_LIBRARIES += $(BOARD_GPS_LIBRARIES)
> endif
>
> # Use emulator GPS implementation if QEMU_HARDWARE is set.
> #
> USE_QEMU_GPS_HARDWARE := $(QEMU_HARDWARE)
>
> ifeq ($(USE_QEMU_GPS_HARDWARE),true)
>    LOCAL_CFLAGS    += -DHAVE_QEMU_GPS_HARDWARE
>    LOCAL_SRC_FILES += gps/gps_qemu.c
> endif
>
> LOCAL_SRC_FILES += gps/gps.cpp
> ============================================================
>
> On Feb 10, 8:36 pm, rktb <yend...@pv.com> wrote:
> > Can you please post the exact contents of your makefile ?
> >
> > -Ravi
> >
> > On Feb 10, 2:00 am, John Cola <jt...@marvell.com> wrote:
> >
> >
> >
> > > Hi rktb
> > > I follow your method and encounter the following error
> > > Can you help me?
> >
> > > LOCAL_BUILT_MODULE and LOCAL_INSTALLED_MODULE must not be defined by
> > > component makefiles.  Stop.
> >
> > > My 3'rd party's libraries are *.a.
> >
> > > On Feb 9, 12:07 pm, rktb <yend...@pv.com> wrote:
> >
> > > > Here you go...I verified that this works.
> >
> > > > ******************************************
> > > > LOCAL_PATH := $(call my-dir)
> > > > MY_LOCAL_PATH := $(LOCAL_PATH)
> > > > include $(CLEAR_VARS)
> >
> > > > LOCAL_PREBUILT_LIBS := libabc.so
> >
> > > > include $(BUILD_MULTI_PREBUILT)
> >
> > > > LOCAL_PATH := $(MY_LOCAL_PATH)
> > > > include $(CLEAR_VARS)
> >
> > > > LOCAL_SRC_FILES := main.cpp
> > > > LOCAL_MODULE := mytest
> > > > LOCAL_SHARED_LIBRARIES := libabc
> >
> > > > include $(BUILD_EXECUTABLE)
> > > > ******************************************
> >
> > > > -Ravi
> >
> > > > On Feb 8, 9:39 pm, Girish <htgir...@gmail.com> wrote:
> >
> > > > > Hi all,
> >
> > > > > Replaced the same with LOCAL_PATH := $(call my-dir)
> >
> > > > > find: `build/core/clear_vars.mk,build/core': No such file or
> directory
> > > > > make: execvp: /bin/bash: Argument list too long
> > > > > target Strip: libdl (out/target/product/obj/lib/libdl.so)
> > > > > Install: out/host/linux-x86/bin/vm-tests
> > > > > make: *** No rule to make target `build/core/clear_vars.mk,build/
> > > > > core', needed by `out/target/product/obj/EXECUTABLE
> >
> > > > > Anything to do with .so files ? main.c calls test.c and test.c
> calls
> > > > > apis deineds libs 3 libs which try to link with my executable..
> main.c
> > > > > contains the entry point (int main ())
> >
> > > > > The libs are generated using arm-linux-eabi and with glibc2.2.
> >
> > > > > Wht may be the issue ?
> >
> > > > > Regards- Hide quoted text -
> >
> > > > - Show quoted text -- Hide quoted text -
> >
> > - Show quoted text -
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"android-framework" group.
To post to this group, send email to android-framework@googlegroups.com
To unsubscribe from this group, send email to 
android-framework+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/android-framework?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to