当前位置: 首页 > news >正文

爱站工具时代创信网站建设

爱站工具,时代创信网站建设,网站建设及安全管理,湖南郴州市三种方法: 1、在msys2中使用gcc编译 2、在msys2中使用visual studio编译(有环境变量) 3、在msys2中使用visual studio编译(无环境变量) 我的环境: 1、msys2-x86_64-20250221 2、vs2015 3、ffmpeg-7.1…

三种方法:

1、在msys2中使用gcc编译

2、在msys2中使用visual studio编译(有环境变量)

3、在msys2中使用visual studio编译(无环境变量)

我的环境:

1、msys2-x86_64-20250221

2、vs2015

3、ffmpeg-7.1.1

1、在msys2中使用gcc编译

网上相关文章很多,随便都能搜到,不再赘述。但是有三点需要说明一下:

(1)、网上很多使用第一种方法的帖子都提到需要修改 msys2_shell(也就是把 rem set MSYS2_PATH_TYPE=inherit 这行前面的 rem 去掉),其实并不需要修改,因为这样做的目的是为了使用 windows 系统的环境变量。而我们是采用 msys2 中的 gcc 工具链编译,并不会用到 windows 系统的环境变量(当然,如果需要依赖 windows 系统中安装的其他第三方模块,那还是得修改)

(2)、也不需要将 msys2 安装目录下的 usr/bin 下的 link.exe 重命名为 link.bak。原因与上面相同

(3)、如果是运行 mingw32.exe 启动的 msys2 环境(直接双击 msys2 安装目录下的这个文件跟先进入命令行然后运行 msys2_shell.cmd -mingw32 是一样的效果),那么编译出来的 dll 是 32 位的。如果是运行 mingw64.exe 启动的 msys2 环境(直接双击 msys2 安装目录下的这个文件跟先进入命令行然后运行 msys2_shell.cmd -mingw64 是一样的效果),那么编译出来的 dll 是 64 位的

这种方法优点是方便,缺点是因为采用了gcc编译工具链所以生成的动态库需要依赖三个额外的动态库:zlib1.dll、libgcc_s_dw2-1.dll、libiconv-2.dll,这让具有强迫症的我有点不能忍受。于是想到如果采用 msvc 工具链是不是就不需要这三个动态库了呢?于是就试试

2、在msys2中使用visual studio编译(有环境变量)

跟第一种方法类似。不同的是:

(1)、需要将 msvc 的 bin 目录加入系统的环境变量

(2)、需要修改 msys2_shell(也就是把 rem set MSYS2_PATH_TYPE=inherit 这行前面的 rem 去掉),这样才能使用windows系统的环境变量,才能找到 msvc 工具链。

(3)、将 msys2 安装目录下的 usr/bin 下的 link.exe 重命名为 link.bak,以避免与 msvc 的 link.exe 冲突

启动 msys2 环境之后可以在命令行输入 which cl 命令来验证工具链是否是 msvc:

然后依次执行以下命令编译 ffmpeg:

./configure --prefix=/home/ffmpeg/build/x86 --toolchain=msvc --arch=x86 --enable-shared --disable-static

make && make install

经过验证,我的想法果然没错。通过使用 msvc 工具链编译出来的动态库不需要依赖 msys2 下面的三个动态库。

但是我遇到一个坑,就是 ffmpeg-7.1.1 要求编译器支持 c11,但是我的 vs2015 并不支持 c11,所以无法编译 ffmpeg-7.1.1,我改用 ffmpeg-4.2.9 后成功编译。也可以使用 vs2019 及以上版本来编译 ffmpeg-7.1.1

3、在msys2中使用visual studio编译(无环境变量)

跟第二种方法类似。不同的是:

(1)、不需要修改 msys2_shell(但要重命名 usr/bin/link.exe)

(2)、要通过 vs 的命令行启动 msys2 环境。在 VS2015 x86 本机工具命令提示符 (因为我需要编译的是 32 位动态库,如果是编译 64 位动态库可能需要选择 VS2015 x64 本机工具命令提示符,我没有验证)点右键选择 以管理员身份运行,在启动的命令行窗口中进入 msys2 安装目录并运行 msys2_shell.cmd

http://www.yayakq.cn/news/749332/

相关文章:

  • 青海 网站开发 图灵wordpress 取消注册邮件
  • 网站的交互性做淘客网站用备案吗
  • 官方网站建设需要做哪些东西嘉鱼网站建设优化
  • 电子科技公司网站建设方案wordpress 论坛末班
  • 想学网站建设方向的研究生好看的模板图片
  • 网站开发入门培训机构酷炫网站欣赏
  • 查看网站dns服务器wordpress怎么安装主题
  • 湖北工程建设总承包有限公司网站太和网站建设
  • 如何建设好网站湖南省建设厅官方网站
  • 太原电子商务网站的建设与服务傻瓜式网站简单界面
  • wordpress访问加速郑州seo优化阿亮
  • 网站建设营销外包公司哪家好开一个小公司需要多少钱
  • 国土局网站建设情况宝安建网站外包
  • 一级a做爰片免费观看网站国内十大软件培训机构
  • 网络营销 企业网站深圳网站设计网站制作
  • 大型网站开发工具下载天马行市民云app
  • 珠海公司网站设计wordpress生成pdf
  • 天津网站建站公司公司网页介绍模板
  • 中英文网站建设需要懂英语吗杭州网站建设
  • 青岛黄岛区建设工程管理局网站专业建设网站公司排名
  • 部队网站建设总结北京网页制作培训班
  • 海关年检要去哪个网站上做个人网页设计思路流程内容
  • 档案网站建设的原则做网站和网页区别
  • 站免费下载安装夏津网站建设价格
  • 工商网站如何做实名制作二维码的软件app
  • 北京知名网站杭州网站建设公司有哪些
  • 织梦dedecms资讯文章类网站模板专门做广东11选5的网站
  • 书生网站wordpress注册登录页面模板
  • 网站开发面试内容网站开发的工作制度
  • 建筑企业资质查询网站在线医生免费咨询