В моем коде JNI я использую boost/share_ptr.h. Но я не знал, какую библиотеку я должен включить и для владельца места, чтобы работать с ней позже, я просто добавил boost_date в Android.mk.Компиляция Strange NDK с произвольной библиотекой Boost
LOCAL_PATH := $(call my-dir)
include $(call all-subdir-makefiles)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog -ldl
LOCAL_CFLAGS := -I$(LOCAL_PATH)/boost
LOCAL_MODULE := mathparser
LOCAL_SRC_FILES := main.cpp pmain.cpp
LOCAL_STATIC_LIBRARIES := boost_date
include $(BUILD_SHARED_LIBRARY)
$(call import-module,boost)
Удивительно, но ему удалось скомпилировать и сгенерировать общую библиотеку. Могу ли я спросить, почему это сработало? Означает ли это, что я могу включить любую статическую библиотеку Boost для shared_ptr?
Я понимаю, что это только библиотека заголовков, но в этом случае я ожидал, что она вообще ничего не свяжет. Но LOCAL_STATIC_LIBRARIES любой произвольной библиотеки в boost был необходим для компиляции моего кода. Это привело к моему вопросу. Спасибо за Ваш ответ. –