当前位置: 首页 > news >正文

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”。
http://www.dtcms.com/a/269953.html

相关文章:

  • 云原生时代的日志管理:ELK、Loki、Fluentd 如何选型?
  • C++11 算法详解:std::copy_if 与 std::copy_n
  • UVC(USB Video Class,USB 视频类)协议
  • 代码详细注释:ARM-Linux字符设备驱动开发案例:LCD汉字输出改进建议开发板断电重启还能显示汉字,显示汉字位置自定义
  • 高版本的MacOS如何降级?
  • 数据库|达梦DM数据库配置实例步骤
  • npm 包 scheduler 介绍
  • 黑马点评系列问题之P37商户点评缓存作业,用了string和list两种方法,可以直接复制粘贴
  • K8s-配置管理
  • 【web安全】SQLMap 参数深度解析:--risk 与 --level 详解
  • linux网络编程之IO多路复用模型
  • 车载以太网-TC8测试-UT(Upper Tester)
  • Redis 缓存进阶篇,缓存真实数据和缓存文件指针最佳实现?如何选择?
  • 2025年微软mos备考攻略-穷鬼版
  • 3.2 ASPICE的项目监控
  • 内网服务器怎么设置公网远程访问? windows桌面连接和Linux自带SSH外网异地跨网用完整步骤教程
  • K8s——配置管理(2)
  • 基于springboot的非遗传承宣传平台
  • Spring 框架实现账户转账功能全解析
  • 开疆智能Profinet转DeviceNet网关连接掘场空气流量计配置案例
  • 时序数据库:高效处理时间序列数据的核心技术
  • 二进制安全-汇编语言-04-第一个程序
  • 华中科大首创DNN衍射量子芯片登《Science Advances》:3D打印实现160μm³高维逻辑门
  • Transformer-BiGRU、Transformer、CNN-BiGRU、BiGRU、CNN五模型回归预测对比,Matlab代码实现
  • 神经网络之BP算法
  • 基于Java+Maven+Testng+RestAssured+Allure+Jenkins搭建一个接口自动化框架
  • iOS 性能测试工具全流程:主流工具实战对比与适用场景
  • 5-Kafka-replication(副本机制)概念
  • 自动化一次通过率
  • 《Java 反射全攻略1》