您好!
我正在尝试将 Mongoose Web Service 开源代码包含到我的项目中。 源代码是一个单片.c 文件并且将宏用于构建选项。 如果构建选项未指定、则该代码不会链接到最终的二进制文件中。 这要求编译器支持链接选项来执行此操作。 对于 GCC 编译器,使用--gc-sections 链接选项。
TI 的 Code Composer ARM 编译器是否支持类似选项、或者此功能在默认情况下处于启用状态?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我正在尝试将 Mongoose Web Service 开源代码包含到我的项目中。 源代码是一个单片.c 文件并且将宏用于构建选项。 如果构建选项未指定、则该代码不会链接到最终的二进制文件中。 这要求编译器支持链接选项来执行此操作。 对于 GCC 编译器,使用--gc-sections 链接选项。
TI 的 Code Composer ARM 编译器是否支持类似选项、或者此功能在默认情况下处于启用状态?
我认为我不理解这个问题。 如果您不希望工具自动删除与 Mongoose Web Service 相关的代码和数据、您就会使其听起来好像不希望工具自动删除一样。 但 gcc 链接器选项 -- GC 部分 正是这样。
默认情况下、TI Arm 工具链中的链接器会删除从未调用的函数或从未使用的数据。 要为特定函数或数据变量禁用此行为、请使用选项 --retain= Name_function_or_variable。
谢谢。此致、
-乔治
谢谢 George!
"TI Arm 工具链中的链接器默认会删除从未调用的函数或从未使用的数据。" 这正是我想澄清的。 如果未选择相关功能、我确实希望工具删除未使用的代码和数据。
我还有一个问题:
玩 Mongoose 游戏时、我发现 TI 的工具不提供以下头文件、因此、当我在项目中加入 Mongoose 源代码时、这导致无法进行编译。
#包含
#包含
#包含
我可以简单地从 GCC 环境复制这些文件吗?
我能简单地从 GCC 环境复制这些文件吗?
否。 我认为这是 Linux Box 等托管系统的 GCC 工具链。 在这种情况下、这些头文件的内容是特定于该系统的。 但不适用于嵌入式 Arm 系统。
不幸的是,我缺乏提出替代方案所需的专业知识。 我将通知器件专家有关该主题的情况。
谢谢。此致、
-乔治