Other Parts Discussed in Thread: CC3200MOD, CC3200, CC3200SDK
Thread 中讨论的其他器件: CC3200、 CC3200SDK
TI 模块: CC3200MOD
CCS 版本: 10.2.0.00009
编译器版本: TI-CGT-ARM_18.12.5.LTS
项目包括: driverlib、中间件、MQTT、oslib (免费 RTOS)、OTA、 simplelink
${CC3200_SDK_ROOT}/netapps/mqtt/ccs/client/mqtt.a
${CC3200_SDK_ROOT}/oslib/ccs/free_rtos/free_rtos.a
${CC3200_SDK_ROOT}/simplelink/ccs/OS_debug/simplelink.a
${CC3200_SDK_ROOT}/driverlib/ccs/Release/driverlib.a
${CC3200_SDK_ROOT}/middleware/ccs/Release/middleware.a
${CC3200_SDK_ROOT}/simplelink_extlib/FLC/CCS/Release/FLC.a
描述:
- 当 TI SDK1.2.0是一个链接资源(名称:CC3200_SDK_ROOT ={PROJECT_LOC}\.\cc3200-SDK)时、项目正在编译正常
- Project 使用 cc_type.h 和 platform.h 文件
- cc_types.h 是间接的、因为使用了 util64.h
- TI MQTT 库使用 platform.h
- 在 cc_types.h 中将 I32定义为 int、 在 platform.h 中将 I32定义为 signed long
- 在 cc_types.h 中将 I8定义为 char、 在 platform.h 中将 I8定义为 signed char
当 TI SDK1.5.0是一个链接资源(名称:CC3200_SDK_ROOT ={PROJECT_LOC}\.\cc3200-SDK_1.5.0)时、编译器错误–没有进行其他更改–只链接到新的 SDK 版本:
- #258类型名称"i32"的无效重新声明(在"C:/Users/../cc3200-sdk_1.5.0/netapps/mqtt/platform/platform.h "的第34行声明) .ccsproject /项目名称 第41行、外部位置:C:\Users\.\cc3200-sdk_1.5.0\中间 件\framework\pm\cc_types.h C/C++问题
- #258类型名称"i32"的无效重新声明(在"C:/Users/../cc3200-sdk_1.5.0/middleware/framework/pm/cc_types.h "的第41行声明) .ccsproject /项目名称 第34行、外部位置:C:\Users\.\cc3200-sdk_1.5.0\netapps\mqt\platform\platform.h C/C++ problem
- #258类型名称"i8"的无效重新声明(在"C:/Users/../cc3200-sdk_1.5.0/netapps/mqtt/platform/platform.h "的第28行声明) .ccsproject /项目名称 第45行、外部位置:C:\Users\.\cc3200-sdk_1.5.0\中间 件\framework\pm\cc_types.h C/C++问题
- #258类型名称"i8"的无效重新声明(在"C:/Users/../cc3200-sdk_1.5.0/middleware/framework/pm/cc_types.h "的第45行声明) .ccsproject /Project name line 28、外部位置:C:\Users\.\cc3200-sdk_1.5.0\netapps\mqt\platform\platform.h C/C++ problem
三个同时使用 cc_type.h 和 platform.h 文件的项目文件:
- gmake:***[CF_MQTT.obj]错误1 项目名称 C/C++问题
- gmake:***[cf_tasks.obj]错误1 项目名称 C/C++问题
- gmake:***[main.obj]错误1 项目名称 C/C++问题
- gmake:目标"全部"不会由于错误而重新生成。 项目名称 C/C++问题
编译器还具有许多与此相关的警告:
- #303-D typedef 名称已声明(具有相同类型) 。ccsproject /项目名称 第27行、外部位置:C:\Users\。\cc3200-sdk_1.5.0\netapps\mqtt\platform\platform.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) .ccsproject / Project name line 31、外部位置:C:\Users\.\cc3200-sdk_1.5.0\netapps\mqtt\platform\platform.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) .ccsproject / Project name line 32、外部位置:C:\Users\。\cc3200-sdk_1.5.0\netapps\mqtt\platform\platform.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) 。ccsproject / Project name line 33、外部位置:C:\Users\.\cc3200-sdk_1.5.0\netapps\mqtt\platform\platform.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) 。ccsproject / Project name line 40、外部位置:C:\Users\.\cc3200-sdk_1.5.0\中间 件\framework\pm\cc_types.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) .ccsproject / Project name line 42、外部位置:C:\Users\.\cc3200-sdk_1.5.0\中间 件\framework\pm\cc_types.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) .ccsproject / Project name line 43、外部位置:C:\Users\.\cc3200-sdk_1.5.0\中间 件\framework\pm\cc_types.h C/C++ problem
- #303-D typedef 名称已声明(具有相同类型) 。ccsproject / Project name line 44、外部位置:C:\Users\.\cc3200-sdk_1.5.0\中间 件\framework\pm\cc_types.h C/C++ problem
已验证 TI SDK 版本1.3.0和1.4.0也存在此错误。
我们的目标是 对 TI 库代码进行尽可能少的修改。
我的问题:
- 为什么 cc_types.h 和 platform.h 文件中的某些 typedef (如 i8和 i32)被声明为不同?
- 有没有关于如何处理此类案例的建议?




