论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
移动端开发
›
IOS
›
swift 使用SMAMB2包,重新打包的心酸历程
swift 使用SMAMB2包,重新打包的心酸历程
羊蹓狼
金牌会员
|
2022-8-9 14:42:36
|
显示全部楼层
|
阅读模式
楼主
主题
806
|
帖子
806
|
积分
2418
首先网上很多教程是关于使用swift SMAMB2包的,大部分都是
pod "SMAMB2"
复制代码
这种方式还是非常简单的,如果仅仅是这样还不至于专门写一篇文章来纪念他。问题就出在我的项目需要用到SMB协议去读取文件,但是并不是直接读取!
通俗一点来讲就是我的用法和 SMAMB2包提供的用法不同!
那就意味我要重新打包了,而当我看了一下源码发现,AMSMB2竟然又用了libsmb2包,将libsmb2打包成 .a 文件。
刚开始看到两个项目的 README 我还以为会很简单。但是万万没想到,光是打包我就经历了两天才成功!
第一个坎:
我是用的Mac mini安装brew,安装好多次都失败了,在度娘上寻找了一圈。最后在终端输入一下代码:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
复制代码
参考:
https://blog.csdn.net/qq_40922656/article/details/123532784
经过不懈的努力,终于解决了这个问题。
第二个坎:
也不知道是什么鬼,眼看要到开始生成 .a文件的时候返回找不到什么玩意。
经过无休止的百度之后,终于发现了解决方案。
autoreconf -vif
复制代码
但是让我万万没想到的是,这个指令竟然需要到
AMSMB2/buildtool/libsmb2
中去执行(这里的libsmb2文件夹是源码中没有的,需要之后自己添加,如果不添加的话就会自动从github中拉去最新的libsmb2项目)
因为我的项目需要的用法就是要自己重写libsmb2,因此我已经提前准备好了修改之后的libsmb2(公司大佬修改的,用C写的,在下C仅局限于输出Hello world,见笑了)
经过终端编译后,出现一下这一幕就表示你应该是成功了
这个时候就可以进入到
AMSMB2/buildtool
文件夹下执行build命令了!
./build.sh
复制代码
出现以上,就表示你的 .a文件已经构建完成了(目前还是不太清楚这些WARNING是什么意思,如果有明白的大佬欢迎留言指导!)
到此就可以看到你的 libsmb2-ios.a 文件已经安安静静的躺在
AMSMB2/libsmb2
文件夹下了!
第三个坎:
我将已经打包完成的 .a文件并入 AMSMB2项目想要重新打包并生成新的静态 .framework给iOS使用。但是开始编译那一刻我心态崩了啊,祖国山河一片红叉!!!
经过我向公司大佬的咨询在
libsmb2.h
文件中加入以下代码:
#ifndef UINT64_MAX
#include <stdint.h>
#endif
复制代码
very nice,终于干干净净的编译通过了,哈哈哈。
到这里我心酸的自定义libsmb算是画上一部分句号,至于其他的还有一部分内容没有解决,等解决完之后再决定是不是需要写下来!
参考网站:
AMSMB2项目:
https://github.com/amosavian/AMSMB2
libsmb2项目:
https://github.com/sahlberg/libsmb2
autoreconf -vif:
https://stackoverflow.com/questions/15448582/installed-libtool-but-libtoolize-not-found
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
羊蹓狼
金牌会员
这个人很懒什么都没写!
楼主热帖
让你成为网络世界中有破坏力的人-HTTP ...
dolphinscheduler单机化改造
一文带你走进【内存泄漏】
一文搞懂static
保举开源项目:LuCI App AdGuardHome - ...
day01-Tomcat框架分析
读高性能MySQL(第4版)笔记04_操作系 ...
【C#】【System.Linq】一些便捷的数据 ...
邮件管理数据库设计--MySQL
MySQL 8.0.29 instant DDL 数据腐化问 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表