08/02/2019 - No Comments!

arm makefile 예제

강의에서 Pat은 프로그램을 다시 빌드하기 위해 명령을 다시 입력하는 것을 자동화하기 위해 약간의 doit 스크립트를 채찍질했습니다. 메이크 도구는 doit의 단지 애호가 버전입니다. Makefile은 프로그램을 빌드하는 데 필요한 단계를 설명하는 텍스트 파일입니다. 다음은 세 가지 대상을 모두 포함하는 매우 간단한 하드 코딩 된 Makefile의 예입니다, button.bin 및 정리 : 예제의 끝에 여분의 빈 라인이 좋을 것입니다. 이제 밑줄이 공백처럼 보입니다. 매우 혼란스럽습니다. 제공된 메이크 파일을 사용하려면 전에 설치된 CodeSourcery 및 RVCT의 위치 및 버전에 대해 구성해야 합니다. 이 작업은 자동으로 또는 수동으로 수행할 수 있습니다. 하하, "빌드 툴체인의 조그마한 하복부에 대한 증오를 불태우는것" 당신의 논리는 소리... 그렇기 때문에 IID는 가능한 한 최선을 다해 커버하는 경향이 있으며, KEIL과 같은 것들이 오픈 소스 도구를 통해 처리 될 수있는 것에 대해 너무 많은 요금을 청구 할 수있는 이유일 가능성이 높습니다.

그래서, 당신의 불타는 증오가 Arduiner와 "시디 하복부"-프로그래머 사이의 어딘가에 무대에 당신을 두고 있음을 인정합니다. * 누군가 *는 Arduiners를 가능하게하기 위해 그 조그마한 하복부를 이해해야합니다. 또는...? 완전히 다른 무언가로 그 시디 하복부를 교체 ... 이는 수행되며 일반적으로 매번 실패합니다. 대부분의 C 컴파일러는 전처리, 컴파일, 건물, 조립, 연결 등의 여러 단계에 대해 자신의 조그마한 하복부를 숨길 수 있습니다. 대부분의 IID는 메이크 파일 및 링커 스크립트를 숨길 수 있습니다... 그러나 어떤 시점에서 라인 아래로 누군가가 실제로 *see*그 seedy-underbelly, ASM 출력은 디버깅에 매우 편리합니다, 전처리 된 출력은 뿐만 아니라. 그래서... 이것은 우리를 어디로 떠나나요...? `당신은 더 나은 무언가를 만들려고 할 수 있습니다 포즈 ...

하지만, 다시, MAKE에 대 한 좋은 것 들 중 하나 (대. CMAKE 및 다른 사람) 그것은 명백하 게 유비쿼터스, 거의 운영 체제 독립, 그리고 암흑 시대 부터 존재 했다. 이 "바퀴"(돌로 만든)로 뭔가를하면 거의 모든 표면에서 굴러 갈 수 있습니다. 그 멋진 새로운 얽힌 고무 바퀴와 함께 뭔가를하고 당신은 엄지 손가락의 표면을 통해 압연 정말 힘든 시간을 해야합니다. 그래서, 다음... 난 아마 그냥 닥쳐해야한다, 여기 ... 하지만 우리는 그것을 더 걸릴 수 있습니다... 고무 층으로 돌 바퀴 라인, 또는 그 돌을 분쇄하고 철로 녹아 ... 우와, 우리는 여전히 돌로 만든 바퀴를 가지고있다. 어쨌든, 나는 우리가 여전히 휠 웰을 가지고 있어 기쁘다, 그 고무 타이어 누출 또는 파편 우리는 여전히 있어 * 뭔가 * 롤에, 하지만 사람들 (자신처럼?) 그들의 방법을 가지고 있다면, 우리는 모두 풍선과 펠트의 포장 도로로 만든 바퀴에 주위에 운전하고, 영혼을 나태 오프로드를 가기 위해 휠 웰을 재발견하는 방법을 알고 있을 것입니다... 우리는 단지 터지는없이 시멘트에 롤 것 바퀴를 재현하기 위해 극저온에서 사람을 데려 갈 것이다! 멕시코와 미국 사이의 벽에 대한 논의는 결코 없을 것이고, 벽은 시멘트 대 펠트 포장 도로에 지나지 않을 것입니다! 꼬마! 이러한 옵션의 숫자는 지난 번에 AVR makefile와 공유됩니다 - 예를 들어, 자신의 섹션으로 함수를 분할하고 가비지 수집.

ARM 관련 항목에는 프로세서와 "thumb" 명령어 집합 옵션이 포함됩니다. 마지막으로 링커 플래그LFLAGS에서 메모리 맵(stm32f4.ld)을 링커에 전달하여 모든 것이 메모리에 들어가야 하는 위치를 알려줍니다. 칩에는 GCC가 우리를 위해 채울 수있는 간단하고 일관된 메모리 레이아웃이 있기 때문에 AVR 사례에서이 파일이 필요하지 않았습니다. ARM 세계에서는 그렇지 않지만 사용 하는 개발 라이브러리에서 프로젝트에 대 한 올바른 메모리 맵을 찾을 수 있습니다.

Published by: jeshurun

Comments are closed.