Closed Richardlyq closed 2 years ago
因为你在编linux库的时候没有编MNN和NCNN以及TNN,但是我的CMakeLists.txt里面链接了。你需要根据你实际的情况修改CMakeLists.txt。
file(GLOB ALL_LIBS ${LITE_AI_LIBRARY_DIR}/*so) # 将dylib修改为so,linux下是so
file(INSTALL ${ALL_LIBS} DESTINATION ${EXECUTABLE_OUTPUT_PATH})
add_executable(lite_rvm examples/test_lite_rvm.cpp)
# 把MNN/NCNN/TNN的库都去掉,因为你没有编
target_link_libraries(lite_rvm
lite.ai.toolkit
onnxruntime
${OpenCV_LIBS}) # link lite.ai.toolkit & other libs.
老哥,这个can not open video是代码问题嘛?
就是打开视频出现错误。你检查一下视频在不在
我打开文件中存在的视频也报这样的错
CMakeLists改一下吧,你其实可以看看CMakeList,或者看看是不是动态度都拷贝到 example/build了
file(GLOB ALL_LIBS ${LITE_AI_LIBRARY_DIR}/*so*) # 将dylib修改为so,linux下是so,要有2个*来做正则匹配,因为linux写库的命名方式是 libxxx.so 或 libxxx.so.version
这个案例只是考虑了Mac作为示例用,不过Linux也差不多,保证库能链接上应该就行。
好的好的,我试试,谢谢老哥
老哥,您好,我刚刚又试了很多次,(1)改CMakeLists的话,好像报未指定最终目录的错误。(2)动态库拷贝到example/build后,运行一下sh ./build.sh就会刷新,我又修改了build.sh让他不删除现有的。但是最终还是会报can not open video的错误。我的动态库文件应该都是放在lite.ai.toolkit/lib里面的。到底怎么解决这个问题呀~ ~
没办法帮你解决😂,我这边Mac和linux都跑的挺正常的。不太清楚你的系统环境是怎样的。也不知道你有没有按照lite.ai.toolkit的README配Linux的环境变量。要是你都配了,按理说不应该出现这些问题。或者是用ldd看一下库的依赖关系。不太清楚你用的opencv是不是我编译好的,因为opencv和ffmpeg之间还有一层复杂的关系,要是你自己编的,也可能有问题,你在编译的时候可能比没有编译兼容ffmpeg的版本,而MP4的编解码需要用到ffmpeg。这些可能都是一些工程上的问题。最后的建议就是,你可以把rvm.cpp的逻辑抄出来用,没必要依赖lite.ai.toolkit.
作者您好,我已经将lite.ai.toolkit编译成功了,并且把其中的build/lite.ai.toolkit替换了RobustVideoMatting.lite.ai.toolkit中的lite.ai.toolkit。但是sh ./build.sh后会报如下错误,请问怎么解决呢