msys2使用特定版本gcc编译thrift

1.安装msys2,修改安装目录下msys2.ini,mingw32.ini,mingw64.ini三个文件

MSYS2_PATH_TYPE=inherit

忘了默认有没有带这个参数了,有就改成inherit,没有就加一行,这个用来引用windows的环境变量设置到msys2中。

三个文件的关系不是很清楚,看起来应该是mingw32.ini设置32位环境,mingw64.ini设置64位环境,特定环境没有的设置继承msys2.ini的设置,一般都是这种关系,没验证,为了省事就都设上了

2.windows安装对应的Qt Mingw版本,我因为要在Qt环境中使用,不用Qt的可以自行单独安装Mingw编译器,高版本的Qt自带了Mingw编译器。将安装的64位mingw编译器所在的bin目录加入windows环境变量中。

3.运行msys2中mingw64.exe启动64位命令行,执行

pacman --needed -S bison flex make mingw-w64-x86_64-openssl \
            mingw-w64-x86_64-boost mingw-w64-x86_64-cmake \
            mingw-w64-x86_64-zlib mingw-w64-x86_64-libevent

安装依赖包,不用带mingw-w64-x86_64-toolchain,因为我们要用自己制定版本的mingw编译器

4.下载thrift源码,解压,切换到源码目录,执行以下命令生成makefile

mkdir ../thrift-build
cd ../thrift-build
cmake -G"MinGW Makefiles" -DCMAKE_MAKE_PROGRAM=/mingw64/bin/mingw32-make \
   -DCMAKE_C_COMPILER=x86_64-w64-mingw32-gcc.exe \
   -DCMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++.exe \
   -DWITH_LIBEVENT=ON\
   -DWITH_SHARED_LIB=ON -DWITH_STATIC_LIB=ON \
   -DWITH_JAVA=OFF -DWITH_PYTHON=OFF -DWITH_PERL=OFF \
   ../thrift

此处设置与官网推荐不同,官网上DWITH_LIBEVENT和DWITH_SHARED_LIB都是设成OFF的,可能当时msys编译环境还不完善,无法编译通过,不过目前已经都可以编译通过了

5.继续执行

cmake --build .

耐心等待即可编译完成,编译结束后可在lib目录找到编译结果库文件

6.如果要编译32位版的,需将32位版的mingw编译器所在目录加入windows环境变量,启动32位版msys命令行运行环境,同时第三部安装依赖包的命令换成一下内容,重复4-5步即可

pacman --needed -S bison flex make mingw-w64-i686-openssl \
            mingw-w64-i686-boost mingw-w64-i686-cmake \
            mingw-w64-i686-zlib mingw-w64-i686-libevent

编译成功的库文件地址:https://gitee.com/godismortal/mingw-thrift.git

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用MSYS2和VS2015编译FFmpeg,你可以按照以下步骤进行操作: 1. 首先,你需要下载并安装MSYS2。你可以从官方网站https://www.msys2.org/下载MSYS2安装程序。 2. 安装完成后,打开MSYS2的命令行界面,并运行以下命令来安装必要的工具:pacman -S make gcc diffutils 3. 为了避免和MSVC的link.exe程序冲突,你需要将C:\msys64\usr\bin\link.exe重命名为C:\msys64\usr\bin\link_orig.exe。 4. 下载YASM(The Yasm Modular Assembler),你可以从官方网站https://www.tortall.net/projects/yasm/wiki/Download下载YASM。将下载的yasm--win64.exe重命名为yasm.exe,并将其拷贝至MSYS2的安装目录(比如C:\msys64)。 5. 现在你可以下载FFmpeg的源代码。你可以从官方GitHub仓库https://github.com/FFmpeg/FFmpeg下载FFmpeg的源码。 6. 打开MSYS2的命令行界面,并切换到FFmpeg源码所在的目录。 7. 运行以下命令来配置FFmpeg的编译选项:./configure --toolchain=msvc --arch=x86_64 --enable-yasm --enable-asm --enable-shared --disable-static 8. 配置完成后,你可以运行make命令来开始编译FFmpeg。请注意,编译过程可能会比较耗时,请耐心等待。 9. 编译完成后,你可以使用编译好的库来进行你的项目开发。 总结一下,使用MSYS2和VS2015编译FFmpeg的步骤包括安装MSYS2、安装必要的工具、重命名link.exe、下载YASM、下载FFmpeg源码、配置编译选项、运行make命令进行编译。希望以上信息对你有帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [使用msys64+vs2019在编译ffmpeg](https://download.csdn.net/download/ihmhm12345/13116875)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [使用MSYS2 + VS2022编译FFmpeg](https://blog.csdn.net/powang2011/article/details/122724685)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值