-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!wsisiz.edu.pl!.POSTED!not-for-mail
From: Atlantis <m...@w...pl>
Newsgroups: pl.misc.elektronika
Subject: Atmel Studio, projekt w wielu plikach i dyrektywa #include
Date: Sun, 24 Nov 2013 09:13:07 +0100
Organization: http://www.wit.edu.pl
Lines: 29
Message-ID: <l6sceu$3r4$1@portraits.wsisiz.edu.pl>
NNTP-Posting-Host: apn208.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: portraits.wsisiz.edu.pl 1385280798 3940 83.26.147.208 (24 Nov 2013 08:13:18
GMT)
X-Complaints-To: a...@w...edu.pl
NNTP-Posting-Date: Sun, 24 Nov 2013 08:13:18 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101
Thunderbird/24.1.1
X-Enigmail-Version: 1.6
Xref: news-archive.icm.edu.pl pl.misc.elektronika:655728
[ ukryj nagłówki ]Do tej pory pisałem swoje programy pod AVR-y w niezbyt elegancki sposób,
umieszczając wszystko w jednym pliku źródłowym. W ramach nauki
postanowiłem jednak zmienić ten nawyk, poza tym pojawiła się potrzeba
wykorzystania cudzych bibliotek.
Stworzyłem więc nowy projekt w Atmel Studio, zaimportowałem plik *.c i
*.h potrzebnej biblioteki, potworzyłem też pliki dla swoich bibliotek.
Mając jeszcze w większości puste pliki (tzn. zawierające jedynie
niezbędne szkielety programu) wykonałem "Build Solution"
Kompilator zwrócił serię błędów, wskazując na plik nagłówkowy
zaimportowanej biblioteki. Wszystkie one dotyczyły nieznanego typu
zmiennej: "unknown type name 'uint16_t'" (tudzież uint8_t),
występującego w deklaracjach nazw funkcji, umieszczonych w owym pliku
nagłówkowym. Same definicje funkcji w pliku .c już o nic nie krzyczały.
Doszedłem do tego, że winny jest brak dyrektywy #include <avr/io.h> na
początku feralnego pliku nagłówkowego, który ze względu na nazwę jest
sprawdzany przez kompilator jako pierwszy.
Mam teraz następujące wyjścia:
1. Umieścić #include już na początku pliku nagłówkowego, ale chyba nie
jest to zbyt eleganckim wyjściem. Na różnych przykłądach widzę, że te
dyrektywy umieszcza się raczej w plikach *.c.
2. Zmienić nazwy plików tak, aby kompilowały się później.
A może istnieje jakiś sposób na poinformowanie kompilatora, żeby
dołączył określony plik już na samym początku? Albo żeby zmienił
kolejność kompilacji poszczególnych plików?
Następne wpisy z tego wątku
- 24.11.13 10:47 Marek
- 24.11.13 10:56 Atlantis
- 24.11.13 15:10 Grzegorz Niemirowski
- 24.11.13 15:10 Grzegorz Niemirowski
- 25.11.13 11:04 Piotr Gałka
- 25.11.13 14:38 Marcin
- 25.11.13 15:16 Piotr Galka
- 25.11.13 15:52 Marcin
- 25.11.13 18:49 Marek
- 25.11.13 19:47 Marcin
- 25.11.13 19:55 Marcin
- 24.11.13 22:06 janusz_k
Najnowsze wątki z tej grupy
- Rapsberry Pi i synchronizacja plików
- RCD 300 mA
- rpi i moduł przekaźników
- Falownik do pompy CO
- Lampa ogrodowa rozłączała różnicówkę
- Inteligentne oświetlenie schodów
- Pytanie do Użytkownika
- Emanuel kiedyś szukał gotowca do chłodzenia leków
- Sprzęty z Lidl-a
- idzie nowe
- Wybuchające pagery
- Jak shakować windę
- Sterowanie bezprzewodowe do wbudowania
- NC vs NO
- Jak dzięki mojemu pomysłowi amerykańce z Google przyspieszyli TV
Najnowsze wątki
- 2024-10-03 Blokowanie informacji - test
- 2024-10-02 Warszawa => Fullstack Developer <=
- 2024-10-02 Katowice => QA Engineer <=
- 2024-10-02 Gdynia => Data Scientist <=
- 2024-10-02 Warszawa => Sales Development Representative (in German) <=
- 2024-10-02 Warszawa => SAP HANA Developer (Middle) <=
- 2024-10-02 Warszawa => SAP S/4HANA FI/CO Senior Consultant <=
- 2024-10-02 Warszawa => Senior SAP HANA Developers <=
- 2024-10-02 Warszawa => Senior PHP Laravel Developer (e-commerce) <=
- 2024-10-02 Warszawa => Programista Full Stack (.Net Core) <=
- 2024-10-02 Warszawa => Software .Net Developer <=
- 2024-10-02 Warszawa => Programista Full Stack .Net <=
- 2024-10-01 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-10-02 GODZINA ZERO #48 - KRZYSZTOF STANOWSKI I ZBIGNIEW KAPIŃSKI PREZES IZBY KARNEJ SĄDU NAJWYŻSZEGO
- 2024-09-30 Rozprawa zdalna brak komputera