首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MSYS2环境的使用

MSYS2环境的使用
EN

Stack Overflow用户
提问于 2021-08-01 03:09:14
回答 1查看 1.8K关注 0票数 4

我想彻底了解来自MSYS2平台的环境的使用。部分描述可用在:https://www.msys2.org/docs/environments/

我明白的是:

  1. MSYS环境用于构建仅在MSYS2环境中运行的应用程序。有一个POSIX层可以通过cygwin C库获得。应用程序是用GCC编译的64位( 32位MSYS2除外)。
  2. MINGW64 用于创建独立于MSYS2环境运行的本机Windows应用程序。使用旧的MSVCRT技术。应用程序由GCC编译,共64位。
  3. MINGW32 用于创建独立于MSYS2环境运行的本机Windows应用程序。使用旧的MSVCRT技术。应用程序用GCC编译为32位。
  4. UCRT64环境应用程序是用GCC编译的64位。使用新的UCRT技术。
  5. CLANG64环境应用程序使用LLVM编译64位。使用新的UCRT技术。

UCRT64和CLANG64之间的区别是不同的编译器。Clang (用于LLVM的前端)与GCC命令部分兼容。

我的问题:

但是什么时候使用UCRT64,什么时候使用MINGW64?我可以用UCRT64构建库,这样我可以动态地或静态地链接,然后用MSVC编译器构建一个项目?是否有可能用MSYS2构建一个库,我以后可以使用MSVC编译器链接它呢?

EN

回答 1

Stack Overflow用户

发布于 2022-10-19 17:34:31

@HolyBlackCat:你的答案可能会被一些读者误解。这并不是错误的,但要理解细节,我们应该读者指向MSYS2环境概述

我的意思是: MINGW编译器并没有过时,但是明威将代码链接到MSVCRT运行时库,后者可能会在某个未知的时间内死去。UCRT将代码链接到新的(也许未来的证据?)ucrt运行时库,它可以赢得M$ race。但是,如果善良的读者想要将他的二进制文件与一些MSVCRT制作的DLL、LIBs或EXEs链接起来,他需要使用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68607245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档