ios qt开发要点

目前关于ios qt的开发资料比较少,这里整理了几个比较重要的开发要点,基于MacOS14 + Xcode15 + Qt5.15 + cmake + iphone真机。

  • cmake报错,报错信息如下
CMake Error at /Users/user/Qt/5.15.5/ios/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:91 (message):
Library not found: MobileCoreServices
Call Stack (most recent call first):
/Users/user/Qt/5.15.5/ios/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:263
(_qt5_Core_process_prl_file)
/Users/user/Qt/5.15.5/ios/lib/cmake/Qt5/Qt5Config.cmake:28 (find_package)
CMakeLists.txt:28 (find_package)

解决方法:添加cmake参数

-DCMAKE_FIND_ROOT_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
-DCMAKE_SYSTEM_NAME=iOS
-DCMAKE_OSX_SYSROOT=iphoneos
-DCMAKE_OSX_ARCHITECTURES=arm64

并在CMakeLists.txt中添加

if(IOS)
    target_link_options(${user_project_target_name} PRIVATE "-Wl,-e,_qt_main_wrapper")
endif()

参考来源:https://bugreports.qt.io/browse/QTCREATORBUG-26121

  • 找不到openssl,报错如下
  Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
  system variable OPENSSL_ROOT_DIR (missing: OPENSSL_INCLUDE_DIR)

实测设置OPENSSL_ROOT_DIR无效,这里可以手动指定相应的cmake变量,在FindOpenSSL.cmake做相应的修改。

FIND_PATH(OPENSSL_INCLUDE_DIR
  NAMES
    openssl/ssl.h
  PATH_SUFFIXES
	"include"
  HINTS
    ${_OPENSSL_INCLUDEDIR}
  ${_OPENSSL_ROOT_HINTS_AND_PATHS}
  PATH_SUFFIXES
    include
)

# add for ios
IF(IOS AND NOT OPENSSL_INCLUDE_DIR)
    set (OPENSSL_INCLUDE_DIR "/usr/local/opt/opensslios@1.1/include")
    set (SSL_LIBRARY "/usr/local/opt/opensslios@1.1/lib/libssl.a")
    set (CRYPTO_LIBRARY "/usr/local/opt/opensslios@1.1/lib/libcrypto.a")
    list(APPEND OPENSSL_LIBRARIES ${CRYPTO_LIBRARY} ${SSL_LIBRARY})
ENDIF()
  • 打开.pro项目文件报错,无法展开项目文件树
failed to parse default search paths from compiler output

解决方法:在qmake构建步骤添加额外参数

 -early QMAKE_DEFAULT_LIBDIRS=$(xcrun -show-sdk-path)/usr/lib

参考来源:https://bugreports.qt.io/browse/QTBUG-117225

  • 设置AppIcon无效,解决方法:1)在Xcode中将xcassets文件添加到Build Phases中的Copy Bundle Resources中;2)也可以在cmake如下添加:
set_target_properties(${MODULE_NAME} PROPERTIES RESOURCE "xxx.xcassets")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt是一个跨平台的应用程序开发框架,它支持iOS平台的应用程序开发。以下是一些关于在Qt开发iOS手机应用的基本步骤: 1. 安装Qt开发环境:首先,您需要下载并安装Qt开发环境。您可以从Qt官方网站(https://www.qt.io/)上下载适用于iOSQt版本,并按照指示进行安装。 2. 配置Qt Creator:在安装完Qt之后,打开Qt Creator,点击“工具”菜单下的“选项”,然后选择“设备”选项卡。在这里,您需要添加并配置iOS设备。 3. 创建新的Qt iOS项目:在Qt Creator中,点击“文件”菜单下的“新建文件或项目”,选择“其他项目”下的“Qt应用”模板。然后,选择iOS平台,并按照向导进行项目配置。 4. 编写应用程序代码:在Qt Creator中打开新创建的项目,您可以编写应用程序的代码。Qt提供了丰富的API和工具,使得在iOS开发应用程序变得更加容易。 5. 构建和调试应用程序:使用Qt Creator的构建工具栏可以构建和调试您的iOS应用程序。您可以选择使用模拟器进行调试,或者将应用程序部署到实际的iOS设备上进行测试。 6. 发布应用程序:一旦您完成了应用程序的开发和测试,您可以使用Qt Creator的发布工具将应用程序打包为iOS应用程序文件(.ipa),然后将其提交到App Store进行发布。 请注意,QtiOS平台上的应用程序开发可能会受到一些限制和要求,例如苹果公司的开发者计划和App Store审核规则。因此,在开发过程中,请确保遵循相关的规定和要求。 希望以上信息对您有所帮助!如果您有任何进一步的问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值