当前位置: 首页 > 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.lryc.cn/news/582496.html

相关文章:

  • CSP-S模拟赛二总结(实际难度大于CSP-S)
  • 力扣 239 题:滑动窗口最大值的两种高效解法
  • Android kotlin 协程的详细使用指南
  • C++--AVL树
  • 微前端框架对比
  • (16)Java+Playwright自动化测试-iframe操作-监听事件和执行js脚本
  • 精益管理与数字化转型的融合:中小制造企业降本增效的双重引擎
  • Nexus zkVM 3.0 及未来:迈向模块化、分布式的零知识证明
  • 生成PDF文件(基于 iText PDF )
  • Android framework修改解决偶发开机时有两个launcher入口的情况
  • Prompt Injection Attack to Tool Selection in LLM Agents
  • 论文略读:Prefix-Tuning: Optimizing Continuous Prompts for Generation
  • C++11标准库算法:深入理解std::find, std::find_if与std::find_if_not
  • Python中os.path和pathlib模块路径操作函数汇总
  • react的条件渲染【简约风5min】
  • C#使用Semantic Kernel实现Embedding功能
  • 【知足常乐ai笔记】机器人强化学习
  • TVS管工作原理是什么?主要的应用场景都有哪些?
  • MySQL数据库访问(C/C++)
  • 赛博威破解快消品渠道营销三重困局,助力企业实现“活动即战力”
  • 小米YU7预售现象深度解析:智能电动汽车的下一个范式革命
  • 内容页模板表格显示不全的问题处理
  • IP 能ping通,服务器是否开机?
  • 第8章:应用层协议HTTP、SDN软件定义网络、组播技术、QoS
  • 【快手】数据挖掘面试题0002:求某地铁站每日客流量,乘地铁经过、进出站人都包括在内
  • Tourism Management and Technology Economy,旅游管理与技术经济知网期刊
  • Oracle 存储过程、函数与触发器
  • 【OceanBase诊断调优】—— 执行计划显示分区 PARTITIONS[P0SP9] 如何查询是哪个分区?
  • 数据结构与算法:博弈类问题
  • 服务器经常出现蓝屏是什么原因导致的?如何排查和修复?