본문 바로가기

트렌드 한눈에 보기/학계 트렌드

STM "No Rule to make Target" 오류 해결 방법

"No Rule to make target" error (st.com)

 

"No Rule to make target" error

 

community.st.com

 

After importing a project, how fix *** No rule to make target `all'. error (st.com)

 

After importing a project, how fix *** No rule to make target `all'. error

 

community.st.com

STM에서는 참 다양한 문제들이 발생하고, 모르는 사이에 조금씩 조금씩 해결되곤 한다. 왜 해결되는지, 왜 문제가 발생한 것인지 알지 못하고 넘어가게 되니 답답할 따름이다.

 

한참 삽질을 한 오류 중 하나는 위 글들과 같이 디버깅을 하고자 했을 때 나오는 "no rule to make target"이었다. 직접 코드를 짠 것이 아니고, 회사에서 전달받은 소스파일을 컴퓨터로 import하는 과정에서 발생한 오류다. 조금 헤매다가 "아, STM에서는 프로젝트 import가 안되나보다" 하는 엄청난 결론에 도달했더랬다.

 

하지만 해결방법은 생각보다 간단했다. 소스파일만 뒤적거릴 것이 아니라, ioc 파일로 들어가게 되면 새로 코드가 작성된다. 그 코드를 바탕으로 디버깅을 해주면 문제없이 작동한다.

 

이런 걸로 한참 삽질을 하는 것도 참 가슴아픈 일이다. 더 가슴 아픈 것은 몇 달 전에도 똑같은 짓을 반복하고 있었다는 것이다. 고새 까먹어서 똑같은 짓을 하고 있었다. 이 글을 통해 실수를 잊지 않았으면 하는 마음이다.


디버깅 2:

좀 더 디버깅을 해본 결과, project clean이 더 선제되어야 함을 발견했다.

ioc 파일로 들어갔을 때 cube MX에서 코드를 새로 작성하겠냐고 물어보는 것은 MX 버전이 다른 프로젝트를 import할 때 내가 migrate를 선택했기 때문이다.


디버깅 3:

좀 더 더 디버깅을 해본 결과, project clean을 해도 안되는 건 안된다.

cube IDE 1.10 로 할 때는 별 짓을 다해도 안되더니, 1.12로 돌렸더니 실행에 성공했다.

그 뒤에 1.10으로 다시 내려서 돌려봤더니 다시 된다.

이건 그냥 프로그램 버그일까? 아니면 내가 놓친 부분이 있는 걸까?