我有一个跨平台的共享库,我正在使用 GNU autotools 作为构建系统。我希望能够将该库打包为 OS X 上的框架。是否可以使用 autotools + 附加脚本来做到这一点,例如庆典?
是否有任何好的文档可以执行此操作,或者有人知道执行此操作的项目示例吗?我可以复制它吗?
最佳答案
框架是一个包含元数据文件 (Info.plist) 和一个或多个库的美化目录。我不确定是否有对框架的 autotools 支持,但类似于:
# create/cd MyFramework.framework
mkdir MyFramework.framework
cd MyFramework.framework
# create/cd MyFramework.framework/Versions
mkdir Versions
cd Versions
# create/cd MyFramework.framework/Versions/A
mkdir A
cd A
# create MyFramework.framework/Versions/A/MyFramework (the dylib)
cp /path/to/mylibrary.dylib MyFramework
# create MyFramework.framework/Versions/A/Resources
mkdir Resources
# create MyFramework.framework/Versions/A/Resources/Info.plist
cp /path/to/Info.plist Resources
# cd to MyFramework.framework/Versions
cd ..
# create MyFramework.framework/Versions/Current -> A
ln -s A Current
# cd to Myframework.framework
cd ..
# create MyFramework.framework/MyFramework -> Versions/Current/MyFramework
ln -s Versions/Current/MyFramework MyFramework
# create MyFramework.framework/Resources -> Versions/Current/Resources
ln -s Versions/Current/Resources Resources
给定正确定义的 Info.plist 文件和 mylibrary.dylib 应该就足够了。
有关框架目录结构和 Info.plist 内容的更多信息,请参阅 Framework Programming Guide .
关于macos - 是否有使用 autotools 构建 OS X 框架的文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6583121/