0

LOCAL_SRC_FILES に libgvr.so ライブラリを含めて、Android.mk に含めています。

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
        GVR_LIB_PATH :=  $(GVR_DIR)/ndk-beta/lib/android_arm
else
        ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
                GVR_LIB_PATH :=  $(GVR_DIR)/ndk-beta/lib/android_arm64
        else
                $(error Invalid architecture!)
        endif
endif
LOCAL_CPPFLAGS := -std=c++11 -Wall -Wextra
LOCAL_SRC_FILES := \
    foo.cpp \
    bar.cpp \
    $(GVR_LIB_PATH)/libgvr.so
LOCAL_C_INCLUDES := \
        include \
    generated \
        $(GVR_DIR)/ndk-beta/include/vr/gvr/capi/include \
        $(GVR_DIR)/ndk-beta/include
LOCAL_ALLOW_UNDEFINED_SYMBOLS := false

正しいディレクトリへの最初のパスで定義された $GVR_LIB_PATH。ただし、コードをコンパイルしてリンクすると、ここで呼び出している関数の解決できないシンボルが表示されます。

Error:(1155) undefined reference to 'gvr_destroy'
Error:(1299) undefined reference to 'gvr_get_time_point_now'
Error:(1248) undefined reference to 'gvr_get_head_pose_in_start_space'

ndk-build を使用して libgvr.so にリンクする最良の方法は何ですか? これが私が見逃している小さな命名エラーである場合は、事前にお詫び申し上げます。

4

1 に答える 1