LOCAL_LDLIBS
This variable contains the list of additional linker flags for use in building your shared library or executable. It enables you to use the -l
prefix to pass the name of specific system libraries. For example, the following example tells the linker to generate a module that links to /system/lib/libz.so
at load time:
LOCAL_LDLIBS := -lz
Using this, LOCAL_LDLIBS variable you can also specify the path to the library, for example, your library libmylibrary.so resides in path /home/myuser/android/mylibrary/lib/libmylibrary.so, the you can use below code to link this library,
LOCAL_LDLIBS := -L/home/myuser/android/mylibrary/lib/
Example Android.mk might look like below,
$ vim Android.mk
include $(CLEAR_VARS)
LOCAL_LDLIBS += -llog -lz
LOCAL_STATIC_LIBRARIES := libavformat libavcodec libpostproc libswscale libavutil libx264 libswresample
LOCAL_C_INCLUDES += $(LOCAL_PATH)/ffmpeg
LOCAL_SRC_FILES := FFNewChunkedAudioVideoEncoder.c
LOCAL_CFLAGS := -march=armv7-a -mfloat-abi=softfp -mfpu=neon
LOCAL_MODULE := FFNewChunkedAudioVideoEncoder
include $(BUILD_SHARED_LIBRARY)
Reference – https://github.com/OpenWatch/ClientExperiments-Android/blob/master/jni/Android.mk
Reference : http://developer.android.com/ndk/guides/android_mk.html