Mac配置Qt环境和把应用打包成dmg文件

12.2-MacOS下打包QT应用程序为DMG包,看这一篇就足够了(包括第三方Lib库) 一、前言 在MacOS系统中,应用软件的安装目录,就在应用软件自己里面。因此所谓安装macos软件,就是直接把应用软件复制到你想安装的目录即可。当然标准的应用软件安装目录为“/Applications”。 这种安装目录就在软件自己里面的方式叫做“bundle”。所谓的bundle是指,软件是以目录的形式存在,目录中有主可执行程序和此程序所依赖的库文件,以及此软件相关的配置文件和图标等。只是在mac... 阅读详情

Mac配置Qt环境和把应用打包成dmg文件

1.下载和安装Qt

可以选择官网下载online版本,编译环境需要选中mac,否则,无构建环境;

2.Mac中编译的应用程序都是app

(1)应用的可执行目录是xx.app/Contents/MacOS;

(2)frameworks_my目录加载了一个共享库libuntitled_qt_lib.1.0.0.dylib

  1. 打包依赖库通过macdeployqt来补全;

2.1 包结构目录

 

2.2包结构的tree目录

└── Contents

    ├── Frameworks

    │   ├── QtCore.framework

    │   │   ├── ……

    ……

    ├── Resources

    │   ├── empty.lproj

    │   └── qt.conf

    └── frameworks_my

        └── libuntitled_qt_lib.1.0.0.dylib

2.3 mac中qt动态加载代码

mac 动态加载dylib,代码和其他平台一样,只是文件后缀是dylib;

具体代码如下:

    QLibrary lib;

    // 1.相对路径; ok;

    QString strAppPath = QCoreApplication::applicationDirPath();

#if 0

    qDebug()<<"Mac app path test:"<<strAppPath; // => untitled_qt_mac_test.app/Contents/MacOS;

    lib.setFileName(QString(strAppPath + "//../../../libuntitled_qt_lib.1.0.0"));

#endif

    // 2.打包路径; ok;

    lib.setFileName(QString(strAppPath + "//../frameworks_my/libuntitled_qt_lib.1.0.0"));

    // libuntitled_qt_lib.1.0.0.dylib

    if(!lib.load()){

        qDebug() << "load library failed";

        qDebug() << lib.errorString();

        return 0;

    }

    typedef int (*testMacLib)(int, int);

    testMacLib myAdd = (testMacLib)lib.resolve("testMacLib");

    if(myAdd){

        qDebug() << "1 + 1 = " << myAdd(1,1);

    }

    else{

        qDebug() << lib.errorString();

    }

2.4 nm列出动态库里面的导出函数

     mac平台xcode里面的工具。

  (1)列出 liblistdevs.so 的函数 输出到 listdevs.txt 文本文件里面

      nm -D liblistdevs.so > listdevs.txt 

  (2)列出 liblistdevs.so 的函数 输出到 listdevs.txt 文本文件里面 

      objdump -tT liblistdevs.so > listdevs.txt

2.5 列出某个文件的详细信息

 mac平台xcode里面的工具。

(1)命令行: otool -hv libuntitled_qt_lib.1.0.0.dylib

(2)结果:

libuntitled_qt_lib.1.0.0.dylib:

Mach header

      magic  cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags

MH_MAGIC_64   X86_64        ALL  0x00       DYLIB    19       1776   NOUNDEFS DYLDLINK TWOLEVEL WEAK_DEFINES BINDS_TO_WEAK NO_REEXPORTED_DYLIBS

3.app打包成dmg文件

可以参考csdn文档:

https://blog.youkuaiyun.com/panna_linda/article/details/78644345?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7

             

 

Qt安装for MAC Qt安装for MAC 对于Mac用户,首先应下载Xcode(下载过的请忽略) 然后打开终端安装homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 好目前准备工作就算是完成了。 1.终端安装Qt brew install qt 此步... 阅读详情

相关推荐

Mac下QT开发环境搭建详细教程

Mac下QT开发环境搭建详细教程

世界那么大,我想去看看~【随心更新,看世界去了😄】 1万+

05-在MacOS系统下打包Qt应用程序为dmg(包含第三方动态库)

一、使用环境: Qt 5.12.2 (x86_64-little_endian-lp64 shared (dynamic) release build; by Clang 10.0.0 (clang-1000.11.45.5) (Apple)) on “cocoa” OS: macOS Mojave (10.14) darwin version 18.6.0 二、在MacOS发布dmg安装包 在m...

Robert Zhang 4826

RK3588 MPP,RGA,DRM,QT之RGA

RK3588多路视频采用RGA来进行混合成一帧

dreamliweiming的博客 4266

qt移植windows程序并在mac下打包

