cocos2dx3.x项目升级到xcode15以上的iconv与duplicate symbols报错问题

cocos2dx3.x项目升级xcode15以上后会有几处报错。

1. CCFontAtlas.cpp文件下的iconv与iconv_close的报错。修改如下:

//        iconv_close(_iconv);
        iconv_close((iconv_t)_iconv);

            iconv((iconv_t)_iconv, (char**)&pin, &inLen, &pout, &outLen);
//            iconv(_iconv, (char**)&pin, &inLen, &pout, &outLen);

2. Duplicate symbols报错。这是因为Xcode 15以上采用了新的链接器,即ld_prime。虽然新链接器带来了许多性能改进,但在某些情况下,它可能不兼容旧的库或代码结构,导致Duplicate symbols错误。为了解决旧项目兼容性问题我们需要告诉Xcode在编译时使用旧的链接器(ld64),而不是新的ld_prime链接器。这样做可以确保与旧库和代码结构的兼容性,从而避免Duplicate symbols错误。

  1. 打开Xcode,并选择你的项目。
  2. 在项目导航器中找到你的目标(Target)。
  3. 点击目标,然后选择“Build Settings”(构建设置)。
  4. 在搜索框中输入“Other Linker Flags”(其他链接器标志)。
  5. 在“Other Linker Flags”下,添加一行新的标志:“-ld64”。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

itme268

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值