工具/软件:Code Composer Studio
从 CCS 6.1开始、一个连接到 Backhawk V100的 BBB…… 我使用向导创建一个简单的"Hello"项目。 (由于一些浮点问题、编译失败... "vfpv3" 我修复了该问题)。
我编译、加载、调试它。 没问题。
该项目还包括 PDK AM335x 1.0.5和 NDK 2.25.1.11 (是的、我添加了它们、希望能开始学习这些套件)。 因此、我决定在小测试项目中添加一些 GPIO。
我正在使用唯一可以找到的文档: "c:/ti/pdk_am335x_1_0_5/packages/API_Documentation.html (缺少它...)
我添加一个简单 的#include 。 不。 找不到该头文件。 我开始挖掘...
我有一个已定义的变量: com_TI_pdk_install_DIR、指向 C:\ti\pdk_am335x_1_0_5。 但这并不是头文件所在的位置、而是更深的位置。 然而、为了使事情复杂化、 "预定义变量"(或任何 CCS 调用它的变量)无论如何都不在我的包含路径中。 我的包含路径中唯一的一个是 "${CG_TOOL_INCLUDE_PATH}" 、只是它未在"链接资源"选项卡的任何位置定义。。。????? 这里发生什么事了???
第一个问题: 头文件在哪里、它相对于这些"链接的资源"如何"正确"包含? 当所有已定义的宏都不匹配传递给编译器的包含路径时、应该如何找到它? 这些"链接资源"如何结合在一起。 因为我已经阅读了 CCS 教程、这就是我应该如何发挥作用的印象。
接下来、我进行搜索、对该文件的路径进行硬编码、以便进行编译。 然后、我从文档中添加其中一个 GPIO 调用(您可以想象它将在哪里...) 接下来、当然、链接器也无法找到它。 我获得了一个"对`GPIO_init'的引用未定义"
下一个问题: 包含此调用的库在哪里? 库名称是什么?
文档文件 "C:/ti/pdk_am335x_1_0_5/packages/API_Documentation.html "完全没有说明这些头文件和库的位置、甚至是库文件的名称。 它对这些功能本身几乎没有作出充分的解释。
而且、由于我发布这个问题、因为文档如此缺乏... 在期望 NDK 套件会出现相同的问题时、是否有人还能回答有关 NDK 的问题?
因为这些都不像"正常"项目那样适合在一起、就像我在过去25年中使用 makefile 构建的项目一样。
最后一个问题:是否有一个真正的文档解释了在使用 PDK、NDK (或我将来可能尝试的 xdias、UIA 或其他套件)时要链接到哪些库?
-CSW




