Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 14 lut 2026, o 09:41


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 7 gru 2013, o 12:54 
Offline
Nowy

Dołączył(a): 17 lip 2013
Posty: 4
Pomógł: 0

Witam serdecznie,
zacząłem niedawno interesować się biblioteką FreeMODBUS ze strony: http://www.freemodbus.org/ i podczas kompilacji otrzymałem następujący komunikat w trakcie kompilacji
Kod:
17:41:26 **** Build of configuration Release for project MODBUS ****
make all
Building target: MODBUS.elf
Invoking: AVR C Linker
avr-gcc -Wl,-Map,MODBUS.map -mmcu=atmega168 -o "MODBUS.elf"  ./tcp/mbtcp.o  ./rtu/mbcrc.o ./rtu/mbrtu.o  ./port/mbcrc.o ./port/portevent.o ./port/portserial.o ./port/porttimer.o  ./functions/mbfunccoils.o ./functions/mbfuncdiag.o ./functions/mbfuncdisc.o ./functions/mbfuncholding.o ./functions/mbfuncinput.o ./functions/mbfuncother.o ./functions/mbutils.o  ./ascii/mbascii.o  ./demo.o   
./port/portserial.o: In function `__vector_19':
portserial.c:(.text+0xee): undefined reference to `pxMBFrameCBTransmitterEmpty'
portserial.c:(.text+0xf2): undefined reference to `pxMBFrameCBTransmitterEmpty'
./port/portserial.o: In function `__vector_18':
portserial.c:(.text+0x13c): undefined reference to `pxMBFrameCBByteReceived'
portserial.c:(.text+0x140): undefined reference to `pxMBFrameCBByteReceived'
./port/porttimer.o: In function `__vector_11':
porttimer.c:(.text+0xac): undefined reference to `pxMBPortCBTimerExpired'
porttimer.c:(.text+0xb0): undefined reference to `pxMBPortCBTimerExpired'
./demo.o: In function `main':
demo.c:(.text+0x68): undefined reference to `eMBInit'
demo.c:(.text+0x7e): undefined reference to `eMBEnable'
demo.c:(.text+0x82): undefined reference to `eMBPoll'
make: *** [MODBUS.elf] Error 1

17:41:35 Build Finished (took 9s.281ms)


przyczyn zaznaczam że biblioteki są zaincludowane, a więc gdzie jest błąd. Używam Eclipsa i pytanie czy coś w linkerze trzeba ustawić żeby było ok bo już sam nie wiem ?

Obrazek

Drugi przypadek to podczas kompilacji otrzymuje następujący błąd:

Kod:
Errors occurred during the build.
Errors running builder 'CDT Builder' on project 'MB2'.
A resource exists with a different case: '/MB2/Release/Makefile'.
A resource exists with a different case: '/MB2/Release/Makefile'.


Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 gru 2013, o 18:17 
Offline
Użytkownik

Dołączył(a): 02 maja 2012
Posty: 34
Pomógł: 2

Witaj, nie skopiowałeś wszystkich plików do projektu,
popatrz ja skopiowałem i mi skompilowało bez problemu.
Obrazek

Poza tym jak masz błędy to czytaj je dokładnie, tu nie chodzi o dobrą znajomość angielskiego. Patrzysz że Eclipse woła z problemem jakiejś funkcji. Najeżdżasz myszką z ctrl naciskasz i patrzysz gdzie nakierowuje. W Twoim przypadku były tylko deklaracja, a bez definicji. Poza tym oprócz plików z *.h musisz mieć bliźniaczy plik z *.c zgodnie z zasadą dobrego pisania programów.
Pozdro


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 gru 2013, o 20:01 
Offline
Nowy

Dołączył(a): 17 lip 2013
Posty: 4
Pomógł: 0

Dziękuje kolego, faktycznie masz rację, poprawiłem i działa :) Jeszcze raz dzięki !.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO