1

我想在运行在 Android 上的arm64-v8a中构建一个 C++ 程序,它使用 OpenCL 和 fastCV。当我使用armv7-a架构时,我可以编译并运行良好。如果您知道如何解决,请帮助我

应用程序.mk:

APP_CPPFLAGS = -frtti -fexceptions
APP_ABI:= armeabi-v7a-hard
APP_STL:=gnustl_static

安卓.mk:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libOpenCL32
LOCAL_SRC_FILES := ./prelibs/libs32/libOpenCL.so 
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := libfastcvopt32
LOCAL_SRC_FILES := ./prelibs/libs32/libfastcvopt.so 
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
MY_SRC_LIST += $(wildcard ./*.cpp)
LOCAL_C_INCLUDES += ./
LOCAL_SRC_FILES += $(MY_SRC_LIST)

LOCAL_CPP_EXTENSION := .cxx .cpp .cc    
LOCAL_CPPFLAGS += -DSUPPORT_OMP -march=armv7-a -mfloat-abi=hard -mfpu=neon -fopenmp -fexceptions -fpermissive -Wno-literal-suffix -Wl,--no-as-needed -std=c++11 -O3 -Wl,  -hash-style=sysv
LOCAL_LDLIBS += -L./libs32
LOCAL_LDLIBS += -lm -lz -lc -llog -pie -fPIE  -fopenmp 
LOCAL_MODULE := testQcom
LOCAL_SHARED_LIBRARIES += libOpenCL32 libfastcvopt32 
include $(BUILD_EXECUTABLE)

当我像这样使用 .mk 编译源代码时,一切正常,程序运行良好。但是当我想在arm64-v8a中编译程序时,就会出现错误。

arm64-v8a 应用程序.mk:

APP_CPPFLAGS = -frtti -fexceptions
APP_ABI:= arm64-v8a 
APP_STL:=gnustl_static

arm64-v8a Android.mk:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libOpenCL64
LOCAL_SRC_FILES := ./prelibs/libs64/libOpenCL.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := libfastcvopt64
LOCAL_SRC_FILES := ./prelibs/libs64/libfastcvopt.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
MY_SRC_LIST += $(wildcard ./*.cpp)
LOCAL_C_INCLUDES += ./
LOCAL_SRC_FILES += $(MY_SRC_LIST)

LOCAL_CPP_EXTENSION := .cxx .cpp .cc    
LOCAL_CPPFLAGS += -DSUPPORT_OMP -march=armv8-a -fopenmp -fexceptions -fpermissive -Wno-literal-suffix -Wl,--no-as-needed -std=c++11 -O3 -Wl,  -hash-style=sysv
LOCAL_LDLIBS += -L./libs64
LOCAL_LDLIBS += -lm -lz -lc -llog -pie -fPIE  -fopenmp 
LOCAL_MODULE := testQcom
LOCAL_SHARED_LIBRARIES += libOpenCL64 libfastcvopt64 
include $(BUILD_EXECUTABLE)

错误是:

[arm64-v8a] 可执行文件:testQcom /home/liliming/Android/NDK/android-ndk-r10e/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/aarch64- linux-android/4.9/../../../../aarch64-linux-android/bin/ld: 警告:libgsl.so,.//obj/local/arm64-v8a/libOpenCL.so 需要,未找到(尝试使用 -rpath 或 -rpath-link)/home/liliming/Android/NDK/android-ndk-r10e/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/../ lib/gcc/aarch64-linux-android/4.9/../../../../aarch64-linux-android/bin/ld:警告:libCB.so,.//obj/local/arm64 需要-v8a/libOpenCL.so,未找到(尝试使用 -rpath 或 -rpath-link)/home/liliming/Android/NDK/android-ndk-r10e/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64 /bin/../lib/gcc/aarch64-linux-android/4.9/../../../../aarch64-linux-android/bin/ld:警告:libcutils.so,..需要//obj/local/arm64-v8a/libOpenCL.so,未找到(尝试使用-rpath或-rpath-link)/home/liliming/Android/NDK/android-ndk-r10e/toolchains/aarch64-linux-android- 4.9/prebuilt/linux-x86_64/bin/../lib/gcc/aarch64-linux-android/4.9/../../../../aarch64-linux-android/bin/ld:警告:libc++ .so,.//obj/local/arm64-v8a/libOpenCL.so 需要,未找到(尝试使用 -rpath 或 -rpath-link).//obj/local/arm64-v8a/libOpenCL.so:未定义引用至未定义的引用未定义的引用cb_enqueue_end_perf_monitor_qcom' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_write_buffer' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_release_device' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tosleep@LIBC' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_enqueue_wait_for_events' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_migrate_mem_objects' .//obj/local /arm64-v8a/libfastcvopt.so:对exp@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_set_command_queue_property' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_get_platform_ids' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference toopen@LIBC' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so : 对cb_enqueue_native_kernel' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topthread_mutex_init@LIBC' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so: 对memcmp cb_enqueue_unmap_mem_object' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference to@LIBC' 的未定义引用cb_get_pipe_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to.//obj/local/arm64-v8a/libOpenCL.so:未定义的引用cb_enqueue_release_gl_objects' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to__cxa_atexit@LIBC' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_release_perf_monitor_qcom' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_fill_buffer' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_create_program_with_binary' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference toos_strncmp' .//obj/local /arm64-v8a/libOpenCL.so:未定义对cb_get_platform_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_gl_texture_info' 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_retain_device' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tog_alogDebugMask' 的引用。//obj/local/arm64-v8a/libfastcvopt.so:未定义对sin@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference todlopen@LIBC' 的引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_enqueue_write_buffer_rect' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_sub_devices 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对 cb_enqueue_svm_mem_fill 的未定义引用cb_release_mem_object' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to。//obj /local/arm64-v8a/libOpenCL.so:未定义对cb_enqueue_acquire_egl_objects_khr' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_release_context' 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义的引用__stack_chk_guard@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_set_mem_object_destructor_callback' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_enqueue_barrier' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tosysconf@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so:未定义引用atan@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_copy_buffer' .//obj/local /arm64-v8a/libOpenCL.so:未定义引用strlen@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference todlerror@LIBC' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_create_image3d' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_perf_monitor_qcom' .//obj/local/arm64-v8a/libOpenCL.so : 对cb_unload_compiler' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_retain_context' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so: 对cb_retain_program' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_read_buffer_rect' 的未定义引用。//obj/local/arm64-v8a/libfastcvopt.so: 对puts@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tostrlcpy@LIBC' 的未定义引用。/ /obj/local/arm64-v8a/libOpenCL.so:未定义的引用cb_get_kernel_arg_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to__register_atfork@LIBC' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_create_sub_buffer' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_kernel_info' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用get_panel_settings' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tocos@LIBC' .//obj /local/arm64-v8a/libOpenCL.so:未定义对os_alog' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_build_program 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_create_pipe' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_marker 的引用。//obj/local/arm64-v8a/libOpenCL.so : 对cb_enqueue_marker_with_wait_list' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_sync_obj_from_cl_event_qcom' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so: 对cb_enqueue_svm_free' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tostrtoul@LIBC' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so: 对cb_retain_sampler' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_x_nd_range_kernel_qcom' 的未定义引用。/ /obj/local/arm64-v8a/libOpenCL.so:未定义的引用cb_enqueue_copy_image_to_buffer' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_supported_image_formats' .//obj/local/arm64-v8a/libfastcvopt.so:未定义引用fclose@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_program_build_info' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用atoi@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tostrtol@LIBC' .//obj/local /arm64-v8a/libOpenCL.so:未定义引用dlsym@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference to__errno@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so:未定义引用pthread_mutex_destroy@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_buffer' .//obj/local/arm64-v8a/libfastcvopt.so : 对fread@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_buffer_from_image_qcom' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so: 对cb_get_gl_context_info_khr' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference toacosf@LIBC' 的未定义引用。//obj/local/arm64-v8a/libfastcvopt.so: 对tan@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_retain_perf_monitor_qcom' 的未定义引用。/ /obj/local/arm64-v8a/libOpenCL.so:未定义的引用cb_create_program_with_builtinkernels' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topthread_once@LIBC' .//obj/local/arm64-v8a/libOpenCL.so:对cb_enqueue_write_image' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference toclose@LIBC'的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_enqueue_nd_range_kernel' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tosnprintf@LIBC'的未定义引用。/ /obj/local/arm64-v8a/libOpenCL.so:对cb_create_command_queue_with_properties' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference todlclose@LIBC' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_create_from_gl_texture3d' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_from_egl_image_img' 的未定义引用。//obj/local/arm64-v8a /libOpenCL.so:对cb_enqueue_read_perf_monitor_qcom' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_copy_buffer_to_image' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_enqueue_task' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topthread_detach@LIBC' 的未定义引用。//obj/local/arm64-v8a/libfastcvopt.so:对ftell@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference toatan2@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so:未定义对strlcat@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_release_kernel' 的引用' .//obj/local/arm64-v8a/libOpenCL.so:未定义的引用cb_retain_mem_object' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topclose@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_get_mem_object_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_event_profiling_info' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_set_event_callback' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference togettimeofday@LIBC' .//obj /local/arm64-v8a/libfastcvopt.so:未定义对strnlen@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_map_buffer 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_get_event_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_from_gl_renderbuffer 的引用。//obj/local/arm64-v8a/libOpenCL.so :对cb_create_from_gl_texture2d' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_command_queue_info' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_svm_alloc' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference to__signbitf@LIBC' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_enqueue_read_image' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference toprintf@LIBC' 的未定义引用.//obj/local/arm64-v8a/libfastcvopt.so:未定义的引用pthread_mutex_lock@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_image' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_get_kernel_work_group_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_kernels_in_program' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_get_perf_monitor_info_qcom' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_gl_object_info' .//obj/local/arm64 -v8a/libfastcvopt.so:未定义对fopen@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tostrcmp@LIBC' 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_common_unlock_global_mutex' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_compile_program' 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义引用memcpy@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topthread_create@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_enqueue_svm_memcpy' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tocosf@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: 未定义引用memset@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_retain_command_queue' ./ /obj/local/arm64-v8a/libOpenCL.so:未定义对__stack_chk_fail@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tofree@LIBC' 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义的引用cb_finish' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_event_wait_for_submission_qcom' .//obj/local/arm64-v8a/libfastcvopt.so: 未定义引用memchr@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_copy_buffer_rect' .//obj/local/arm64-v8a/libfastcvopt.so: 未定义引用vsnprintf@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_set_perf_hint_qcom' .//obj/local/arm64 -v8a/libOpenCL.so:对cb_get_device_ids' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_set_kernel_arg' 的未定义引用。//obj/local/arm64-v8a/libfastcvopt.so:对fseek@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_copy_image' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对未定义的引用cb_get_sampler_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_image_info' .//obj/local/arm64-v8a/libOpenCL.so: 未定义对cb_enqueue_release_egl_objects_khr' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tolog@LIBC' 的引用' .//obj/local/arm64-v8a/libOpenCL.so: 未定义对cb_enqueue_map_image' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_svm_unmap' 的引用' .//obj/local /arm64-v8a/libfastcvopt.so:未定义的引用sinf@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to__cxa_finalize@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_release_sampler' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_kernel' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_get_program_info' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tomalloc@LIBC' .//obj /local/arm64-v8a/libOpenCL.so:未定义对cb_enqueue_svm_map' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_flush' 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_get_device_image_info_qcom' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_device_info' 的引用。//obj/local/arm64-v8a/libfastcvopt.so :对lrint@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topopen@LIBC'的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对cb_retain_event' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_from_gl_buffer'的未定义引用'。//obj/local/arm64-v8a/libfastcvopt.so:对pthread_mutex_trylock@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tostrncmp@LIBC'的未定义引用.//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_create_event_from_egl_sync_khr' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference topow@LIBC' 的引用 .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_platform_compiler_unload' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tommap@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_get_context_info' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_release_program' .//obj/local/arm64-v8a/libfastcvopt.so: 未定义引用strrchr@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tomemalign@LIBC' .//obj /local/arm64-v8a/libfastcvopt.so:对fgets@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_from_gl_texture' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so:对 cb_create_program_with_source' 的未定义引用cb_create_image2d' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to。//obj/local/arm64-v8a/libOpenCL.so : 对cb_create_sampler' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_begin_perf_monitor_qcom' 的未定义引用。//obj/local/arm64-v8a/libOpenCL.so: 对cb_create_command_queue' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_svm_free' 的未定义引用' .//obj/local/arm64-v8a/libOpenCL.so: 对 cb_get_perf_monitor_group_info_qcom' 的未定义引用cb_release_command_queue' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference to' .//obj /local/arm64-v8a/libOpenCL.so:未定义的引用property_get' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_set_kernel_exec_info' .//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_create_from_egl_image_khr' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference toioctl@LIBC' .//obj/local/arm64-v8a/libfastcvopt.so:未定义引用exit@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_context_from_type' .//obj/local /arm64-v8a/libfastcvopt.so:未定义对munmap@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_acquire_gl_objects 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义对cb_get_kernel_sub_group_info_khr' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_enqueue_barrier_with_wait_list 的引用。//obj/local/arm64-v8a/libOpenCL.so:未定义引用cb_set_kernel_arg_svm_pointer' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_get_perf_monitor_counter_info_qcom' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_enqueue_fill_image' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_sampler_with_properties' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_retain_kernel' .//obj/local/arm64-v8a/libfastcvopt.so: undefined reference tomemmem@LIBC' .//obj /local/arm64-v8a/libfastcvopt.so:未定义的引用read@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_wait_for_events' .//obj/local/arm64-v8a/libfastcvopt.so: 未定义引用pthread_join@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_context' .//obj/local/arm64-v8a/libOpenCL.so: 未定义引用cb_link_program' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_set_user_event_status' .//obj/local/arm64 -v8a/libOpenCL.so:未定义对cb_common_lock_global_mutex' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_create_user_event 的引用。//obj/local/arm64-v8a/libfastcvopt.so:未定义对pthread_mutex_unlock@LIBC' .//obj/local/arm64-v8a/libOpenCL.so: undefined reference tocb_release_event 的引用 collect2:错误:ld 返回 1 退出状态 make:*** [obj/local /arm64-v8a/testQcom] 错误 1

4

1 回答 1

3

当我像这样修改 Android.mk 中的一个语句时:

LOCAL_LDLIBS += -fuse-ld=gold

一切正常!</p>

于 2017-02-23T09:47:31.760 回答