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.

[参考译文] CCS:如何将链接程序标志/生成工件导出到其他CCS项目

Guru**** 2562920 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/585010/ccs-how-to-export-linker-flags-build-artifacts-to-other-ccs-projects

工具/软件:Code Composer Studio

如何将生成工件从静态库项目导出到引用它的其他CCS项目?

我创建了一个静态库项目,我想将该项目链接到其他各种应用程序项目。 静态库项目还应将某些链接器标志导出到依赖项目。

但我不知道如何做到这一点。 我唯一能找到的方法是直接在应用程序中指定库文件和链接器选项。 这不是很优雅。  引用项目不应知道有关引用项目的任何信息,但其名称除外。 我希望只需引用库即可将其放入应用程序中。

有什么想法?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Richard

    一件更优雅的事情是在命令文件中有额外的选项。  然后,从应用程序项目中将此命令文件添加到项目的选项中。

    此致,

    John

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢。 我想知道tirtos内核项目如何在SimpleLink SDK中实现这一点。 我们有一个基于RTSC .cfg文件的tirtos内核项目,然后是多个引用内核项目的示例项目。 我可以通过选择不同的项目引用在不同的内核项目之间无缝切换。

    在应用程序项目的链接程序设置中,我看到了"magic"变量INLETED_libraries和INLETED_library_paths:

    由于tirtos内核项目将其导出结果收集在linker.cmd文件中,我猜inherited_libraries中包含设置该linker.cmd的选项。 那么,如何将此类变量从一个项目导出到另一个项目?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Richard

    据我所知,编译器搜索路径,链接器搜索路径和库中存在这些神奇变量,但优化等其他选项却不存在...  当您指定某个项目依赖于另一个项目时,它们会自动添加。

    例如,这里有一个测试项目和一个lib项目(静态库项目)。  我进入了测试项目,并指定它依赖于lib项目:

    执行此操作后,我看到添加了变量:

    我认为没有办法从依赖项目继承优化设置或其他选项。  但是我会检查一下。

    此致,

    John

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,John:

    感谢您跟进我的问题。

    1. 最高优先级是,找到一种方法,使staticlib自动链接到应用程序,而无需在应用程序项目中明确指定。 这将是inherited_libraries和inherited_library_paths的内容。 我看不出来静态库项目如何为这些“魔术”变量指定内容。
    2. 第二个优先级是将其他链接程序标志“导出”到应用程序项目,可能还有编译器标志。

    您是否知道问题1的答案?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Richard

    看起来为SimpleLink SDK创建了inherite_变量,但此时未使用。 有一种方法可以让"产品"定义包含这些变量值的某些元数据。

    如何将库复制到项目目录中? 项目目录中的库将自动链接。

    此致,
    John
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    本页

    正是我想要的。 我可以在CCS中的何处找到此页面?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Richard

    我以前没有在CCS中使用过这种方法,我不确定它将如何工作。  您可以通过转到项目的属性来访问它。  单击show advanced settings (显示高级设置),然后转至树中的位置,如下所示。  这与您的捕获略有不同,因为CCS Eclipse版本较新。

    它似乎对包含路径起作用。  我在这里添加了一个,它与CCS使用的路径同步。  这是一个非常简洁的功能。  感谢您指出这一点。

    此致,

    John