gcc

    [ODROID] Linaro gcc? ARM 아키텍처를 위한 gcc!

    오드로이드 위키 페이지를 살펴보면 커널 빌드에 필요한 툴 체인이 무엇인지 알려주고 있습니다. "Linaro gcc"라고 하는데요, gcc는 gcc인데, Linaro는 무엇일까요? Linaro는 2010년에 만들어진 ARM 기반 리눅스 오픈 소스를 지향하는 엔지니어 중심의 비영리 단체입니다. 전 세계의 굵직한 회사들이 참여해서 ARM 기반 리눅스 소프트웨어에 필요한 도구를 개발하고 있습니다. 매월 마지막 주 목요일마다 최신 툴 체인을 배포한다고 합니다. 데비안 계열의 리눅스에서 "apt" 패키지 관리자로는 원하는 버전의 arm을 위한 gcc를 설치할 수 없습니다. 하지만 다행히도 Linaro 홈페이지에 방문하면 여태껏 배포된 gcc를 내려받을 수 있습니다. gcc 버전 4.9 ~ 7.5 저장소 gcc 버전..

    어셈블리 파일 확장자 .s와 .S는 다르다.

    1주일도 넘게 멈춘 진도 최근 RTOS 공부를 시작하면서 어셈블리어로 작성된 코드를 다루게 되었습니다. 제대로 배운 적은 없지만, 많이 어려운 내용이 아니라서 그래도 따라갈 만하다고 생각했었는데요, 도저히 풀리지 않는 오류가 발생해서 많이 헤맸습니다. 어셈블리 코드 상단에 C언어처럼 #include를 이용해 헤더 파일을 불러와 사용하려는데 빌드 오류가 나는 겁니다. 아래처럼요. ➜ rtos git:(working) ✗ make all mkdir -p build arm-none-eabi-gcc -march=armv7-a -mcpu=cortex-a8 -Iinclude -c -g -o build/Entry.o boot/Entry.s boot/Entry.S: Assembler messages: boot/Entr..