如何将Qt程序从Win转换为Mac
How to convert Qt program from Win to Mac?
我有一个使用C++在QT中编写的Windows程序。我可以知道那些为Windows平台编写的代码是否可以转换为Mac吗?是100%的代码是可转换的,还是没有可转换的?
采用暴力方法,IMO.
下载Mac SDK
安装,打开项目,编译。
如果失败,请检查代码中是否有特定于平台的内容。
它并不"智能",但它是有效的,因为如果你计划为mac编码,你无论如何都需要下载SDK。
(注意,这不是一个交叉编译器,我假设你有一个mac可以在上面开发)
Mac 上有一些不同之处
- 应用程序的安装程序需要从头开始编写(如果有)
- 需要移植Windows API调用(如果有)
- 文件关联(例如.doc表示调用WinWord.exe)在Mac操作系统上的处理方式不同
- 双击关联文件的实现方式不同(不像在Windows中那样通过argv)
- 菜单是不同的(例如,默认菜单包含"关于框",而Windows中的"大约框"通常位于"帮助菜单"下)-请注意,这可以用原生的、良好的QT表示,但Windows程序员通常忘记干净地实现菜单)
- 等等
因此,我的结论是:虽然可以编写干净的Qt代码,可以从一个操作系统100%移植到另一个操作,但通常情况下,程序员无法做到100%干净,因此需要进行一些移植工作。
正如hexa建议的那样,继续编译这些东西,并尝试将错误分类。一旦你有了这些类别,就决定如何继续。
相关文章:
- 防止主数据类型C++的隐式转换
- 模板参数替换失败,并且未完成隐式转换
- 努力将整数转换为链表。不知道我在这里做错了什么
- HEX值到wchar_t字符(UTF-8)的转换
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将 Qvector<uint8_t> 转换为 QString
- 如何在cuSparse中使用cusparseXcoo2csr从coo转换为csc
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 在c++中使用nlohmann从类到json的转换
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 将Integer转换为4字节的unsined字符矢量(按大端字节顺序)
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 复制列表初始化的隐式转换的等级是多少
- 正在将指针转换为范围
- 如何防止 c++ 在从浮点型转换为双精度型(不适用于 IO)时添加额外的小数?
- 将"打开的CV图像"中的"颜色"转换为整数格式
- 是否可以从int转换为enum类类型
- C++ 在 Win DLL 到 Linux SO 转换中将 LPBYTE 更改为无符号字符*后编译器错误
- 如何将Qt程序从Win转换为Mac