Check failed: f != nullptr: Binary was created using hexagon but a loader of that name is not registered

Hi, i want offload the so (cpu.so build by ndk , hexagon.so build by hexagon-clang ) to android device.

    target = tvm.target.hexagon("v66", hvx=128)
    arch = "arm64"
    target_host = "llvm -mtriple=%s-linux-android" % arch
    m = tvm.build(s,[C, A, B], target=target, target_host=target_host, name="add")

    tmp = util.tempdir()
    m.export_library(tmp.relpath('cpu.so'), ndk.create_shared)
    m.imported_modules[0].save('hexagon.so')

    remote.upload(tmp.relpath('cpu.so')) 
    remote.upload(tmp.relpath('hexagon.so')) 
   .....
    remote_cpu = remote.load_module('cpu.so')

     // when invoke load_module ,  it's report following errors

v0.7/tvm/build/libtvm.so(dmlc::LogMessageFatal::~LogMessageFatal()+0x6c) [0x7f29baf10e9c] File “…/src/runtime/rpc/rpc_endpoint.cc”, line 378 RPCError: Error caught from RPC call: [16:44:44] /home/kuiper/work/mount/work/ai/tvm-v0.7/tvm/src/runtime/library_module.cc:149: Check failed: f != nullptr: Binary was created using hexagon but a loader of that name is not registered. Available loaders are GraphRuntimeFactory, metadata. Perhaps you need to recompile with this runtime enabled.

any cue is appreciated.