你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】TrueSTUDIO 出现 Program “gcc” not found in PATH 的解决

[复制链接]
STMCU小助手 发布时间:2022-3-3 23:49
前言
$ I$ b! v( |' d0 ?& e$ |* HST 收购 Atollic 后,终于发布了专供 STM32 使用的开发环境 TrueStudio v9.0.0 版本。此版本为全功能版本,而且完全免费。这在《免费全功能 STM32 TrueSTUDIO 9.0》一文中已有描述。  |, I# D: U, {

. H% ~/ B5 b" P2 t; q问题* x/ j4 `" g( c- d! `# h- _( i
在安装完最新版本的 TrueSTUDIO v9.0.0 后,打开一些以前就已经带有 TrueSTUDIO 工程的示例代码后,发现会提示Program “gcc” not found in PATH 的问题。3 f# t8 [  ~+ G7 E0 G3 q
% D  x( ^- [* h/ a0 s/ Q
调研
: i+ ^! Y2 Z! @1.了解问题
, Q7 i9 ^0 v. L: p. b, ^4 \0 V! f进入 STM32F401C discovery firmware package 也就是 STSW-STM32136 中的 STM32F401VCT6 的 TIM_TimeBase 例程,直接在\STM32F401-Discovery_FW_V1.0.0\Projects\Peripheral_Examples\TIM_TimeBase\TrueSTUDIO\TIM_TimeBase 打开工程项目,使用 TrueSTUDIO 软件。打开后,可见如下图的情况:
+ H6 l& u+ n! g( L7 N. c. [( w( w, R1 ]' v" ~2 X
F4{ZOQN(S$OL}XG[6QNW[04.png 0 `, }- b, O/ e

, B% l1 f" y! j" ~, ?" D也就是说,提示存在一个错误,为 Program “gcc” not found in PATH。3 T- ~: e& B0 n2 o3 [
2.分析问题
3 i0 j2 y5 Q- c9 p9 \再来试另一个工程项目,来自 STM32F4 标准外设库的模板:$ j2 `: S$ d7 h" x( n
\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Templates\TrueSTUDIO\STM32F401xx。打开项目后,如下:8 V9 o& f  |" t9 ~
% w( t4 @0 g' B6 g
  A" H7 ?% S3 k" G' Q: ?: M
CODX}HJJWLXZ9PC{O)}O7GA.png
1 ?7 A7 N) K- u' x3 D0 j2 K
9 i1 V) z4 c: Q6 @: N6 J+ a4 j并没有提示之前所出现的那个错误。
4 m5 U; M$ u' U5 M9 p一般来讲,ST 官方发布出来的例程,那个项目文件应该是有验证过的,所以按道理 STM32F401-Discovery_FW_V1.0.0 的TrueSTUDIO 项目本身在当时应该是没有问题的。那么为什么现在会出现这样的错误?难道是版本兼容的问题,因为STM32F401-Discovery_FW_V1.0.0 发布时间比 STM32F4xx_DSP_StdPeriph_Lib_V1.8.0 要早很多。
, {1 }' b2 N/ y通过查看 STM32F401-Discovery_FW_V1.0.0 的 Release Notes,可知其发布于 2013 年 9 月 11 日,并得知项目基于Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain v4.2 版本。5 Z* ^# S8 g# g3 r  i

& N0 n2 t, R! d9 M, l3 j VO)XYYAI1C{OBJR}ZI}8BE9.png
9 ]8 x+ P# w, M% ^% F, ]  t! ~0 ^  P( V4 u/ r! g- D0 t
再来看一下 STM32F4xx_DSP_StdPeriph_Lib_V1.8.0 的 Release Notes,可知其发布于 2016 年 11 月 9 日,项目基于 AtollicTrueSTUDIO STM32 (TrueSTUDIO) toolchain v7.0.0 版本。
) I6 Z$ L- Z& u! v' a8 `1 M( {2 o* \
" `2 ?" w6 k5 M/ i! k* A' ]" Q2 M
. Z+ \. H1 X  |# o KF5XKSKAG}_5JZDOHR[%YDI.png 7 c, w4 C# l3 p) v  T
2 k0 P% }; L9 I+ e; z
这时候,再来打开安装完 TrueSTUDIO v9.0.0 安装目录底下的说明文件:在 C:\Program Files (x86)\Atollic\TrueSTUDIO forSTM32 9.0.0\Manuals\General,可以找到一份 Upgrade guide 的 pdf 文档的快捷方式,打开此文档,可以找到如下的说明:9 L3 d2 X; w" e$ B$ ?( w

. Q: a& S) l8 c* @" y6 f& a) b4 u0 w  }) _
BY{HS4}EY5C3HJN7MNUJ%WQ.png
# A5 R! ?* p5 T+ u9 H; M6 m( Q% M$ Z
此处告诉我们出现 Program “gcc” not found in PATH 的错误是因为在一些较老的版本项目中使用了已经弃用的配置,导致出现这样的情况。! J3 b3 y2 o. l# b5 u- v

/ H; h) ^2 b5 ~5 a3.问题解决4 P9 Q  N# [6 ]* b; I
上图中同时指出了,如果遇到这样的情况,按以下步骤可以去除错误提示。& _+ F$ p. m, i9 H% ~- W) B2 x
1) 打开菜单“Window → Preferences”,弹出 Preferences 对话框。选择“C/C++ → Property Pages Settings”页面,在 Display “Discovery Options” page 前面打勾,点击 OK 按钮。如下图:( r6 [+ r. _3 l9 i. J% P
6 F2 {' d. X8 y) E% y
GJ3]1W{KB8OYG6%@K2Z_8TQ.png   m, ?+ D1 E7 q- j3 r/ e! D

; p1 j  r- N  ?0 T" S7 A1 _2) 打开菜单“Project → Properties”,弹出 Properties for TIM_Base 对话框。选择“C/C++ Build → Discovery Options”页面,去掉 Automate discovery of paths and symbols 前面的打勾,点击 OK 按钮。如下图:4 N9 f+ ?7 Q% n- f( E( e( ]
; R) U+ H  p$ t  D$ k7 z5 y7 R
UNQJ4[C{15D_}(3WI@{]154.png
& r- A4 v" ?5 `) _! G6 }$ ^$ S
3 j. ~: ]' C$ q$ B8 v3) 此时,Error 还显示在上面,必须点击一下 Build 按钮后就可以看到此 Error 消失了。如下图:
! o% R: }9 E9 B7 p/ S' G
+ J8 d( W+ x; o, J! c4 x3 Y- C8 x" H P{YFD1GLLO)J_5C$Y2`4~PI.png 5 a" h# g2 z8 s+ k
0 f- R) M; O/ i; i  S
   这个时候,就可以下载调试了,看到 STM32F401C-DISCO 板子上的 LED 灯亮起来并闪烁。
; O. Q) x, L1 g9 J* a$ X   ! }; q6 V$ d# i
结论
" ^$ d. q7 A% E出现 Program “gcc” not found in PATH 的错误来自于版本兼容问题。! V& M: c. {* w$ L8 s  A+ r
   
# }/ m. `5 e" w# {2 T处理
) [" M/ }2 x5 i, _需要对 TrueSTUDIO 的配置和项目的配置进行一些修改才能消除这个错误,具体如前面所述。, I0 E4 ]4 ?2 v2 p) c( d% B2 y; N

: `3 R% V$ C& ~& u6 y
收藏 评论0 发布时间:2022-3-3 23:49

举报

0个回答
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版