Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/opt/AI/llm_obj/mlc-llm/3rdparty/tvm/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc:232:31: error: cannot initialize a parameter of type 'void **' with an rvalue of type 'JNIEnv **' (aka 'JNIEnv_ **') 232 | _jvm->AttachCurrentThread(&env, nullptr); | ^~~~ /usr/local/java/jdk-17.0.11/include/jni.h:1938:37: note: passing argument to parameter 'penv' here 1938 | jint AttachCurrentThread(void **penv, void *args) { | ^ /opt/AI/llm_obj/mlc-llm/3rdparty/tvm/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc:309:31: error: cannot initialize a parameter of type 'void **' with an rvalue of type 'JNIEnv **' (aka 'JNIEnv_ **') #2259

Closed
lbl1120 opened this issue May 1, 2024 · 4 comments
Labels
bug Confirmed bugs

Comments

@lbl1120
Copy link

lbl1120 commented May 1, 2024

csyw@ubuntu:/opt/AI/llm_obj/mlc-llm/android/library$ ./prepare_libs.sh

  • rustup target add aarch64-linux-android
    info: component 'rust-std' for target 'aarch64-linux-android' is up to date
  • mkdir -p build/model_lib
  • python3 prepare_model_lib.py
    Creating lib from ['/opt/AI/llm_obj/mlc-llm/dist/lib/Qwen1.5-1.8B-Chat-q4f16_1-MLC-android.tar']..
    Validating the library build/model_lib/libmodel_android.a...
    List of available model libs packaged: ['qwen2_q4f16_1'], if we have '-' in the model_lib string, it will be turned into '_'
    Validation pass
  • cd build
  • touch config.cmake
  • '[' /opt/AI/llm_obj/mlc-llm/3rdparty/tvm -ne 0 ']'
    ./prepare_libs.sh: 第 12 行: [: /opt/AI/llm_obj/mlc-llm/3rdparty/tvm:需要整数表达式
  • cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=/root/Android/Sdk/ndk/27.0.11718014/build/cmake/android.toolchain.cmake -DCMAKE_INSTALL_PREFIX=. -DCMAKE_CXX_FLAGS=-O3 -DANDROID_ABI=arm64-v8a -DANDROID_NATIVE_API_LEVEL=android-24 -DANDROID_PLATFORM=android-24 -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ON -DANDROID_STL=c++_static -DUSE_HEXAGON_SDK=OFF -DMLC_LLM_INSTALL_STATIC_LIB=ON -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON -DUSE_OPENCL=ON -DUSE_CUSTOM_LOGGING=ON
    -- Hide private symbols
    -- TVM_HOME: /opt/AI/llm_obj/mlc-llm/3rdparty/tvm
    -- Hide private symbols...
    -- Forbidding undefined symbols in shared library, using -Wl,--no-undefined on platform Android
    -- Building for Android
    -- Didn't find the path to CCACHE, disabling ccache
    -- Performing Test SUPPORT_CXX17
    -- Performing Test SUPPORT_CXX17 - Success
    -- VTA build with VTA_HW_PATH=/opt/AI/llm_obj/mlc-llm/3rdparty/tvm/3rdparty/vta-hw
    -- Build VTA runtime with target: sim
    -- Enabled runtime search for OpenCL library location
    -- Couldn't build OpenCL-Gtests
    -- Android Vulkan_INCLUDE_DIRS=/root/Android/Sdk/ndk/27.0.11718014/sources/third_party/vulkan/src/include
    -- Skip finding SPIRV in Android, make sure you only build tvm runtime.
    -- Build with contrib.random
    -- Build with contrib.sort
    -- Build with contrib.hybriddump
    -- Git found: /usr/bin/git
    -- Found TVM_GIT_COMMIT_HASH=ced07e88781c0d6416e276d9cd084bb46aaf3da5
    -- Found TVM_GIT_COMMIT_TIME=2024-04-25 21:07:15 -0400
    -- Building with TVM Map...
    -- Build with thread support...
    -- CLANG_VERSION 18.0
    -- Setting enhanced clang warning flags
    -- Performing Test FILE_PREFIX_MAP_SUPPORTED
    -- Performing Test FILE_PREFIX_MAP_SUPPORTED - Success
    -- Added "-fuse-ld=lld" to linker flags -static-libstdc++ -Wl,--build-id=sha1 -Wl,--no-rosegment -Wl,--no-undefined-version -Wl,--fatal-warnings -Wl,--no-undefined -Qunused-arguments
    -- Build without FlashInfer
    -- system-nameAndroid
    -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
    -- VERSION: 0.2.00
    CMake Warning at /opt/AI/llm_obj/mlc-llm/CMakeLists.txt:106 (message):
    Cannot find libflash_attn. The model must not have been built with
    --use-flash-attn-mqa option.

-- TVM_HOME: /opt/AI/llm_obj/mlc-llm/android/library/../../3rdparty/tvm
-- Found Java: /usr/local/java/jdk-17.0.11/bin/java (found version "17.0.11")
-- Found JNI: /usr/local/java/jdk-17.0.11/include/linux
-- JNI_INCLUDE_DIRS=/root/Android/Sdk/ndk/27.0.11718014/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include;/usr/local/java/jdk-17.0.11/include/linux;/usr/local/java/jdk-17.0.11/include
-- JNI_LIBRARIES=/usr/local/java/jdk-17.0.11/include/linux;/usr/local/java/jdk-17.0.11/include/linux
-- Configuring done
-- Generating done
-- Build files have been written to: /opt/AI/llm_obj/mlc-llm/android/library/build

  • cmake --build . --target tvm4j_runtime_packed --config release
    [ 0%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/arena.cc.o
    [ 0%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/arenastring.cc.o
    [ 0%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/bytestream.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/coded_stream.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/common.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/extension_set.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/generated_enum_util.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/generated_message_table_driven_lite.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/generated_message_util.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/implicit_weak_message.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/int128.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/io_win32.cc.o
    [ 6%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/message_lite.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/parse_context.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/repeated_field.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/status.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/statusor.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/stringpiece.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/stringprintf.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/structurally_valid.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/strutil.cc.o
    [ 13%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/time.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/wire_format_lite.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/zero_copy_stream.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/zero_copy_stream_impl.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/protobuf-lite/zero_copy_stream_impl_lite.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/builtin_pb/sentencepiece.pb.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/builtin_pb/sentencepiece_model.pb.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/bpe_model.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/char_model.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/error.cc.o
    [ 20%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/filesystem.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/model_factory.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/model_interface.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/normalizer.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/sentencepiece_processor.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/unigram_model.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/util.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/word_model.cc.o
    [ 26%] Building CXX object mlc_llm/tokenizers/sentencepiece/src/CMakeFiles/sentencepiece-static.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/sentencepiece/third_party/absl/flags/flag.cc.o
    [ 26%] Linking CXX static library libsentencepiece.a
    [ 26%] Built target sentencepiece-static
    [ 33%] Building Java objects for tvm4j_core.jar
    注: 某些输入文件使用或覆盖了已过时的 API。
    注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
    [ 33%] Generating CMakeFiles/tvm4j_core.dir/java_class_filelist
    [ 33%] Creating Java archive tvm4j_core.jar
    [ 33%] Built target tvm4j_core
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/conv_templates.cc.o
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/conversation.cc.o
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/image_embed.cc.o
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/json_ffi/config.cc.o
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/json_ffi/json_ffi_engine.cc.o
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/json_ffi/openai_api_protocol.cc.o
    [ 33%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/llm_chat.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/loader/multi_gpu_loader.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/metadata/model.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/config.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/data.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/action.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/action_commons.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/batch_decode.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/batch_draft.cc.o
    [ 40%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/batch_verify.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/eagle_batch_draft.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/eagle_batch_verify.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/eagle_new_request_prefill.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_actions/new_request_prefill.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/engine_state.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/event_trace_recorder.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/function_table.cc.o
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/grammar/grammar.cc.o
    In file included from /opt/AI/llm_obj/mlc-llm/cpp/serve/grammar/grammar.cc:8:
    /opt/AI/llm_obj/mlc-llm/cpp/serve/grammar/grammar_parser.h:26:41: warning: '/' within block comment [-Wcomment]
    26 | * - Using # as comment mark instead of /**/
    | ^
    1 warning generated.
    [ 46%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/grammar/grammar_parser.cc.o
    In file included from /opt/AI/llm_obj/mlc-llm/cpp/serve/grammar/grammar_parser.cc:6:
    /opt/AI/llm_obj/mlc-llm/cpp/serve/grammar/grammar_parser.h:26:41: warning: '/
    ' within block comment [-Wcomment]
    26 | * - Using # as comment mark instead of /**/
    | ^
    1 warning generated.
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/grammar/grammar_serializer.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/grammar/grammar_simplifier.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/grammar/grammar_state_matcher.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/grammar/json_schema_converter.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/logit_processor.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/model.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/radix_tree.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/request.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/request_state.cc.o
    [ 53%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/sampler/cpu_sampler.cc.o
    [ 60%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/sampler/gpu_sampler.cc.o
    [ 60%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/serve/threaded_engine.cc.o
    [ 60%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/streamer.cc.o
    [ 60%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/support/encoding.cc.o
    [ 60%] Building CXX object mlc_llm/CMakeFiles/mlc_llm_objs.dir/cpp/tokenizers.cc.o
    [ 60%] Built target mlc_llm_objs
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_libinfo_objs.dir/src/support/libinfo.cc.o
    [ 60%] Built target tvm_libinfo_objs
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/builtin_fp16.cc.o
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/c_runtime_api.cc.o
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/const_loader_module.cc.o
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/container.cc.o
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/cpu_device_api.cc.o
    [ 60%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/debug.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/bcast_session.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/builtin.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/disco_worker.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/loader.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/process_session.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/session.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/disco/threaded_session.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/dso_library.cc.o
    [ 66%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/file_utils.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/library_module.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/logging.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/memory/memory_manager.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/metadata.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/minrpc/minrpc_logger.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/module.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/name_transforms.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/ndarray.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/nvtx.cc.o
    [ 73%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/object.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/packed_func.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/profiling.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/regex.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/registry.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/builtin.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/bytecode.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/executable.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/kv_state.cc.o
    [ 80%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/lm_support.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/ndarray_cache_support.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/paged_kv_cache.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/rnn_state.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/relax_vm/vm.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/source_utils.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/static_library.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/system_library.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/thread_pool.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/threading_backend.cc.o
    [ 86%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/vm/bytecode.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/vm/executable.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/vm/vm.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/workspace_pool.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/opencl/opencl_device_api.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/opencl/opencl_module.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/opencl/opencl_module_spirv.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/opencl/texture_pool.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/opencl/opencl_wrapper/opencl_wrapper.cc.o
    [ 93%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/contrib/random/random.cc.o
    [100%] Building CXX object mlc_llm/tvm/CMakeFiles/tvm_runtime_objs.dir/src/runtime/contrib/sort/sort.cc.o
    [100%] Built target tvm_runtime_objs
    [100%] Linking CXX static library libtvm_runtime.a
    You have build static version of the TVM runtime library. Make sure to use --whole-archive when linking it into your project.
    [100%] Built target tvm_runtime
    [100%] Generating aarch64-linux-android/release/libtokenizers_c.a
    Compiling proc-macro2 v1.0.81
    Compiling unicode-ident v1.0.12
    Compiling syn v1.0.109
    Compiling crossbeam-utils v0.8.19
    Compiling strsim v0.10.0
    Compiling memchr v2.7.2
    Compiling libc v0.2.154
    Compiling fnv v1.0.7
    Compiling ident_case v1.0.1
    Compiling serde v1.0.199
    Compiling pkg-config v0.3.30
    Compiling either v1.11.0
    Compiling rayon-core v1.12.1
    Compiling cfg-if v1.0.0
    Compiling cc v1.0.96
    Compiling paste v1.0.14
    Compiling esaxx-rs v0.1.10
    Compiling aho-corasick v1.1.3
    Compiling getrandom v0.2.14
    Compiling minimal-lexical v0.2.1
    Compiling quote v1.0.36
    Compiling syn v2.0.60
    Compiling crossbeam-epoch v0.9.18
    Compiling rand_core v0.6.4
    Compiling regex-syntax v0.8.3
    Compiling crossbeam-deque v0.8.5
    Compiling serde_json v1.0.116
    Compiling thiserror v1.0.59
    Compiling ppv-lite86 v0.2.17
    Compiling onig_sys v69.8.1
    Compiling nom v7.1.3
    Compiling rand_chacha v0.3.1
    Compiling rayon v1.10.0
    Compiling serde_derive v1.0.199
    Compiling darling_core v0.14.4
    Compiling thiserror-impl v1.0.59
    Compiling monostate-impl v0.1.12
    Compiling regex-automata v0.4.6
    Compiling itertools v0.8.2
    Compiling darling_macro v0.14.4
    Compiling macro_rules_attribute-proc_macro v0.1.3
    Compiling bitflags v1.3.2
    Compiling itoa v1.0.11
    Compiling unicode-segmentation v1.11.0
    Compiling smallvec v1.13.2
    Compiling once_cell v1.19.0
    Compiling darling v0.14.4
    Compiling derive_builder_core v0.12.0
    Compiling base64 v0.13.1
    Compiling ryu v1.0.17
    Compiling unicode-normalization-alignments v0.1.12
    Compiling macro_rules_attribute v0.1.3
    Compiling rayon-cond v0.1.0
    Compiling rand v0.8.5
    Compiling aho-corasick v0.7.20
    Compiling regex v1.10.4
    Compiling derive_builder_macro v0.12.0
    Compiling onig v6.4.0
    Compiling derive_builder v0.12.0
    Compiling itertools v0.9.0
    Compiling lazy_static v1.4.0
    Compiling log v0.4.21
    Compiling unicode_categories v0.1.1
    Compiling regex-syntax v0.7.5
    Compiling monostate v0.1.12
    Compiling spm_precompiled v0.1.4
    Compiling tokenizers v0.13.4
    Compiling tokenizers-c v0.1.0 (/opt/AI/llm_obj/mlc-llm/3rdparty/tokenizers-cpp/rust)
    Finished release [optimized] target(s) in 38.27s
    [100%] Built target tokenizers_c
    [100%] Building CXX object mlc_llm/tokenizers/CMakeFiles/tokenizer_cpp_objs.dir/src/sentencepiece_tokenizer.cc.o
    [100%] Building CXX object mlc_llm/tokenizers/CMakeFiles/tokenizer_cpp_objs.dir/src/huggingface_tokenizer.cc.o
    [100%] Building CXX object mlc_llm/tokenizers/CMakeFiles/tokenizer_cpp_objs.dir/src/rwkv_world_tokenizer.cc.o
    [100%] Built target tokenizer_cpp_objs
    [100%] Linking CXX static library libtokenizers_cpp.a
    [100%] Built target tokenizers_cpp
    [100%] Linking CXX static library libmlc_llm.a
    [100%] Built target mlc_llm_static
    [100%] Building CXX object CMakeFiles/tvm4j_runtime_packed.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tvm/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc.o
    /opt/AI/llm_obj/mlc-llm/3rdparty/tvm/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc:232:31: error: cannot initialize a parameter of type 'void **' with an rvalue of type 'JNIEnv **' (aka 'JNIEnv_ **')
    232 | jvm->AttachCurrentThread(&env, nullptr);
    | ^~~~
    /usr/local/java/jdk-17.0.11/include/jni.h:1938:37: note: passing argument to parameter 'penv' here
    1938 | jint AttachCurrentThread(void **penv, void *args) {
    | ^
    /opt/AI/llm_obj/mlc-llm/3rdparty/tvm/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc:309:31: error: cannot initialize a parameter of type 'void **' with an rvalue of type 'JNIEnv **' (aka 'JNIEnv
    **')
    309 | _jvm->AttachCurrentThread(&env, nullptr);
    | ^~~~
    /usr/local/java/jdk-17.0.11/include/jni.h:1938:37: note: passing argument to parameter 'penv' here
    1938 | jint AttachCurrentThread(void **penv, void *args) {
    | ^
    2 errors generated.
    make[3]: *** [CMakeFiles/tvm4j_runtime_packed.dir/build.make:76:CMakeFiles/tvm4j_runtime_packed.dir/opt/AI/llm_obj/mlc-llm/3rdparty/tvm/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc.o] 错误 1
    make[2]: *** [CMakeFiles/Makefile2:264:CMakeFiles/tvm4j_runtime_packed.dir/all] 错误 2
    make[1]: *** [CMakeFiles/Makefile2:271:CMakeFiles/tvm4j_runtime_packed.dir/rule] 错误 2
@lbl1120 lbl1120 added the bug Confirmed bugs label May 1, 2024
@tqchen
Copy link
Contributor

tqchen commented May 3, 2024

likely it depends on the JNI environment you are using, previosly android jni was directly triggred as https://github.com/apache/tvm/blob/main/jvm/native/src/main/native/org_apache_tvm_native_c_api.cc#L232 which pass in the address and normal java should not have TVM4J_ANDROID defined, whichi will trigger the other path that relates to here. I am not sure what was specifically happening in your case

@lbl1120
Copy link
Author

lbl1120 commented May 4, 2024

I modified this file
/mlc-llm/android/library/CMakeLists.txt
Added this content
2024-05-04_094517

The following is the configuration of my environment variables

2024-05-04_094237

@tqchen
Copy link
Contributor

tqchen commented May 11, 2024

This is due to your JAVA_HOME setting, we highly recommend pointing to Android studio's jdk, see also #2327

@tqchen tqchen closed this as completed May 11, 2024
@tqchen
Copy link
Contributor

tqchen commented May 11, 2024

checkout the latest instructions here https://llm.mlc.ai/docs/deploy/android.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Confirmed bugs
Projects
None yet
Development

No branches or pull requests

2 participants