本文主要记录qt在windows下开发的项目,如何移植到mac上,并完成打包成dmg

墨、砚 4210

mac配置Qt环境和把应用打包成dmg

mac配置Qt环境和把应用打包成dmg

FileZilla Server 1.2.0 TLS证书过期问题

FileZilla Server TLS证书过期后重新生成

Wigle的备忘录 7528

QT打包mac APP

QT Creator构建项目成功后,在终端输入以下命令: cd /Users/xxx/Qt5.12.9/5.12.9/clang_64/bin

AwoCT的博客 1003

光电容积脉搏波PPG信号分析笔记

脉搏波信号PPG分析笔记

teresa_zp的专栏 6478

Qt在Mac环境下制作dmg安装包

1,编译软件的Release版本 开发完Qt 项目后,我们需要将项目进行打包。首先,编译一个Release版本号的软件,此时编译出来的包大小非常小,这是由于一些类库还没打包进去的原因,还处于开发环境。 2,生成app文件 生成app文件需要借助macdeployqt工具,该工具位于Qt安装文件夹的bin文件目录下,如下图所示。 macdeployqt使用非常简单,切换到该bin目录下,然后执行....

xiangzhihong8的专栏 2676

别再只测电压了!用STM32G474的ADC玩点花的:过采样提升精度与多通道扫描实战

本文深入探讨了STM32G474系列单片机的ADC高级应用,包括硬件过采样技术实现16位精度和多通道扫描结合DMA的自动数据采集方案。通过详细的配置步骤和实战案例,帮助开发者突破传统电压测量局限,提升信号采集精度和系统效率,适用于工业监控、医疗设备等高精度应用场景。

weixin_42647395的博客 240

一阶电路基础知识

一阶电路(First-order circuit)是指由一个电感(L)或一个电容(C)和一个电阻(R)组成的电路。根据电感或电容的位置,一阶电路可以分为RC电路、RL电路、LC电路、RLC电路。一阶电路常用于滤波、放大、时序控制等各种电子设备和系统中。通过调整电阻、电容或电感的数值,可以改变电路的频率响应、滞后/提前相位等特性,实现不同的功能和性能一阶、二阶电路区别一阶电路由一个电容或一个电感与一个电阻组成,而二阶电路则由两个电容或两个电感与一个电阻组成。

weixin_45365488的博客 1万+

Mac Big Sur/Mac11.0 安装Qt与运行环境 以及app打包发布dmg

Mac Big Sur/Mac11.0 安装Qt与运行环境引言Mac Big SurQt 5.15Qt的下载Qt安装本地环境变量的配置编译程序打包发布结语 引言 最近苹果发布了新的操作系统 11.0 使用Qt的小伙伴会发现之前的项目可能不能正常运行起来,因为已经不支持Qt11.5版本之前的界面显示了。索性直接下载更新了Qt,并把步骤和方法与大家分享一下。 Mac Big Sur 这次Mac更新比较大,虽然有很长时间测试,但依旧使一些软件出现运行不稳定等问题。 Mac Big Sur这次UI界面进行了大幅

scz653037148的博客 5185

nCode:GlyphWorks案例教程一

nCode GlyphWorks案例一Comparing Frequency Content of Two Different Tests案例文件目标配置选择数据 Comparing Frequency Content of Two Different Tests 在本案例中,我们将比较来自两个不同测试的六个加速计通道的频率内容。将三轴加速度计放置在车辆的左前角和右前角,然后分别在两个不同的试验路面上行驶12分钟以上。 案例文件 此案例的文件(采用nCode DAC格式)位于nCode安装目录下的\demo

追月行的博客 1万+

Qt开发之MAC版本程序打包

在使用Qt编译生成Release版本后,首先需要使用Qt自带的macdeployqt获取app相关的支持类 1、macdeployqt QT的安装目录中,我是Qt5.9.9 macdeployqt的路径位置:Qt5.9.9/5.9.9/clang_64/bin/macdeployqt 这个双击打开是无法使用的 需要点击终端菜单,选择偏好设置 这个时候重新打开终端 就变为了zsh,然后进入app的路径,使用macdeployqt来打包,我这边就遇到了找不到macdeplo

金属服务,美好生活,天网改变世界,华帝量子科技。 3970

【读书笔记】Verilog的亚稳态现象和跨时钟域处理方法

文章目录 一、亚稳态 (1)跨时钟域的亚稳态现象 (2)亚稳态的多径传输 二、跨时钟域处理 2.1 单bit信号跨时钟域处理 (1)单径两级触发器同步器 (2)相位控制 (3)多径与多级寄存器同步链 (4)组合逻辑信号的同步化 (5)快时钟域信号的同步化 2.2 多bit信号的跨时钟域处理 (1)异步FIFO (2)双口RAM.........

