MAC下小技巧
程序员文章站
2022-05-04 17:30:00
...
转载请注明出处。https://rhirufxmbcyj.gitlab.io
1、mac下xcode链接动态库
将dylib拷贝到源码文件夹下,然后在xcode工程中添加文件,将dylib添加到工程中编译即可
使用cmake编译出的程序没有图标
mac下app的图标需要手动指定图片和图片名(在info.plist中)
- MAC下的图标应设置为icns格式
- 图标文件应加入源码文件列表中
- 图标的路径需要为全路径
set(APP_ICNS ${ROOTDIR}/src/qt/Resources/myapp.icns)
set_source_files_properties(${APP_ICNS} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
add_executable(my_project MACOSX_BUNDLE ${APP_ICNS} ${SOURCE_FILES})
这一步完成后只是在make完以后,app的Contents下Resources里出现了icns图标,还需要如下代码设置Info.plist才能对app包起作用
set_target_properties(my_project PROPERTIES MACOSX_BUNDLE_ICON_FILE myapp.icns)
ps:make完以后手动修改Info.plist无效
类似在cmake中修改Info.plist字段中的值还有以下
MACOSX_BUNDLE_INFO_STRING
MACOSX_BUNDLE_ICON_FILE
MACOSX_BUNDLE_GUI_IDENTIFIER
MACOSX_BUNDLE_LONG_VERSION_STRING
MACOSX_BUNDLE_BUNDLE_NAME
MACOSX_BUNDLE_SHORT_VERSION_STRING
MACOSX_BUNDLE_BUNDLE_VERSION
MACOSX_BUNDLE_COPYRIGHT
另外可以直接设置plist的模板
启用了MACOSX_BUNDLE的可执行目标将在Mac OS X上构建为应用程序包。默认情况下,通过配置位于CMAKE_MODULE_PATH中的名为MacOSXBundleInfo.plist.in的模板来创建其Info.plist文件。此属性指定备用模板文件名,该名称可以是完整路径。
https://cmake.org/cmake/help/v3.0/prop_tgt/MACOSX_BUNDLE_INFO_PLIST.html
MAC下的实用工具
-
十六进制编辑器:010Editor、Synalyze It!
-
类似objdump功能:otool
上一篇: Mac环境变量设置
下一篇: Mac程序文件权限问题