导读

由于 Beslyric-for-X 项目开发需要,开始尝试在 Mac Os 下开发 Qt 应用。尝试成功后,记录于此,希望对有类似需求的人有所帮助。

本文以开发 Beslyric-for-X 为例,记录从下载 Virtual box 开始到正常开发并发布的步骤。

本文地址:https://www.cnblogs.com/BensonLaur/p/9461589.html


目录
  1. 使用Virtual Box 安装 Mac Os
  2. 准备 Mac Os 下的开发环境
  3. 准备 Qt 开发环境
  4. 具体项目开发实例:Beslyric-for-x
  5. Mac下用 QT 发布软件
  6. 其他
1、使用 Virtual Box 安装 Mac Os
1 ) 下载 并 安装 最新版本 的 Virtual Box

根据自己当前使用的操作系统平台,下载对应的最新版本的 Virtual Box : https://www.virtualbox.org/wiki/Downloads

2) 下载 Mac Os 系统

之前尝试过下载 mac Os 的 dmg 安装镜像文件来安装,初步尝试不是很顺利。

最终另寻他径,有一篇文章直接提供安装完毕的 Mac Os 10.12 的 Virtual Box 虚拟磁盘文件,方法实测很实用。

文章地址:https://www.cnblogs.com/liming2017/p/7566953.html

为了防止文章失效,简单记录步骤:

1、下载 macOS 10.12 Sierra Final by TechReviews.vmdk--虚拟镜像文件
下载地址:百度网盘(提取码:zu4w) 2、在Virtual Box 上新建虚拟, 名字为 【 MacOS10.12 】(名字需要一致,后面步骤需要)
Mac Os 版本 选择 64 位
 建议分配 4 G 运存
使用已有的虚拟硬盘文件:选择刚才 1 下载并解压后的 vmdk 文件 3、创建完毕后,点击设置,在“系统”设置面板,处理器数量更改为2;主板选项中把 “软驱”去掉
4、显示选项里面把显存设置为128MB
5、点击OK保存设置,接着关闭虚拟机,以管理员身份运行命令提示符(cmd)
6、进入自己安装的目录,如: cd "C:\Program Files\Oracle\VirtualBox\" 进入VirtualBox目录,然后依次输入以下内容
VBoxManage.exe modifyvm "MacOS10.12" --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff

VBoxManage setextradata "MacOS10.12" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"

VBoxManage setextradata "MacOS10.12" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"

VBoxManage setextradata "MacOS10.12" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"

VBoxManage setextradata "MacOS10.12" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"