毕淑敏曾说过:“我不相信命运,我只相信自己的手;我不相信手掌上的纹路,但我相信手指加上手掌的力量”。在这个快节奏的社会,只有自己能力不足才会被卷,踏踏实实沉下心来学一些技术,及时记录,方便以后复盘。 2万+

【数据集】全球首个10米分辨率精细分类土地覆盖数据集GLC_FCS10

【数据集】全球首个10米分辨率精细分类土地覆盖数据集GLC_FCS10

WW、forever的博客 1568

MacOS 开发 — Qt 创建Mac 应用如何打包

在安装Qt的时候,在大家安装Qt的文件下,可以找到 macdeployqt 脚本 在命令行下 cd 进入这个目录。然后运行 ./macdeployqt /Users/XXX/QtProject/build-QDemo-Desktop_Qt_5_10_0_clang_64bit-Debug/QDemo.app -dmg 注意前面是 ./,然后就会在你编译的Qt程序目录下面生成一个QDemo.d...

HiroGuo 的博客 7942

2025华为杯第二十二届中国研究生数学建模竞赛E题:高速列车轴承智能故障诊断问题 - 完整解题分析+完整MATLAB源码!

🎓 本文收录于 《滚雪球学数学建模》专栏,本专栏专注于从零基础出发,带你循序渐进掌握数学建模的核心方法与思维路径。通过“滚雪球式”学习法,从最简单的生活化案例到经典建模工具,再到省赛、国赛真题实战演练,逐步积累知识与技能,帮助你搭建完整的建模体系。无论你是刚接触建模的新生,还是希望提升科研与竞赛能力的学者与工程师,本专栏都将为你提供一条清晰、高效、可实操的建模成长路线,助力你快速进阶,突破难点,迈向数学建模竞赛与实际应用的更高峰 🚀!

**My Coding Family** 1994

Mac上Qt安装和配置教程

已剪辑自: https://www.cnblogs.com/GJ-ios/p/15674851.html。

qq_41854911的博客 1万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Mac上Qt安装和配置教程_mac qt

频,并且后续会持续更新**

2401_84253380的博客 6181

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

MAC 下 Qt 程序打包

mac qt 打包

qq_33259248的博客 2385

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

如何在mac系统下,给QT打包

Mac下QT打包 1. 如果没有包含第三方库 1.打包成app 1. qt release编译后 2. ./macdeployqt xxx.app // macdeployqt的目录在../Qt/5.15.2/clang_64/binQt的依赖库会自动打包到这个文件里面,把这个app文件拷贝给别人就可以直接运行 2.打包成dmg的文件 1. qt release编译后 2. ./macdeployqt xx...

mwpawwl的博客 2034

Mac打包Qt可运行程序

默认创建一个100M的空白映像,后续打包会根据app大小划分。但是此时它还是一个较小的包,需要将一些类库一同打包进去。创建好空白映像后,其会出现在磁盘映像一栏,(将桌面上的这个磁盘拖到终端cd即可)编译项目,生成一个软件.app,其在。此时,你的.app文件就变大了许多。将新生成的.app文件放进映像。打开磁盘工具,左上角点击。再借助Qt bin目录中的。工具生成.app文件。即可在其中创建快捷方式。而后可以自行按喜好编辑。而后等待转换成功即可。其已被压缩,打包成功!接着稍微美化一下排版。

2501_91305957的博客 1071

30分钟搞定Qt Go跨平台打包:Windows Installer与macOS DMG制作指南

你还在为Qt Go应用的跨平台打包发愁吗?花费数天研究不同系统的打包工具,却依然搞不定签名和版本管理?本文将带你用Qt官方工具链,30分钟内完成Windows安装包与macOS应用镜像的制作,从此告别繁琐的手动操作。 读完本文你将学到: - 使用qtdeploy一键生成跨平台应用包 - 配置Windows Installer的图标与安装路径 - 制作带数字签名的macOS DMG镜像 - 解决常

gitblog_00225的博客 902

Qt之MAC版打包步骤

Qt程序mac打包

cqltbe131421的博客 570

qt mac 打包dmg

//打包app macdeployqt ******.app //制作成dmg macdeployqt ******.app -verbose=1 -dmg 如果包含三方库请转到: Qt在macOS(含第三方库)应用程序打包发布流程_浪子丨无情的博客-优快云博客 ///////////////////////////////////////////////////////////////////////////////////////////////end ...

网瘾少年丶的博客 394
上一篇: QT 拖拽事件和隐藏输入编辑框
下一篇: 阻止计算机进入休眠或是睡眠的方法
灰灰君呀
博客等级 码龄16年 13粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值