Nowe posty

xx konfiguracja sieci domowej (6)
Wczoraj o 23:58:47
clip Brak możliwości instalacji aplikacji na Opensuse Tumbleweed. (2)
Wczoraj o 23:35:02
xx petla while (11)
Wczoraj o 22:14:49
xx Repozytoria Archa (7)
Wczoraj o 21:43:06
xx Ktoś zna datę przejścia Minta 19.3 z bety do oficjala? (47)
Wczoraj o 14:28:28
xx Jak,Zrobić kopię całego dysku? (3)
Wczoraj o 08:39:41
xx Jaki linux na laptop/tablet hybrydowy? (11)
Wczoraj o 08:16:56
xx Brak rozdzielczości 16:9 ubuntu 19.04 (1)
Wczoraj o 01:46:25
xx Dziwne połączenia sieciowe! Co to jest? (14)
2019-12-13, 22:59:42
xx Conky - obraz z kamerki (11)
2019-12-13, 19:09:59

Autor Wątek: Konfiguracja projektu ARM w Code::Block pod Ubuntu.  (Przeczytany 3235 razy)

Offline Kacper Paczos

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 26
    • Zobacz profil
Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« dnia: 2016-04-04, 17:59:47 »
Dobry
Mam pytanie: jak zainstalować kompilator GNU GCC ARM?
Konkretnie - https://launchpad.net/gcc-arm-embedded/+download
Po prostu jak w CB chce stworzyć nowy projekt i wybieram ARM projekt to nie wykrywa żadnego kompilatora.
Co zrobić, jak zainstalować kompilator powyżej, by CB go wykrył?
Używam Ubuntu 14.04 LTS.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2545
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
    • keybase.io/pkraszewski
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #1 dnia: 2016-04-04, 21:14:03 »
Rozpakowujesz archiwum do katalogu /home (prywatne) albo /opt (dla wszystkich użytkowników) i dodajesz do zmiennej PATH odpowiednio /home/gcc-arm-none-eabi-5_3-2016q1/bin albo /opt/gcc-arm-none-eabi-5_3-2016q1/bin. Po zamknięciu i ponownym otworzeniu konsoli powinno zadziałać polecenie arm-none-eabi-gcc -v
Paweł Kraszewski
~Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline Kacper Paczos

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 26
    • Zobacz profil
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #2 dnia: 2016-04-04, 23:28:25 »
Dziękuje za odpowiedź.
Wolałbym używać CB (graficznie).
Zrobiłem jak mówiłeś i działa.
Problemem w samym sobie jest to że
muszę skompilować projekt ARM. Używam CB. Na początku stworzyłem pusty projekt, wskazałem ścieżki kompilatora, ustawiłem flagi kompilatora i definicje, wszytko działa aż wyskakuje:
Cytuj
/home/kacper/Dokumenty/CodeBlocks/Projekty/gcc-arm-none-eabi-5_2-2015q4/lib/libcc1.so: error adding symbols: File in wrong format
collect2: error: ld returned 1 exit status
Podejrzewam że problemem jest to że gdy zacząłem od "pustego projektu" to jest tam gdzieś wewnętrznie ustawione by kompilować do pliku wykonywalnego a nie hex. Po prostu myślałem ze tworząc ARM projekt to tego błędu nie będzie. Jak by rozwiązać ten problem z linkerem to było by fajnie :).

Jutro spróbuje kompilacji w konsoli.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2545
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
    • keybase.io/pkraszewski
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #3 dnia: 2016-04-05, 07:07:50 »
Cytuj
Wolałbym używać CB (graficznie).
Ale ja ci nie bronię. Polecenie z klawiatury było dla sprawdzenia, czy kompilator się zgłasza. Jak się zgłosi, powinno dać się go wykorzystać z CB. Jednak z mojego doświadczenia dodam, że na kontrolery najlepsze wsparcie pod Linuksem ma Eclipse-CDT, łącznie z tym, że (co najmniej) STMicroelectronics daje za darmo pluginy do obsługi ich procków. Co do Eclipse'a, polecam ściągnąć najnowszą wersję z ich strony, bo ta w repozytoriach już lekko mchem porasta.

Cytuj
gdy zacząłem od "pustego projektu" to jest tam gdzieś wewnętrznie ustawione by kompilować do pliku wykonywalnego a nie hex.

Mam podskórne wrażenie, że nigdy nie pisałeś nic pod platformę arm-none-eabi? Bo "pusty projekt" to ostatnie, czego potrzebujesz (potrzebujesz pliki nagłówkowe i procedurę inicjalizacji na konkretny procesor, potrzebujesz mapy pamięci dla linkera i dużo, dużo innych technicznych plików). I w mojej karierze z ARMami serii M nigdy nie generowałem HEX-a. Za czasów zabawy z 51-kami i AVR-kami - a i owszem. Ale programatory pracujące po Linuksem obsługują (w zależności od programu) surowe pliki binarne albo odpowiednio przygotowane obrazy ELF. No ostatecznie HEXy też, ale w projektach z którymi miałęm styczność nie były one używane.

