折腾WSL+opencv+ffmpeg

折腾WSL(Windows Subsystem For Linux)

  • 写在前面
    • 1. win10安装UBuntu20.04
    • 2.安装和卸载opencv4.4
    • 3.输出图片,安装VcXsrv与XLaunch
    • 4.安装和卸载ffmpeg
    • 5.换源
    • 6.路径记录
    • 7.WSL似乎不支持摄像机

写在前面

只是一些记录,作为参考。WSL可以用opencv读图并显示视频,似乎不支持摄像机。

1. win10安装UBuntu20.04

网上好多文章,直接下载安装Ubuntu20.04,选开发者选项。参考:
https://zhuanlan.zhihu.com/p/62658094.

2.安装和卸载opencv4.4

源码安装: 安装依赖项,新建build,cmake, make -j4, make install。卸载:make uninstall,make distclean(删除build目录)。
关键cmake选项记录可能是
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_QT=OFF -D WITH_V4L=ON -D CMAKE_SHARED_LINKER_FLAGS=-Wl,-Bsymbolic …
直接复制网页代码,要注意空格。否则安装完opencv就可以了,全文完。
参考: 1.https://blog.csdn.net/public669/article/details/99044895.
2.https://blog.csdn.net/qq_36486890/article/details/97511295.
3.https://blog.csdn.net/weixin_45617478/article/details/102632088.

3.输出图片,安装VcXsrv与XLaunch

输出图像显示需要另外装VcXsrv与XLaunch,修改~/.bashrc
参考: 1.https://www.cnblogs.com/andrewwang/p/11088163.html.
2.https://www.jianshu.com/p/c05af6bc604d.

4.安装和卸载ffmpeg

安装原因是因为无法读入摄像头和视频,上网找了
一些资料认为是ffmpeg没安装。现在认为是WSL不支持和输入视频路径错误。
参考: 1.https://blog.csdn.net/lingzhaoli/article/details/78711445.
2.https://blog.csdn.net/weixin_43793181/article/details/103182517.

源码安装:configure, make, make install, 修改/etc/profile 和 /etc/ld.so.conf。卸载make uninstall,删除/usr/local/ffmpeg目录所有东西。

因为opencv make出了问题
/usr/bin/ld: /usr/local/lib/libavcodec.a(cavsdsp.o): relocation R_X86_64_PC32 against symbol `ff_pw_5’ can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/build.make:252: lib/libopencv_videoio.so.4.4.0] Error 1
make[1]: *** [CMakeFiles/Makefile2:2537: modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs…

反复卸载安装ffmpeg和opencv都不行,继续找了其他资料,换了ffmpeg各种configure配置,安装一些依赖项,跳过一些依赖项,删除文件删除连接重装opencv后可以make了。。。如果还不行可以考虑卸载重来了。。。
关键configure配置可能是
./configure --prefix=/usr/local/ffmpeg --enable-nonfree --enable-pic --enable-shared
参考: 3.https://www.cnblogs.com/dxscode/p/12073566.html.

5.换源

安装的时候可以换阿里源,清华源等,可以快一些,网上一堆。一般用的x86 x64的源,但如果是TX2这种ARM设备,要注意用portable或arm。

6.路径记录

C:\Users\xxxxx\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs
可以查看linux下面的东西

cd /mnt/e
linux可以进入windows e盘

7.WSL似乎不支持摄像机

至201114折腾暂告一段落,发现暂不支持摄像机。。。不知道有没其他人解决
参考:
1.https://docs.microsoft.com/zh-cn/windows/wsl/.
2.https://github.com/microsoft/WSL/issues?q=camera.
3.https://blog.csdn.net/qq_33446100/article/details/99703836.

你可能感兴趣的:(记录,linux,opencv)