VBoxManage setextradata "MacOS10.12" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1
(如果提示 VBoxManage.exe 无法识别,可能是 Shell 版本不同,可尝试在 在前面 加上 ".\"  即变为 .\VBoxManage.exe )

7、在 Virtual Box 启动刚创建的虚拟机,理应出现 图形安装界面,逐步进行即可
2、准备 Mac 下的开发环境

在 Mac 下开发需要有相应的开发环境,如同Windows 下的 Visual Studio 以及相关的开发包,在 Mac 下需要安装 XCode 和 Command Line Tools 的工具

从官网获取 开发环境 工具

本想通过虚拟机的共享机制 在 Windows 主机和 Mac 虚拟机上文件传送的,不过好像 Virtual Box 的支持似乎不太好,没成功,直接在虚拟机里下载。

Mac 开发工具版本 似乎需要和 Mac版本有一定的对应关系,从官方下载地址搜索 XCode, 地址 : https://developer.apple.com/download/more/

访问需要 Apple ID,注册一个就可以访问了(一开始用国内126邮箱收到邮件了也无法正常注册,第二次直接 Gmail 邮箱注册成功)。

  

根据 Mac 版本号 10.12 我下载了 XCode 9.0.1 和 Command Line Tools (Mac OS 10.12) for XCode 9.0.1 ,提示需要 Mac OS 10.12.6,(这里的系统是 10.12.1)按提示安装自动升级到 10.12.6 (在 App Store 里可以具体查看和确认升级)。

下载完毕,依次安装 XCode 和 Command Line Tools (XCode 如何安装我不太记得了,好像双击直接安装完毕了,安装完叫 XCode.app ; 直接在 压缩包同目录下,后面配置需要,我剪切到了 /Applications/Xcode.app 的位置)

其他准备

1、安装 brew ,  brew 是 Mac 下的一个包管理工具,如同 Debian/Ubuntu 下的 apt 。安装后方便后面下载相关组件:

安装命令:

 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2、使用 brew 安装相关开发工具

后面详细具体需要什么工具我也不太明确,不过 pkg-config 是后面编译 ffmpeg 等需要用的,在这里,我下载了 pkg-config 和相关工具

brew install automake pkg-config libtool

3、另外,Mac 默认隐藏了 "." 开头的文件以及其他隐藏文件,查看文件有点不太方便,可以打开 Terminal 输入 下面命令,重启生效

defaults write com.apple.finder AppleShowAllFiles -bool true

4、听说 XCode 自带 git (?), 我没尝试不清楚,因为我启动 Mac 后第一件事就是下载 了 git,所以可以安装 XCode 后 输入 git 看有没有对应指令,没有则手动下载

下载地址:https://www.git-scm.com/download/

5、第一次使用 Mac 很不适应,比如找不到直接的剪切操作;快捷键不会用等,建议可以先看看,快捷键  和  剪切操作

3、准备 QT 开发环境

官网下载 qt mac 下的安装包,以及做相应配置

下载 并 安装QT

这里选择 QT Creator 5.7.1 对应的 Mac 版本文件,下载地址:http://download.qt.io/archive/qt/5.7/5.7.1/

选择下载:qt-opensource-mac-x64-clang-5.7.1.dmg

下载完后,按常规操作安装 Qt,安装后的配置,可参考 这篇文章, 不过,我似乎自动检测安装好了,我没怎么动相关的配置。

问题解决

1、建立 qt 项目后,qmake 编译提示: Project ERROR: Could not resolve SDK path for ‘macosx’

解决:Terminal 输入如下:(也就是在这里,我决定将刚才解压的 XCode.app  移动到目录 /Applications/Xcode.app 下的,感觉 Applications 是系统软件比较常规的地方)

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

参考:http://www.renyiwei.com/archives/1326.html

2、qmake 提示类似: Application "/usr/bin/gcc" is used by qmake, but "......" is configured in the kit.
Please update your kit or choose a mkspec for qmake that matches your target environment better.

解决:暂未解决,还不清楚具体如何操作,直接右键提示,关闭它暂时可以继续运行

4、具体项目开发实例: BesLyric-for-X

Beslyric 是一块被设计专门制作网易云音乐滚动歌词(LRC歌词)的 开源软件,初步版本 使用 MIT 协议开源界面库 SOUI 开发,支持 Windows 平台。为了满足 其他平台(Linux 和 Mac)用户需求,BesLyric-for-X 基于 跨平台的桌面应用开发架构 QT,实现 Windows \ Linux (Debian\Ubuntu) \ Mac Os 版本开发。

下载 BesLyric-for-X

使用 git 下载项目代码

git clone https://github.com/BensonLaur/Beslyric-for-X.git
具体项目具体开发

具体开发事项,可查看项目 REAME 说明:https://github.com/BensonLaur/Beslyric-for-X

5、Mac 下用 Qt 发布软件

1,制作图标:https://blog.csdn.net/shang2518019/article/details/79359228

2,find macdeployqt.

/Users/macos/Qt5.7.1/5.7/clang_64/bin/macdeployqt

/Users/macos/Qt5.7.1/5.7/clang_64/bin/macdeployqt  BesLyric-for-mac.app -dmg

暂未实践,后面补充

二级标题

Content

三级标题

Content

6、其他

VMware虚拟机安装黑苹果MacOS Mojave系统详细教程

在 Virtual Box 安装 Mac Os 并安装 Qt 开发应用的更多相关文章

  1. 解决Virtual Box 安装Mac OS X当出现“hfs: summary table not allowed on FS with block size of 2048”问题

    解决Virtual Box 安装Mac OS X当出现"hfs: summary table not allowed on FS with block size of 2048"问 ...

  2. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  3. VirtualBox虚拟机安装Mac OS 10.12

    注:本文作者  (QQ:85805214) 本博主只是转载发布而已. VMware 安装Mac OS 方法 由于Virtual Box拷贝文件比较麻烦,有时候经常出现拷贝失败的情况,故使用VMware ...

  4. VMware 虚拟机安装 Mac OS X Mountain Lion 苹果系统

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  5. 具体解释VMware 9.0.1安装MAC OS X 10.8(历时近3日感想篇)

    突然心血来潮,想用VMware 9.0.1安装MAC OS X,但网上的文章多多少少总有点缺陷,不能适合每个人,在综合了近30篇安装MAC OS X的文章后,我决定公布一篇比較大众化,比較详尽的MAC ...

  6. Windows下虚拟机安装Mac OS X —– VM12安装Mac OS X 10.11

    ____________________________________________________________________________________________________ ...

  7. VMWare 虚拟机 安装 Mac OS X

    VMWare安装Mac OS X 随着iPhone.iPad.Mac等苹果产品越来越火爆,越来越多的初学者想要了解和尝试苹果平台,包括苹果操作系统Mac OS X.苹果演示软件Keynote.苹果开发 ...

  8. VMWare安装Mac OS X

    原文作者 谷月K 2016.08.16 18:55 字数3473 随着iPhone.iPad.Mac等苹果产品越来越火爆,越来越多的初学者想要了解和尝试苹果平台,包括苹果操作系统Mac OS X.苹果 ...

  9. Windows 8.1下安装Mac OS X 10.8虚拟机

    转载自http://blog.csdn.net/jordanxinwang/article/details/43637799 1.准备 宿主操作系统:Windows 8.1 64位.特别地,需要CPU ...

随机推荐

  1. SQLServer 2005Windows验证如何改为混合模式验证

    SQL Server 2005 Windows验证如何改为混合模式验证[摘] by:授客 QQ:1033553122 默认情况下,SQL Server 2005 Express是采用集成的Window ...

  2. Python机器学习入门

    # NumPy Python科学计算基础包 import numpy as np # 导入numpy库并起别名为npnumpy_array = np.array([[1,3,5],[2,4,6]])p ...

  3. JS代码段:返回yyyy-mm-dd hh:mm:ss

    最近做项目的时候正好用到,本着能抄就抄的心态去百度搜索现成的代码, 没想到抄下来的好几个都是错的,要么getMonth没有加1,要么10以下的数字前面没有加0, 我真是日了狗了,这次把写好的正确的直接 ...

  4. AspNetCore2身份验证

    1.在Startup类的Configure方法,添加身份验证的中间件AuthenticationMiddleware app.UseAuthentication(); 2.在Startup类的Conf ...

  5. rsync远程同步的基本配置与使用

    rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用. rsync的官 ...

  6. is_valid校验机制

    先来归纳一下整个流程 (1)首先is_valid()起手,看seld.errors中是否值,只要有值就是flase(2)接着分析errors.里面判断_errors是都为空,如果为空返回self.fu ...

  7. Reachability

    一.Reachability中介绍了取得/检测网络状态的方法. 二.使用 1.添加源文件:Reachability.h和Reachability.m 2.添加framework———SystemCon ...

  8. 17秋 软件工程 团队第五次作业 Alpha Scrum8

    17秋 软件工程 团队第五次作业 Alpha Scrum8 今日完成的任务 世强:部门人员管理界面设计编写: 港晨:设计主页面: 树民:web后端框架与前端对接: 伟航:app前端界面的美工: 陈翔: ...

  9. 【转】struct和typedef struct在C/C++中的区别

    分三块来讲述: 1 首先://注意在C和C++里不同 在C中定义一个结构体类型要用typedef: typedef struct Student { int a; }Stu; 于是在声明变量的时候就可 ...

  10. 【学习笔记】cache/buffer

    cache 是为了弥补高速设备和低速设备的鸿沟而引入的中间层,最终起到**加快访问速度**的作用.buffer 的主要目的进行流量整形,把突发的大数量较小规模的 I/O 整理成平稳的小数量较大规模的 ...