To może tak: na jaki sprzęt (konkretnie, model mikrokontrolera i model płytki prototypowej) generujesz aplikację, jakim interfejsem/programatorem programujesz i jakiego programu do obsługi tego programatora chcesz użyć?

« Ostatnia zmiana: 2016-04-05, 07:12:04 wysłana przez Paweł Kraszewski »
Paweł Kraszewski
~Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline Kacper Paczos

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 26
    • Zobacz profil
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #4 dnia: 2016-04-05, 16:45:40 »
To ja opowiem całą historie od początku :)

Musze skompilować program pod mikroprocesor STM32F103RBT6 z rodziny ARM Cortex-M3.
Jedyne co dostaje to paczka z libami i projekt pod Cocox'a, chciałbym to przerobić pod CB albo Eclipse.
http://roboty.utp.edu.pl/?page_id=80
Jeśli chodzi o CB to mam tak:
definicje:
STM32F103RB
STM32F10X_MD
i "inne"
-mcpu=cortex-m3 -mthumb
Kompilator pobrałem i wskazałem ścieżkę w projekcie - kompiluje.
A jeśli chodzi o to co linkuje to jest biblioteka w:
gcc-arm-none-eabi-5_2-2015q4/lib/libcc1.so
Jedyne co teraz dostaje to ten błąd niżej - wszystkie pliki są znalezione tylko problem z linkerem mam.

A jeśli chodzi o Eclipse to na razie je zainstalowałem i pobrałem -> http://gnuarmeclipse.github.io/

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2545
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
    • keybase.io/pkraszewski
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #5 dnia: 2016-04-05, 18:23:03 »
Z tego co widzę, to Cocox to przystrzyżony Eclipse ze zmienionym formatem pliku projektu (standaryzacja jast taka mainstreamowa...)

Popatrzę co i jak i dam znać.
Paweł Kraszewski
~Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline Kacper Paczos

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 26
    • Zobacz profil
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #6 dnia: 2016-04-09, 11:40:03 »
Próbowałem walczyć z Eclipse ale dostaje błąd:

cannot find -l/home/kacper/workspace/gcc-arm-none-eabi-5_2-2015q4/lib/libcc.so   Test          C/C++ Problem

Może tobie udało się skonfigurować Eclipse?

Offline Kacper Paczos

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 26
    • Zobacz profil
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #7 dnia: 2016-04-10, 22:47:19 »
Chciałem się tylko przypomnieć.
Naprawdę nie mogę sobie z tym poradzić....

Dlaczego eclipse nie widzi biblioteki?

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2297
  • 1709
    • Zobacz profil
Odp: Konfiguracja projektu ARM w Code::Block pod Ubuntu.
« Odpowiedź #8 dnia: 2016-04-11, 01:20:13 »
1. Możesz spytać na forum danego narzędzia którego chcesz użyć.
      translator do pomocy
                   https://translate.google.pl/
2. Może faktycznie najpierw sprawdz czy się skompiluje z terminala.
- zależności arm chyba powinny być skompilowane i zainstalowane jako pierwsze, czasami nie darady inaczej
- do wiekszosci pakietów masz dokumentacje jak budowac na arm
   https://how-to-build-for-arm.wikispaces.com/expat
http://jk.ozlabs.org/docs/arm64-toolchain/
http://www.torriefamily.org/~torriem/wiki/computer_stuff:crosscompiler
http://wiki.beyondlogic.org/index.php?title=Cross_Compiling_BlueZ_Bluetooth_tools_for_ARM
     jesli nie ma to pytaj developerów pakietu.

Znalezione pomoce, które nie wiem czy przegladales
http://www.linuxquestions.org/questions/programming-9/how-to-configuring-code-blocks-ide-for-arm-linux-gcc-775276/
https://www.raspberrypi.org/forums/viewtopic.php?t=37673&p=375591
http://www.valvers.com/embedded-linux/beaglebone/step06-cross-compiling/
http://www.hackvandedam.nl/blog/?p=707
https://www.youtube.com/watch?v=B-obRp3x22g

Edytowane:
To tez jest ciekawe:
http://www.codeproject.com/Tips/601093/Creating-STM-Microcontroller-Project-in-Code-Blo

Edytowane:
To jest jeszcze lepsze, może to Ci się przyda ?
https://forum.pjrc.com/threads/27286-teensyduino-in-Code-Blocks-how-to-set-up-ARM-NONE-EABI-GCC

I jeszcze coś, czy masz biblioteke, możesz sprawdzić w terminalu
ld -ldrm --verbose
Przy czym drm to szukana nazwa mojej biblioteki i na koncu komenda powina pokazać
       gdzie takie biblioteki mi znajduje,
a która jest jest zgodna z arm to juz sam musisz dojsc. (wywali odpowiedni blad przy kompilacji).
Powodzenia.

PS:   Za spam ... , rozumiem że użytkownik oczekuje profesjonalnej
           pomocy,  ale chciałem się przypomnieć jemu,
                  że nie tylko tu można szukać informacji, czy pomocy,
                     a szukać, spróbować nie zaszkodzi jak się nie ma wyjscia.
Pochwal się swoją kartą graficzną w tym wątku-->
http://forum.linux.pl/index.php/topic,19841.msg121122.html#msg121122