{"id":302265,"date":"2020-04-21T21:00:12","date_gmt":"2020-04-21T21:00:12","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=302265"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2020-04-21T21:00:12","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=302265","title":{"rendered":"IAR + Clion = \u0434\u0440\u0443\u0436\u0431\u0430"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/498390\/\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/4i\/4a\/vy\/4i4avyzdzklitg6j03heow-uwi4.png\"><\/p>\n<p>  <\/p>\n<p>\u0414\u043e\u0431\u0440\u043e\u0433\u043e \u0437\u0434\u0440\u0430\u0432\u0438\u044f \u0432\u0441\u0435\u043c!<\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u0440\u0430\u043d\u0442\u0438\u043d \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u043b \u043c\u0435\u043d\u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0432\u0441\u0435 \u0441\u0432\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043e\u043c\u0430, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u0438 \u0445\u043e\u0442\u044f \u0434\u043e\u043c\u0430 \u0435\u0441\u0442\u044c \u043a\u0443\u0447\u0430 \u0434\u0435\u043b, \u044f \u0443\u043c\u0435\u043b\u043e \u0441\u043f\u0438\u0445\u043d\u0443\u043b \u0438\u0445 \u043d\u0430 \u0441\u044b\u043d\u0430, \u0430 \u0441\u0430\u043c \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043a\u043e\u043d\u0435\u0446-\u0442\u043e \u0434\u043e\u0438\u0437\u0443\u0447\u0430\u0442\u044c \u0441\u0440\u0435\u0434\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 Clion \u043e\u0442 JetBrains, \u0442\u0435\u043c \u0431\u043e\u043b\u0435\u0435, \u0447\u0442\u043e \u0432 \u0440\u0435\u043b\u0438\u0437\u0435 2020.1 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 IAR toolchain.<\/p>\n<p>  <\/p>\n<p>\u0412\u0441\u0435 \u043a\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u044b\u0439 \u0433\u0430\u0439\u0434 \u0438 \u043a\u0443\u0447\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0432\u0435\u043b\u043a\u043e\u043c&#8230;<a name=\"habracut\"><\/a><\/p>\n<p>  <\/p>\n<h2 id=\"vvedenie\">\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h2>\n<p>  <\/p>\n<p>\u0412 \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0435, \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e C++ IAR Workbench \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440. \u0423 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e\u0437\u0434\u043d\u044f\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043d\u043e\u0432\u044b\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432 \u0421++, \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u0445 \u0431\u0430\u0433\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0438 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u0435\u0449\u0438, \u043d\u043e \u0432 \u0446\u0435\u043b\u043e\u043c \u044f \u043b\u044e\u0431\u043b\u044e \u0435\u0433\u043e.<\/p>\n<p>  <\/p>\n<p>\u0412\u0441\u0435\u0433\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u0437\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u043a IAR, \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u043d\u0438\u0431\u0443\u0434\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438\u043b\u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435, \u0447\u0442\u043e \u043d\u0435\u043c\u0430\u043b\u043e\u0432\u0430\u0436\u043d\u043e, \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0438\u043c\u0435\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u0430 \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u044f \u043c\u043e\u0433\u0443 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u044d\u0442\u043e\u0442 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u041f\u041e \u043a \u043d\u0435\u043c\u0443 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0442\u0435\u043d\u0437\u0438\u0439.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043c\u043e\u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f (\u043a\u043e\u0433\u0434\u0430 \u044f \u0432\u044b\u0437\u0432\u0430\u043b \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 assert \u0443 IAR \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0438 \u043e\u043d \u0432\u044b\u0434\u0430\u043b \u043c\u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u044b\u043d\u044e \u0438\u0437 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438) \u0433\u043e\u0432\u043e\u0440\u044f\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u044d\u0442\u043e\u0442 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0441\u0434\u0435\u043b\u0430\u043d \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 Clang, \u0447\u0442\u043e \u0440\u0430\u0434\u0443\u0435\u0442 \u0441\u0432\u043e\u0435\u0439 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u043e\u0439.<\/p>\n<p>  <\/p>\n<p>\u041d\u043e \u0435\u0441\u0442\u044c \u0443 IAR \u043e\u0434\u043d\u0430 \u043e\u0447\u0435\u043d\u044c \u043d\u0430\u043f\u0440\u044f\u0433\u0430\u044e\u0449\u0430\u044f \u0432\u0435\u0449\u044c \u2014 \u044d\u0442\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440. \u041e\u043d \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f, \u0432 \u043d\u0435\u0433\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0441\u044f \u043a\u0440\u0438\u0432\u0435\u043d\u044c\u043a\u0438\u0439 \u0438\u043d\u0442\u0435\u043b\u0438\u0441\u0435\u043d\u0441, \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0444\u0438\u0448\u043a\u0438 \u0438\u0437 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e, \u043d\u043e \u0432 \u0446\u0435\u043b\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0444\u0440\u0430\u0437\u043e\u0439 \u2014 <strong>&quot;Powered by notepad&quot;.<\/strong><\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0438 \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u044f \u0438\u0441\u043a\u0430\u043b \u0447\u0442\u043e-\u0442\u043e \u0431\u043e\u043b\u0435\u0435 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435, \u043c\u043e\u0434\u043d\u043e\u0435, \u043c\u043e\u043b\u043e\u0434\u0435\u0436\u043d\u043e\u0435, \u043d\u0435\u0434\u043e\u0440\u043e\u0433\u043e\u0435 (\u0430 \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u043e\u0434\u0430\u0432\u043d\u043e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0435).<\/p>\n<p>  <\/p>\n<p>\u041c\u043e\u0439 \u0432\u044b\u0431\u043e\u0440 \u043f\u0430\u043b \u043d\u0430 Clion \u043e\u0442 JetBrains. <\/p>\n<p>  <\/p>\n<h2 id=\"obschaya-informaciya\">\u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f<\/h2>\n<p>  <\/p>\n<p>Clion \u044d\u0442\u043e \u0441\u0440\u0435\u0434\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 \u0421\/\u0421++. \u041d\u043e \u044f \u043d\u0435 \u0431\u0443\u0434\u0443 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0435\u0433\u043e \u043f\u0440\u0435\u043b\u0435\u0441\u0442\u0438, \u043e\u043d\u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0445\u043e\u0440\u043e\u0448\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u044b \u0432 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435. \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e, \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c IAR \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0438 \u043a\u0430\u043a \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u043e\u0442\u043b\u0430\u0434\u043a\u0443. \u041e\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u043a\u0430\u043a \u0432\u0441\u0435 \u044d\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u043e\u0436\u043d\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0431\u0443\u0434\u0443 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u044f\u043c\u0438.<\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u044f \u0443\u0436\u0435 \u0441\u043a\u0430\u0437\u0430\u043b, \u0432 \u0432\u0435\u0440\u0441\u0438\u0438 2020.1 \u0431\u044b\u043b\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 IAR \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430. \u041e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u044d\u0442\u043e \u0418\u043b\u044c\u0435 \u041c\u043e\u0442\u043e\u0440\u043d\u043e\u043c\u0443 \u0430\u043a\u0430 <a href=\"https:\/\/habr.com\/ru\/users\/elmot\/\" class=\"user_link\">Elmot<\/a>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0434\u043e \u0432\u0435\u0440\u0441\u0438\u0438 2020.1 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 IAR \u0431\u044b\u043b\u0430 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0433\u0430\u0434\u043e\u0447\u043d\u043e\u0439 \u0438 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u043e\u043d\u044f\u0442\u043d\u043e\u0439.<\/p>\n<p>  <\/p>\n<p>\u041e\u043d \u0443\u0436\u0435 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043b \u0437\u0434\u0435\u0441\u044c \u0441\u0442\u0430\u0442\u044c\u044e \u043f\u0440\u043e \u0441\u0432\u043e\u0439 \u043f\u043b\u0443\u0433\u0438\u043d \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u041f\u041e \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c ST Cube, \u0430 \u0441\u0435\u0439\u0447\u0430\u0441 \u0435\u0449\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043b \u0440\u0443\u043a\u0443 \u0438 \u0433\u043e\u043b\u043e\u0432\u0443 \u043a \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 IAR. \u041e\u043d \u0442\u0430\u043a\u0436\u0435 \u0432\u043a\u0440\u0430\u0442\u0446\u0435 \u043e\u043f\u0438\u0441\u0430\u043b, \u043a\u0430\u043a \u043f\u043e\u0434\u0440\u0443\u0436\u0438\u0442\u044c Cube, IAR \u0438 Clion <a href=\"https:\/\/github.com\/elmot\/clion-iar-stm32f3-demo\" rel=\"nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p>  <\/p>\n<h2 id=\"sozdanie-proekta\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430<\/h2>\n<p>  <\/p>\n<p>\u0412 \u043e\u0441\u043d\u043e\u0432\u0435 \u0440\u0430\u0431\u043e\u0442\u044b Clion \u043b\u0435\u0436\u0438\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 CMAKE, \u0438 \u043b\u044e\u0431\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0434\u044f CMAKE. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442, \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0430\u043f\u043a\u0443 \u0433\u0434\u0435 \u0431\u0443\u0434\u0443\u0442 \u043b\u0435\u0436\u0430\u0442\u044c \u0432\u0430\u0448\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438. \u041c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0443\u0436\u0435 \u0438\u0437 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432, \u0432 \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, Clion \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0448\u0435\u0440\u0441\u0442\u0438\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438, \u043d\u0430\u0439\u0434\u0435\u0442 \u0432\u0441\u0435 c \u0438 cpp \u0444\u0430\u0439\u043b\u044b \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442 \u0438\u0445 \u0432 \u0441\u043f\u0438\u0441\u043e\u043a (CMAKELIST) \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438.<\/p>\n<p>  <\/p>\n<p>\u041d\u043e \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043d\u0443\u043b\u044f, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u043a\u0430\u043a \u043e\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0443\u043a\u0430\u043c\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e <code>File-&gt;NewProject<\/code><\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/8e\/ea\/z5\/8eeaz5-vy-ujk3ywoytzokvyvz0.png\"><br \/>  \u0412 \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0443\u0442\u044c \u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0443, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u044f\u0437\u044b\u043a, \u0442\u0438\u043f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0432\u0435\u0440\u0441\u0438\u044e \u044f\u0437\u044b\u043a\u0430 \u0438 \u0436\u043c\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 <code>Create<\/code>. \u041a\u043e\u043d\u0435\u0447\u043d\u043e \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u043e\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0440\u0443\u043a\u0430\u043c\u0438 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 CMAKE.<\/p>\n<p>  <\/p>\n<p>\u041d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u0421++17 \u0438 \u0442\u0438\u043f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 C++ Executable. \u041d\u0430 \u0434\u0430\u043d\u043d\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u043d\u0430\u0434\u043e.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/qx\/us\/qe\/qxusqelzd0mqsbekpdz4i_jneso.png\"><\/p>\n<p>  <\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u0443\u0436\u0435 \u0441\u0442\u044c \u043e\u043f\u0446\u0438\u044f <code>Embedded-&gt;STM32CubeMX<\/code>, \u043e\u043d\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u0430\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b .ioc, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0442\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u0437 STM32CubeIDE. \u0410 \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 Clion \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 .ioc \u0444\u0430\u0439\u043b\u043e\u043c, \u0442\u043e \u0432\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043d\u0435\u043c \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u043f\u0440\u043e\u0435\u043a\u0442 Clion.<\/p>\n<p>  <\/p>\n<p>\u041d\u043e \u044d\u0442\u043e \u043d\u0435 \u043d\u0430\u0448 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 IAR \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u043c\u0438 \u043f\u043e \u0431\u0440\u0443\u0442\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0431\u0435\u0437 \u0432\u0441\u044f\u043a\u0438\u0445 \u0442\u0430\u043c Cub\u043e\u0432. \u0418\u0442\u0430\u043a, \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u0438\u043d \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0444\u0430\u0439\u043b <code>main.cpp<\/code>.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/2z\/ks\/_a\/2zks_acvn15elvhtd32irfsfxyy.png\"><\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u044f \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b, \u0432\u0441\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0441 Clion \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 CMAKE, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0444\u0430\u0439\u043b\u043e\u043c \u0441\u0431\u043e\u0440\u043a\u0438 \u0431\u0443\u0434\u0435\u0442 \u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f CMakeList.txt, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0446\u0435\u043b\u0435\u0439 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438, \u0441\u043f\u0438\u0441\u043a\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u0445 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439, \u0441\u043f\u0438\u0441\u043a\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u043c\u043d\u043e\u0433\u0438\u0435 \u0434\u0440\u0443\u0433\u0438\u0435 \u0432\u0435\u0449\u0438, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438.<\/p>\n<p>  <\/p>\n<p>\u041d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0444\u0430\u0439\u043b \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/fc\/n3\/ov\/fcn3ovhjbawugphvdfuazady_dm.png\"><\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435 \u0432 \u043d\u0435\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f CMAKE +<br \/>  \u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0438\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +<br \/>  \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u0421++, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438 \u043f\u0440\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435+<br \/>  \u0418 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u2014 main.cpp<\/p>\n<p>  <\/p>\n<p>\u0421\u043a\u043e\u0440\u043e \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u044e\u0434\u0430 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u0430 \u043f\u043e\u043a\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c toolchain<\/p>\n<p>  <\/p>\n<h2 id=\"vybor-i-ustanovka-toolchain\">\u0412\u044b\u0431\u043e\u0440 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Toolchain<\/h2>\n<p>  <\/p>\n<p>Clion \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043b\u044e\u0431\u044b\u043c toolchain. <\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0414\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u043d\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<p>Toolchain \u2014 \u044d\u0442\u043e \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430. \u041e\u0431\u044b\u0447\u043d\u043e \u0442\u0443\u0434\u0430 \u0432\u0445\u043e\u0434\u0438\u0442, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440, \u043b\u0438\u043d\u043a\u043e\u0432\u0449\u0438\u043a, \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440, \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0432\u0435\u0449\u0438.<\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p>\u041d\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e Clion \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0442\u0443\u043b\u0447\u0435\u0439\u043d\u044b \u2014 MinGW, CygWin, Visual Studio<\/p>\n<p>  <\/p>\n<p>\u0412 \u0441\u043f\u0438\u0441\u043a\u0435 \u043d\u0435\u0442 IAR toolchain, \u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0431\u0435\u0434\u0430, \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439, \u044f \u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u0441 MinGW \u0438 Visual Studio \u0441 \u043e\u0431\u043e\u0438\u043c\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 toolchain, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 Clion.<\/p>\n<p>  <\/p>\n<p>C Visual Studio \u0432\u0441\u0435 \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0449\u0438\u043a \u0443 Microsoft \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0421++ \u043f\u0430\u043a\u0435\u0442 (\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0433\u0430\u043b\u043e\u0447\u043a\u0443, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e C#).<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0440\u0430\u0437\u0443 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0441 MinGW, \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u0441\u044e\u0434\u0430 <a href=\"http:\/\/www.mingw.org\/\" rel=\"nofollow\">http:\/\/www.mingw.org\/<\/a>.<br \/>  \u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f: \u043d\u0443\u0436\u0435\u043d installer, \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0442\u044c \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0430\u0445 <code>Popular<\/code> \u0438\u043b\u0438 <code>All time<\/code>:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/wh\/0x\/ot\/wh0xot5mqmpxw2fdwfrdi-t_kwm.png\"><\/p>\n<p>  <\/p>\n<p>\u041d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439, <a href=\"http:\/\/www.mingw.org\/download\/installer\" rel=\"nofollow\">\u043f\u0440\u044f\u043c\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430<\/a>.<\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c MinGW \u0438 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0443\u0442\u044c, \u043a\u0443\u0434\u0430 \u044d\u0442\u043e \u0432\u0441\u0435 \u0434\u0435\u043b\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/12\/al\/u7\/12alu7pf7rpamhfvwfouyb0cjw4.png\"><\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432, \u0436\u043c\u0435\u043c Continue, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u0441\u044f \u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0418\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u0438. \u0412\u0441\u0435 \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u044d\u0442\u043e GNU C++ Compiler (\u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0438 \u043e\u043d \u0442\u043e \u043d\u0435 \u043d\u0443\u0436\u0435\u043d, \u043d\u043e \u043d\u0443\u0436\u043d\u043e, \u0447\u0442\u043e\u0431\u044b, \u0447\u0442\u043e-\u0442\u043e \u0431\u044b\u043b\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e) \u0438 \u0411\u0430\u0437\u043e\u0432\u0430\u044f \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f. \u0412\u044b\u0431\u0440\u0430\u043b\u0438 \u2014 \u0436\u043c\u0435\u043c <code>ApplyChanges<\/code>.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/gw\/7w\/l7\/gw7wl7sxwnsa9rip5xwktegxuj8.png\"><\/p>\n<p>  <\/p>\n<p>\u0412\u0441\u0435 \u044d\u0442\u043e \u0434\u0435\u043b\u043e \u043f\u0440\u0435\u0432\u043e\u0441\u0445\u043e\u0434\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043c\u0438\u043d\u0443\u0442\u044b. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 MinGW toolchain \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430. \u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u0442\u0435\u043f\u0435\u0440\u044c \u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c.<\/p>\n<p>  <\/p>\n<h2 id=\"nastroyka\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430<\/h2>\n<p>  <\/p>\n<p>\u0421\u0440\u0430\u0437\u0443 \u0441\u043a\u0430\u0436\u0443, \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 Clion \u043d\u0435\u043c\u0435\u0440\u0435\u043d\u043e, \u044f \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u043e \u0432\u0441\u0435, \u0446\u0435\u043b\u044c \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 IAR toolchain.<\/p>\n<p>  <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0438\u0434\u0435\u043c \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 Clion \u2014 <code>File-&gt;Settings-&gt;Build, Execution, Deployment -&gt; Toolchain<\/code> \u0438 \u0436\u043c\u0435\u043c \u043d\u0430 \u043f\u043b\u044e\u0441\u0438\u043a.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/j4\/2b\/96\/j42b96bwgylcgen-u0c2i1-yfyu.png\"><br \/>  \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 toolchain MinGW, \u043d\u0443 \u0438\u043b\u0438 Visual Studio, \u0435\u0441\u043b\u0438 \u0432\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438 \u0435\u0433\u043e. \u0418 \u0436\u0434\u0451\u043c \u043f\u043e\u043a\u0430 Clion \u0441\u0430\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430, make \u0443\u0442\u0438\u043b\u0438\u0442\u044b, \u0438 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430.<br \/>  \u0412\u043e\u043e\u0431\u0449\u0435 \u0436\u0434\u0430\u0442\u044c \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u043c\u044b \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u044d\u0442\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u043c \u0441\u0432\u043e\u0438\u043c \ud83d\ude42<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/r5\/w5\/xc\/r5w5xcld5r2ekwyjrklc-fjtti4.png\"><\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043c\u0435\u043d\u0438\u043c \u0432\u0441\u0435 \u043d\u0430 \u043d\u0443\u0436\u043d\u044b\u0439 \u043d\u0430\u043c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0438 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a. \u0414\u043b\u044f \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u0421 \u0438 \u0421++ \u0444\u0430\u0439\u043b\u043e\u0432 IAR \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0442\u043e\u0442 \u0436\u0435 \u0441\u0430\u043c\u044b\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u043e\u0441\u0442\u043e \u0432 \u043e\u0431\u043e\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440.<\/p>\n<p>  <\/p>\n<p>\u0410 \u0432\u043e\u0442 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043b\u0438\u0431\u043e \u043d\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0439 (Bundled) \u0441 Clion, \u043b\u0438\u0431\u043e \u043d\u0430 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a \u0438\u0437 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0430 GNU ARM (\u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043e\u0442\u0441\u044e\u0434\u0430 <a href=\"https:\/\/developer.arm.com\/tools-and-software\/open-source-software\/developer-tools\/gnu-toolchain\/gnu-rm\/downloads\" rel=\"nofollow\">https:\/\/developer.arm.com\/tools-and-software\/open-source-software\/developer-tools\/gnu-toolchain\/gnu-rm\/downloads<\/a>)<\/p>\n<p>  <\/p>\n<p>\u0421\u0430\u043c\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u0441 Clion:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/dw\/wo\/bx\/dwwobxle0v_n1whwezfdvpx_6mi.png\"><\/p>\n<p>  <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0432\u0430\u0448 toolchain \u0432 IAR, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u043e\u0442 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e MinGW.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ks\/vh\/fx\/ksvhfxscjf5mvqfjtsss28y3mpa.png\"><br \/>  \u0423\u0442\u0438\u043b\u0438\u0442\u0443 make \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0437 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0430 MinGW, \u043d\u043e \u0435\u0441\u043b\u0438 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0447\u0435\u0442\u0441\u044f, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0435\u0451 \u043d\u0430 \u043b\u044e\u0431\u0443\u044e \u0434\u0440\u0443\u0433\u0443\u044e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e clearmake, \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439 ClearCase (\u043d\u0435 \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0439\u0442\u0435, \u043f\u043e\u0447\u0435\u043c\u0443 \u2014 \u0442\u0430\u043a \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c)<\/p>\n<p>  <\/p>\n<p>\u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c make \u0441\u0431\u043e\u0440\u043a\u0443 \u043d\u0430 \u043a\u0430\u043a\u0443\u044e-\u043d\u0438\u0431\u0443\u0434\u044c \u0434\u0440\u0443\u0433\u0443\u044e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430 ninja, \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e\u0431 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e <a href=\"https:\/\/blog.jetbrains.com\/clion\/2019\/10\/clion-2019-3-eap-ninja-cmake-generators\/\" rel=\"nofollow\">\u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p>  <\/p>\n<h2 id=\"bazovaya-nastroyka-cmake\">\u0411\u0430\u0437\u043e\u0432\u0430\u044f \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 CMAKE<\/h2>\n<p>  <\/p>\n<p>\u041f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 CMAKE, \u0434\u043b\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0441\u0431\u043e\u0440\u043e\u043a, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Release \u0438\u043b\u0438 Debug. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043e\u0431\u0435.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0434\u0435\u043c \u0432 <code>File-&gt;Settings-&gt;Build, Executiion, Deployment -&gt; CMake<\/code><\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ci\/sq\/ug\/cisqugefsegper6pbvxu9w3r_ek.png\"><\/p>\n<p>  <\/p>\n<p>\u0418 \u0436\u043c\u0435\u043c \u043d\u0430 &quot;+&quot; \u043f\u043b\u044e\u0441\u0438\u043a<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/jv\/bd\/jg\/jvbdjgkfwxou3ct_ekjuxx1hsr8.png\"><\/p>\n<p>  <\/p>\n<p>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0443 \u0432\u0430\u0441 \u0441\u043e\u0437\u0434\u0430\u0441\u0442\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u043b\u044f Debug. \u0417\u0434\u0435\u0441\u044c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0435 \u043a\u0430\u043a\u0438\u0435 \u043e\u043f\u0446\u0438\u0438 \u0434\u043b\u044f CMake, \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043f\u0430\u043f\u043a\u0443 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438, \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u043f\u0446\u0438\u0438 \u0434\u043b\u044f make \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u0430 (Build Options). \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0441\u0442\u043e\u0438\u0442 \u043a\u043b\u044e\u0447 -j 16( \u0443 \u0432\u0430\u0441 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438 \u0431\u043e\u043b\u044c\u0448\u0435), \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 16 \u044f\u0434\u0435\u0440 \u0434\u043b\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u043c\u043e\u0434\u0443\u043b\u0435\u0439. \u0422\u0430\u043a\u043e\u0439 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0437\u043c \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043a\u043e\u0434\u0430 \u0432\u0435\u0441\u044c \u043a\u043e\u0434 \u043b\u0435\u0436\u0438\u0442 \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435, \u043d\u043e \u0435\u0441\u043b\u0438 \u043e\u043d \u043b\u0435\u0436\u0438\u0442 \u0433\u0434\u0435-\u043d\u0438\u0431\u0443\u0434\u044c \u0432 \u0441\u0435\u0442\u0438 \u0438\u043b\u0438 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0438 (\u043c\u043e\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f) \u0438 \u044d\u0442\u043e\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e, \u0447\u0435\u0440\u0435\u0437 VPN, \u0442\u043e \u043b\u0443\u0447\u0448\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e \u043d\u0430 \u043e\u0434\u043d\u043e \u044f\u0434\u0440\u043e.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u0430 \u0442\u0438\u043f\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 Debug \u0438\u043b\u0438 Release \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a Build Type.<\/p>\n<p>  <\/p>\n<p>\u0422\u043e\u0447\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u0442\u0438\u043f \u0441\u0431\u043e\u0440\u043a\u0438 Release.<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 <code>Apply Clion<\/code> \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 CMAKE, \u0438 \u0435\u0441\u043b\u0438 \u0432\u044b \u043d\u0438\u0433\u0434\u0435 \u043d\u0435 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043e\u0448\u0438\u0431\u043e\u043a, \u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0443 \u0432\u0430\u0441 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0432\u044b\u0431\u043e\u0440 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/wx\/pp\/6e\/wxpp6ex0ww_aylw841qbfkx47a4.png\"><\/p>\n<p>  <\/p>\n<p>\u0412 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0443\u0436\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0436\u043c\u0435\u043c \u043d\u0430 \u043c\u043e\u043b\u043e\u0442\u043e\u043a \u0438 \u0432\u0438\u0434\u0438\u043c \u0447\u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0443\u0441\u043f\u0435\u0448\u043d\u043e, \u0430 \u0432\u043e\u0442 \u043b\u0438\u043d\u043a\u043e\u0432\u043a\u0430 \u043d\u0435\u0442, \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 <code>__write()<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0432\u044b\u0432\u043e\u0434\u0430 \u0432 main.cpp.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/oq\/uq\/mo\/oquqmotb7dlyp_gx9-n-nxgl1ei.png\"><br \/>  \u0412\u0441\u0435 \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043c\u044b \u043d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u043b\u0438\u043d\u043a\u043e\u0432\u0449\u0438\u043a\u0430. \u0414\u0430 \u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u043a\u043b\u044e\u0447\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0442\u043e\u0436\u0435 \u043d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 CMake.<\/p>\n<p>  <\/p>\n<p>IAR \u0432\u044b\u043b\u043e\u0436\u0438\u043b \u043f\u0440\u0438\u043c\u0435\u0440 \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0434\u043b\u044f CMake, \u043e\u043d <a href=\"https:\/\/www.iar.com\/support\/tech-notes\/general\/using-cmake-with-iar-embedded-workbench\" rel=\"nofollow\">\u043b\u0435\u0436\u0438\u0442 \u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c \u0435\u0433\u043e<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cmake\">### BEGIN CMAKE_TOOLCHAIN_FILE # &quot;Generic&quot; is used when cross compiling set(CMAKE_SYSTEM_NAME Generic)  # Set the EW installation root directory set(EW_ROOT_DIR &quot;C:\/Program Files (x86)\/IAR Systems\/Embedded Workbench 8.3\/arm&quot;)  # set common compiler flags for all build types set(CMAKE_CXX_FLAGS  &quot;--no_cse --no_unroll --no_code_motion --no_tbaa --no_clustering --no_scheduling --endian=little --cpu=Cortex-M4 -e --fpu=VFPv4_sp --c++ --no_exceptions --no_rtti&quot;)  set(CMAKE_C_FLAGS  &quot;--no_cse --no_unroll --no_code_motion --no_tbaa --no_clustering --no_scheduling --endian=little --cpu=Cortex-M4 -e --fpu=VFPv4_sp &quot;)  set(CMAKE_ASM_FLAGS &quot;-s+ -r -t8 --cpu Cortex-M4 --fpu VFPv4_sp &quot;)  # Set up the CMake asm compilers set(CMAKE_C_COMPILER &quot;${EW_ROOT_DIR}\/bin\/iccarm.exe&quot;) set(CMAKE_CXX_COMPILER &quot;${EW_ROOT_DIR}\/bin\/iccarm.exe&quot; ) set(CMAKE_ASM_COMPILER &quot;${EW_ROOT_DIR}\/bin\/iasmarm.exe&quot;)  #set output file extentation to .elf set(CMAKE_EXECUTABLE_SUFFIX &quot;.elf&quot;)  # Set up the linker configuration script set(LINKER_SCRIPT &quot;${CMAKE_SOURCE_DIR}\/stm32f411xE.icf&quot;)  #Set IAR setting for bedug build if (CMAKE_BUILD_TYPE  MATCHES Debug) message (&quot;IAR Debug&quot;) # set a preprocessor symbol &quot;DEBUG&quot; add_compile_definitions( DEBUG=1 ) # set up the CMake variables for the compiler for DEBUG set (CMAKE_C_FLAGS &quot;${CMAKE_C_FLAGS} --dlib_config=normal --no_inline&quot;) set (CMAKE_ASM_FLAGS  &quot;${CMAKE_ASM_FLAGS} &quot;) set (CMAKE_CXX_FLAGS  &quot;${CMAKE_CXX_FLAGS} --dlib_config=normal --no_inline&quot;) set(CMAKE_CXX_LINK_FLAGS &quot;--semihosting --config ${LINKER_SCRIPT}&quot;)  else(CMAKE_BUILD_TYPE MATCHES Release) message (&quot;IAR Release&quot;) # set up the CMake variables for the compiler for Release set (CMAKE_C_FLAGS  &quot;${CMAKE_C_FLAGS} --dlib_config=normal&quot;) set (CMAKE_ASM_FLAGS &quot;${CMAKE_ASM_FLAGS} &quot;) set (CMAKE_CXX_FLAGS  &quot;${CMAKE_CXX_FLAGS}  --dlib_config=normal&quot;) set(CMAKE_CXX_LINK_FLAGS &quot;--config ${LINKER_SCRIPT}&quot;) endif() ### END CMAKE_TOOLCHAIN_FILE<\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<p>\u0412\u0441\u0435 \u0447\u0442\u043e \u044f \u0441\u0434\u0435\u043b\u0430\u043b, \u044d\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u0434\u0432\u0435 \u0432\u0435\u0442\u043a\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0442\u0438\u043f\u043e\u0432 \u0441\u0431\u043e\u0440\u043e\u043a Debug \u0438 Release.<br \/>  \u0414\u0430 \u0435\u0449\u0435 \u043f\u043e\u043c\u0435\u043d\u044f\u043b \u0438\u043c\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 *.elf \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e <code>set(CMAKE_EXECUTABLE_SUFFIX &quot;.elf&quot;)<\/code><\/p>\n<p>  <\/p>\n<p>\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u0430\u0448\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0432 CMakelist.txt:<\/p>\n<p>  <\/p>\n<pre><code class=\"cmake\">cmake_minimum_required(VERSION 3.16) project(MyFirstProject)  # enable C and assembler source enable_language(C ASM CXX) set(CMAKE_CXX_STANDARD 17)  include(iarconfig.cmake)  add_executable(MyFirstProject main.cpp)<\/code><\/pre>\n<p>  <\/p>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u043c\u0435\u043d\u044f\u0435\u0442\u0435 Cmakelist.txt \u0438\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 toolchanin \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0443 Cmake \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u041c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0434\u0435\u043b\u0430\u043b\u0430\u0441\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043d\u043e \u043b\u0443\u0447\u0448\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0440\u0443\u043a\u0430\u043c\u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0442\u044c \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 Reload Cmake, \u0430 \u0432\u043e\u0442 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0436\u0435\u0441\u0442\u043a\u043e \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c Cmake \u043f\u0440\u043e\u0435\u043a\u0442, \u043b\u0443\u0447\u0448\u0435 \u043f\u043e\u0439\u0442\u0438 \u0432 toolbox Cmake \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0442\u0430\u043c \u043f\u0443\u043d\u043a\u0442 <code>Reset Cache and Reload Project<\/code><\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/8o\/ie\/rt\/8oiertwyxgj8yrfhxt6e-bygz7g.png\"><\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0441\u043d\u043e\u0432\u0430 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043c\u043e\u043b\u043e\u0442\u043e\u043a. \u0415\u0441\u043b\u0438 \u0432\u044b \u043e\u043f\u044f\u0442\u044c \u0432\u0441\u0435 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u2014 \u0432\u0430\u0448 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>  <\/p>\n<h2 id=\"nastroyka-otladchika\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430<\/h2>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u044f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c OpenOCD gdb \u0441\u0435\u0440\u0432\u0435\u0440, \u043d\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Jlink gdb \u0441\u0435\u0440\u0432\u0435\u0440 \u0438\u043b\u0438 ST-Link gdb \u0441\u0435\u0440\u0432\u0435\u0440.<\/p>\n<p>  <\/p>\n<p>\u0421\u043a\u0430\u0447\u0430\u0435\u043c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e, \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438 \u044d\u0442\u043e \u0431\u044b\u043b\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 0.10.0: <a href=\"https:\/\/sourceforge.net\/projects\/openocd\/files\/openocd\/0.10.0\/\" rel=\"nofollow\">https:\/\/sourceforge.net\/projects\/openocd\/files\/openocd\/0.10.0\/<\/a> \u043c\u043e\u0436\u043d\u043e \u0435\u0451 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u043c\u0443. \u041d\u043e \u0435\u0441\u043b\u0438 \u043b\u0435\u043d\u044c \u0441 \u044d\u0442\u0438\u043c \u0432\u043e\u0437\u0438\u0442\u044c\u0441\u044f, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0431\u043e\u0440\u043a\u0443 \u043f\u043e\u0434 Windows: <a href=\"http:\/\/www.freddiechopin.info\/en\/download\/category\/4-openocd\" rel=\"nofollow\">http:\/\/www.freddiechopin.info\/en\/download\/category\/4-openocd<\/a>.<\/p>\n<p>  <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430 \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438:<\/p>\n<p>  <\/p>\n<ul>\n<li>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0441\u0442\u043e\u0438\u0442 gdb \u043a\u043b\u0438\u0435\u043d\u0442 \u0438\u0437 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0438 <code>File-&gt;Settings-&gt;Build,Execution,Deployment-&gt;Toolchains-&gt;Debugger: Bundled GDB<\/code><\/p>\n<p>  <\/li>\n<li>\n<p>\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430 <code>Run -&gt; Edit Configurations -&gt; Templates<\/code><br \/>  \u0418 \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0442\u0430\u043c <code>Embedded GDB Server<\/code><\/p>\n<p>  <\/li>\n<\/ul>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/bi\/rx\/pv\/birxpvcqzjwelpiahchonrssqeo.png\"><\/p>\n<p>  <\/p>\n<p>\u0412 \u0448\u0430\u0431\u043b\u043e\u043d\u0435 \u043d\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438 \u043c\u043e\u0436\u043d\u043e \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0443\u0441\u0442\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d \u0438 \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u0435\u0433\u043e \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c, \u0430 \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d, \u0447\u0442\u043e\u0431\u044b \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u043f\u0435\u0440\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.<\/p>\n<p>  <\/p>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u0441\u0440\u0430\u0437\u0443 \u0448\u0430\u0431\u043b\u043e\u043d:<\/p>\n<p>  <\/p>\n<ul>\n<li>\n<p>\u0412 \u043e\u043f\u0446\u0438\u0438 <code>Download executable<\/code> \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0433\u0430\u043b\u043e\u0447\u043a\u0443, \u043d\u0430 <code>Update Only<\/code> \u2014 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0432 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043e\u0431\u0440\u0430\u0437 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u0431\u044b\u043b\u0438 \u0431\u044b\u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0432 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442.<\/p>\n<p>  <\/li>\n<li>\n<p>OpenOCD \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e tcp \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443, \u0442.\u0435. \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e \u043f\u043e IP \u0430\u0434\u0440\u0435\u0441\u0443 \u0438 \u043f\u043e\u0440\u0442\u0443 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 3333 (\u043f\u043e\u0440\u0442 \u043c\u043e\u0436\u043d\u043e \u043c\u0435\u043d\u044f\u0442\u044c, \u043d\u043e \u043d\u0430\u043c \u044d\u0442\u043e \u043d\u0435 \u043d\u0443\u0436\u043d\u043e). \u0422\u0430\u043a \u043a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c\u0441\u044f OpenOCD \u0431\u0443\u0434\u0435\u0442 \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435, \u0442\u043e \u0438 \u0432 \u043e\u043f\u0446\u0438\u0438 <code>target remote args<\/code> \u043d\u0443\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <code>tcp:127.0.0.1:3333<\/code> <\/p>\n<p>  <\/li>\n<li>\n<p>\u0412 \u043e\u043f\u0446\u0438\u0438 <code>GDB Server<\/code> \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u0443\u0442\u044c \u043a OpenOCD, \u0442\u0443\u0434\u0430 \u043a\u0443\u0434\u0430 \u0432\u044b \u0443\u0436\u0435 \u0435\u0433\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0448\u0430\u0433\u0430\u0445.<\/p>\n<p>  <\/li>\n<li>\n<p>\u0412 <code>GDB Server args<\/code> \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 OpenOCD \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u0422\u0430\u043a \u043a\u0430\u043a \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u0438\u0439 \u043a\u043b\u043e\u043d Nucleo, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f XNucleo, \u0442\u043e \u044f \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e st_nucelo, \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0432 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0432\u0435\u043d\u0434\u043e\u0440\u0430 \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u043e\u0433\u043e \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430 (hla_vid_pid \u2014 The vendor ID and product ID of the adapter) \u0438 \u043f\u043e\u043c\u0435\u043d\u044f\u043b \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a. \u0412 \u0438\u0442\u043e\u0433\u0435 \u043c\u043e\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0434\u043b\u044f \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 OpenOcd \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<br \/>  <code>-f ..\/scripts\/board\/st_xnucleo_f4.cfg -c &quot;reset_config none separate&quot; -c &quot;init&quot; -c &quot;reset halt&quot;<\/code><\/p>\n<p>  <\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0417\u0434\u0435\u0441\u044c \u043a\u043b\u044e\u0447 -f \u0437\u0430\u0434\u0430\u0451\u0442 \u0438\u043c\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0432\u043c\u0435\u0441\u0442\u043e \u043c\u043e\u0435\u0433\u043e st_xnucleo_f4.cfg, \u043f\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0432\u0430\u0448\u0443 \u043f\u043b\u0430\u0442\u0443, \u043b\u0438\u0431\u043e \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043f\u043b\u0430\u0442\u044b, \u0442\u043e \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0438 \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430 \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u0438 \u0443\u0436\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b.<\/p>\n<p>  <\/p>\n<p>\u041a\u043b\u044e\u0447 -\u0441 \u0437\u0430\u0434\u0430\u0451\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u0437\u0430 \u043a\u043b\u044e\u0447\u0435\u043c \u0432 \u043a\u0430\u0432\u044b\u0447\u043a\u0430\u0445.<\/p>\n<p>  <\/p>\n<ul>\n<li>\n<p>-c &quot;reset_config none separate&quot; \u2014 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0441\u0431\u0440\u043e\u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 SWD \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043d\u043e\u0436\u043a\u0438 \u0441\u0431\u0440\u043e\u0441\u0430 (\u0430 \u0443 \u043c\u0435\u043d\u044f \u043a\u0430\u043a \u0440\u0430\u0437 \u0442\u0430\u043a\u043e\u0439 \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u0438\u0439 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a).<\/p>\n<p>  <\/li>\n<li>\n<p>-c &quot;init&quot; \u2014 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &quot;init&quot;, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0435 OpenOCD \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u043f\u043e\u0434 \u0432\u0430\u0448 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440<\/p>\n<p>  <\/li>\n<li>\n<p>-c &quot;reset halt&quot;_ \u2014 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0431\u0440\u043e\u0441 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043f\u043e\u0441\u043b\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438<\/p>\n<p>  <\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0412 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0432\u0441\u0435. \u0411\u043e\u043b\u044c\u0448\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0443\u0436\u043d\u043e. \u0423 \u0432\u0430\u0441 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/rx\/ko\/0x\/rxko0xkcll_j6dlpcmbbxfgl9dk.png\"><\/p>\n<p>  <\/p>\n<p>\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u044d\u0442\u043e\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u0421\u043d\u043e\u0432\u0430 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 <code>Run -&gt; Edit Configurations<\/code><\/li>\n<li>\u0416\u043c\u0435\u043c \u043d\u0430 &quot;+&quot;<\/li>\n<\/ul>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/c5\/jk\/vy\/c5jkvyaxdin1iszoqpolteht-o4.png\"><\/p>\n<p>  <\/p>\n<p>\u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043d\u0430\u0448 Template. \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u043a\u0430\u043a-\u0442\u043e \u043f\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u044c\u0438<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/sh\/bx\/am\/shbxamp6ajnkufryk7d3wqyyclg.png\"><\/p>\n<p>  <\/p>\n<p>\u0418 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0436\u043c\u0435\u043c \u043d\u0430 \u0436\u0443\u043a\u0430 \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ed\/en\/uj\/edenujlawi7wlzopkmfalgm7l-8.gif\"><\/p>\n<p>  <\/p>\n<p>\u0412 \u043e\u043f\u0446\u0438\u044f\u0445 <code>Advanced GDB Server options<\/code> \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043a\u043e\u0434\u0430. \u042f \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u0430 \u0432\u044b\u0432\u043e\u0434\u0430 \u0447\u0435\u0440\u0435\u0437 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u2014 <code>monitor arm semihosting enable<\/code>. \u0422\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0437\u0430\u0431\u0443\u0434\u044c\u0442\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0433\u0430\u043b\u043e\u0447\u043a\u0443 <code>Download executable: Always<\/code> \u0438\u043d\u0430\u0447\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u0441\u044f.<\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0435 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u043f\u043e\u0442\u043e\u043a\u0443 \u0432\u044b\u0432\u043e\u0434\u0430 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0443 \u0432\u0430\u0441 \u0432 \u043e\u043a\u043d\u0435 <code>Debug: Console<\/code>. \u0412\u044b\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0431\u0443\u0434\u0435\u0442 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e, \u043d\u043e \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043f\u043e\u0439\u0434\u0435\u0442.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0417\u0430\u043b\u0438\u043f\u0430\u044e\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ha\/0o\/9u\/ha0o9u7yfc4ltopgcmptbpdrsv0.gif\"><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u0441\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u043e \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0438\u0445 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f .svd \u0444\u0430\u0439\u043b.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0415\u0449\u0435 \u043e\u0434\u043d\u0430 \u0437\u0430\u043b\u0438\u043f\u0430\u044e\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/e_\/oz\/sa\/e_ozsa4powy0tjgswrwzurs3_zi.gif\"><\/p>\n<\/div><\/div>\n<p>  <\/p>\n<h2 id=\"zavershayuschiy-etap\">\u0417\u0430\u0432\u0435\u0440\u0448\u0430\u044e\u0449\u0438\u0439 \u044d\u0442\u0430\u043f<\/h2>\n<p>  <\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043d\u0430\u0448 \u043f\u0440\u043e\u0435\u043a\u0442 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0432\u043e\u043e\u0431\u0449\u0435 \u043a\u0430\u043a \u043d\u0430\u0434\u043e, \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0432 \u043d\u0435\u0433\u043e \u0444\u0430\u0439\u043b <code>startup.cpp<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0442\u0435\u043a\u0430, \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, fpu \u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0442\u043e\u0447\u043a\u0443 \u0432\u0445\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b <code>main()<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b startup.cpp \u0432 \u043f\u0430\u043f\u043a\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432 \u0441\u0431\u043e\u0440\u043a\u0443.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/hc\/ay\/mq\/hcaymqyrfcpl1gyjaupuvrfi0so.png\"><\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u0448 \u043f\u0440\u043e\u0435\u043a\u0442 \u0433\u043e\u0442\u043e\u0432 \u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u0437\u0434\u0435\u0441\u044c: <a href=\"https:\/\/yadi.sk\/d\/uTF-5cbXFlVgPg\" rel=\"nofollow\">\u041f\u043e\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0434\u043b\u044f IAR<\/a><br \/>  \u0414\u043b\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0432 Clion \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0437\u0430\u0439\u0442\u0438 \u0432 \u043c\u0435\u043d\u044e <code>File-&gt;Open<\/code> \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0430\u043f\u043a\u0443 \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0432\u044b \u0435\u0433\u043e \u0440\u0430\u0437\u0430\u0440\u0445\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043b\u0438.<\/p>\n<p>  <\/p>\n<p><u>\u0414\u0430 \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442:<\/u><\/p>\n<p>  <\/p>\n<p>\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0439 \u043a\u043e\u0434 \u043d\u0430 \u043b\u0435\u0442\u0443, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 Clang \u043f\u043e\u043a\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0434\u043b\u044f IAR, \u0442\u0430\u043a \u043a\u0430\u043a \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0442 \u043a\u043b\u044e\u0447\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0435\u0433\u043e \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c, \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u043d\u044e <code>File-&gt;Settings -&gt; Languages&amp;Frameworks -&gt; C\/C++ -&gt; Clangd<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0423\u0431\u0440\u0430\u0442\u044c \u0433\u0430\u043b\u043e\u0447\u043a\u0443 Enable clangd server.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/8h\/om\/gw\/8homgww9jeq6wmmipmdqsscaqoi.png\"><\/p>\n<p>  <\/p>\n<h2 id=\"zaklyuchenie\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>  <\/p>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 IAR IDE \u043f\u043e\u0441\u043b\u0435 Clion \u043a\u0430\u043a \u0442\u043e \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0447\u0435\u0442\u0441\u044f. \u0425\u043e\u0442\u044f \u0434\u043b\u044f \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0432\u0441\u0435 \u0442\u0430\u043a\u0438 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c IAR, \u0442\u0430\u043a \u043a\u0430\u043a \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0442\u0430\u043c \u044f\u0432\u043d\u043e \u043e\u0431\u0448\u0438\u0440\u043d\u0435\u0435. \u0421 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043a \u043e\u0442\u043b\u0430\u0434\u043a\u0435 \u044f \u0432\u043e\u043e\u0431\u0449\u0435 \u0440\u0435\u0434\u043a\u043e \u043e\u0431\u0440\u0430\u0449\u0430\u044e\u0441\u044c, \u0440\u0430\u0437\u0432\u0435 \u0447\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043a\u043e\u0434 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0433\u0434\u0430 \u043e\u043d \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.<\/p>\n<p>  <\/p>\n<p>Clion \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u0435\u043d \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0443 \u043d\u0438\u0445 \u0431\u044b\u0442\u044c \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e, \u043d\u043e \u0438 \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u044f \u0442\u043e\u0436\u0435 \u043d\u0435 \u0434\u043e\u0440\u043e\u0433\u0430\u044f. \u0414\u0443\u043c\u0430\u044e, \u0447\u0442\u043e \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u0430\u043c Clion \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u043e \u043e\u0431\u043b\u0435\u0433\u0447\u0438\u0442 \u0436\u0438\u0437\u043d\u044c \u0438 \u043f\u0440\u0438\u0432\u043d\u0435\u0441\u0435\u0442 \u043f\u0435\u0441\u0447\u0438\u043d\u043a\u0443 \u0440\u0430\u0434\u043e\u0441\u0442\u0438 \u0432 \u0438\u0445 \u0443\u0433\u0440\u044e\u043c\u0443\u044e \u0436\u0438\u0437\u043d\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u0431\u043e\u043b\u044c\u043d\u043e \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0438\u0445 \u043c\u0443\u043a\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430. \u0414\u0430, \u0447\u0442\u043e \u0442\u0430\u0438\u0442\u044c \u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435 \u0442\u043e\u0436\u0435.<\/p>\n<p>  <\/p>\n<p>\u0410 \u0435\u0449\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 Clion \u043f\u0440\u0438\u044f\u0442\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u0441\u0435 \u0432 \u043e\u0434\u043d\u043e\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u044d\u0442\u0443 \u0441\u0442\u0430\u0442\u044c\u044e \u044f \u043f\u0438\u0448\u0443 \u0442\u043e\u0436\u0435 \u0432 Clion \u0438 \u0441\u0440\u0430\u0437\u0443 \u0432\u0438\u0436\u0443 \u0435\u0451 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ay\/61\/gu\/ay61gu5okqlenl1eockc29wjeoy.png\"><\/p>\n<p>  <\/p>\n<p>\u0410 \u0432\u0435\u0434\u044c \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u043a\u0443\u0447\u0430 \u0432\u0441\u044f\u043a\u0438\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u043b\u044e\u0448\u0435\u043a, \u043f\u0440\u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443, \u043e\u043d\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u044b \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 JetBrains. \u041f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u044e\u0449\u0438\u0439 \u0433\u0438\u0444\u0447\u0438\u043a, \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/oj\/so\/3q\/ojso3qhkczzqqumzj54ib-tv3vw.gif\"><\/p>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/498390\/\"> https:\/\/habr.com\/ru\/post\/498390\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/498390\/\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/4i\/4a\/vy\/4i4avyzdzklitg6j03heow-uwi4.png\"><\/p>\n<p>  <\/p>\n<p>\u0414\u043e\u0431\u0440\u043e\u0433\u043e \u0437\u0434\u0440\u0430\u0432\u0438\u044f \u0432\u0441\u0435\u043c!<\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u0440\u0430\u043d\u0442\u0438\u043d \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u043b \u043c\u0435\u043d\u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0432\u0441\u0435 \u0441\u0432\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043e\u043c\u0430, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u0438 \u0445\u043e\u0442\u044f \u0434\u043e\u043c\u0430 \u0435\u0441\u0442\u044c \u043a\u0443\u0447\u0430 \u0434\u0435\u043b, \u044f \u0443\u043c\u0435\u043b\u043e \u0441\u043f\u0438\u0445\u043d\u0443\u043b \u0438\u0445 \u043d\u0430 \u0441\u044b\u043d\u0430, \u0430 \u0441\u0430\u043c \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043a\u043e\u043d\u0435\u0446-\u0442\u043e \u0434\u043e\u0438\u0437\u0443\u0447\u0430\u0442\u044c \u0441\u0440\u0435\u0434\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 Clion \u043e\u0442 JetBrains, \u0442\u0435\u043c \u0431\u043e\u043b\u0435\u0435, \u0447\u0442\u043e \u0432 \u0440\u0435\u043b\u0438\u0437\u0435 2020.1 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 IAR toolchain.<\/p>\n<p>  <\/p>\n<p>\u0412\u0441\u0435 \u043a\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u043f\u043e\u0448\u0430\u0433\u043e\u0432\u044b\u0439 \u0433\u0430\u0439\u0434 \u0438 \u043a\u0443\u0447\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0432\u0435\u043b\u043a\u043e\u043c&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-302265","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/302265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=302265"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/302265\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=302265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=302265"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=302265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}