更新xcode15后,缺少No matching function for call to 'iconv'文件

有人像我一样。一大早收到更新后。。
发现项目启动不起来了吗?
No matching function for call to ‘iconv’
No matching function for call to ‘iconv_close’

引擎版本是:Cocos2dx-3.17.2

前几天更新了,模拟器没问题


image
真机就不知道了


难道只有我遇到了这样的情况吗?

你都注意到了,还标红了,你这不是target选错了吗?你运行cocos库干嘛,选中自己的工程吧

找不到这个动态库文件。无论是引擎的target还是我自己的target都一样。
找不到libiconv这个动态库。

那不在mac模拟器上运行,那iphone模拟器上运行试试

都不行。可能你的系统不缺。
/usr/lib/libiconv
所以你能运行。我的不知道为啥。这个目录中没有这个动态库文件。


是不是这个问题,我用的是3.8.1测试的,所以没问题

我忘记说明我的环境了。。
我是Cocosdx3.17.2不是Creator
Creator好像移除了iconv的库了。。

不好意思,看错了版块~

自己安装 iconv 库试试?动态库?运行的时候才报错?

CCFontAtlas.h 文件中替换void* _iconv 为 iconv_t _iconv; 没有引入#include <iconv.h> 这个 需要引入一下

2赞

正解,其实可以在调用的地方强制转换一下

像这样强制转换下就可以正常编译过去了
iconv_close((iconv_t)_iconv);
iconv((iconv_t)_iconv, (char**)&pin, &inLen, &pout, &outLen);

3赞