2013-02-17 13 views
8

Czy ktoś może mi powiedzieć, jak zainstalować kompilator krzyżowy (język programowania C) dla mikroprocesora SA1100? Mam ubuntu 12.04 LTS. Jestem kompletnym noobem dla Linuksa, właśnie wczoraj zainstalowałem Ubuntu. Potrzebuję specjalnego wariantu kompilatora GCC o nazwie "arm-unknown-linux-gnu-gcc", ale nie wiem, jak to zrobić.Jak zainstalować kompilator krzyżowy (na Ubuntu 12.04 LTS) dla mikroprocesora SA1100?

Czy ktoś może mi pomóc?

+0

Czy wypróbowałeś 'apt-get install gcc-arm-linux-gnueabi' lub' apt-get install gcc-4.7-arm-linux-gnueabi'? Bardzo polecam również możliwość skompilowania zwykłego programu w języku C dla twojego systemu Linux (np. Poznanie podstaw 'gcc',' make' ... poleceń i użycia edytora 'emacs' lub' gedit' ...) i wymagany kompilator krzyżowy zależy również od systemu uruchomionego na karcie sprzętowej SA1100. –

+0

Wiem, jak skompilować zwykły program C. To był "gcc -o hello hello.c". Próbowałem już 'apt-get install gcc-arm-linux-gnueabi' i zainstalowałem, ale kompilacja krzyżowa nadal nie działa. Chcę krzyżować kompilację programów z (na przykład) 'arm-unknown-linux-gnu-gcc -O2 -Wall -o hello.c', ale mówi mi, że polecenie nie może zostać znalezione. Czy możesz mi również powiedzieć, do czego służy marka? Dziękuję, doceniam twoją pomoc! – n00b1990

+0

Powinieneś używać 'gcc -Wall -g hello.c -o hello'; Informacje o 'make', przeczytaj http://www.gnu.org/software/make/manual/html_node/index.html i użyj programu' arm-linux-gnueabi-gcc' jako swojego cross-kompilatora. –

Odpowiedz

22

Jak powiedziałem w komentarzach, spróbuj

apt-get install gcc-arm-linux-gnueabi 

lub

apt-get install gcc-4.7-arm-linux-gnueabi 

ja też zalecamy jest w stanie skompilować zwykły program w C dla systemu Linux (tj nauczyć się podstaw gcc, make ... polecenia i sposób korzystania z edytora, takiego jak emacs lub gedit ...) i odpowiedni kompilator krzyżowy zależy również od systemu działającego na karcie sprzętowej SA1100. Nie zapomnij przekazać -Wall do żadnej kompilacji GCC. Prawdopodobnie będziesz chciał zdebugować swój program (przekazać -g do GCC w kompilacji i użyć debugera gdb). Kiedy twój program działa dobrze, skompiluj go z -O2, aby poprosić GCC o zoptymalizowanie swojego kodu maszynowego.

Naucz się korzystać z GNU make-e. napisać Makefile -s- czytając jego documentation i użyć arm-linux-gnueabi-gcc jako programu do kompilacji krzyżowej. (Możesz użyć narzędzia remake do debugowania swojego Makefile -s, gdy make nie pomaga)

Możesz pobrać listę plików zainstalowanych z pakietem zawierającym np. dpkg -L gcc-arm-linux-gnueabi

cross skompilowany program wykonywalny dla ARM najprawdopodobniej potrzebuje jądra Linux z jakiegoś libc (lub połączyć je statycznie) co najmniej na płycie głównej ARM i trzeba jakiś sposób, aby transmitować program binarny z Linuksa do Sprzęt ARM.

5

Dodaj ppa: https://launchpad.net/gcc-arm-embedded Kody źródłowe obu są takie same. Obecnie obsługuje Ubuntu 10.04/12.04/13.04/13.10/14.04 32 i 64 bit.

Szczegółowe wyjaśnienia do Launchpad PPA można znaleźć na stronie https://help.launchpad.net/Packaging/. Ta witryna wyjaśnia, w jaki sposób przygotowuje się PPA i jak dodać istniejący PPA i zainstalować z niego oprogramowanie.

Oto krótkie kroki, aby zainstalować toolchain z tego PPA na Ubuntu przed 14.04. Otwórz typ terminala oraz:

  1. sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded
  2. sudo apt-get update
  3. sudo apt-get install gcc-arm-none-eabi

Aby usunąć zainstalowany toolchain, po prostu zrobić:

sudo apt-get remove gcc-arm-none-eabi

Aby zaktualizować toolchain, po prostu powtórz krok 2 i 3.

Powiązane problemy