Hallo @ all,
ich möchte auf einer alten SD Karte mit Raspbian "Wheezy",die nur mit einem Raspberry 1A zusammen läuft, die C-Lib des BCM2835 vom Mike McCauley (http://www.airspayce.com ) installieren.
Die Karte kann ich leider nicht updaten oder upgraden ( kein WLAN, kein LAN wegen fehlendem RJ45 Anschluss ), deshalb habe ich die Lib als Package runtergeladen und in ein Verzeichnis expandiert /etc/bcm2835-1.60 ! Dann habe ich wie angegeben installiert :
pi@raspberrypi /etc/bcm2835-1.60 $ sudo ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
...
pi@raspberrypi /etc/bcm2835-1.60 $ sudo make
make all-recursive
make[1]: Entering directory `/etc/bcm2835-1.60'
Making all in src
make[2]: Entering directory `/etc/bcm2835-1.60/src'
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -MT bcm2835.o -MD -MP -MF .deps/bcm2835.Tpo -c -o bcm2835.o bcm2835.c
mv -f .deps/bcm2835.Tpo .deps/bcm2835.Po
rm -f libbcm2835.a
ar cru libbcm2835.a bcm2835.o
ranlib libbcm2835.a
make[2]: Leaving directory `/etc/bcm2835-1.60/src'
Making all in doc
...
Dann diesen Test dafür aufgerufen :
pi@raspberrypi /etc/bcm2835-1.60 $ sudo make check
Making check in src
make[1]: Entering directory `/etc/bcm2835-1.60/src'
make test
make[2]: Entering directory `/etc/bcm2835-1.60/src'
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -MT test.o -MD -MP -MF .deps/test.Tpo -c -o test.o test.c
mv -f .deps/test.Tpo .deps/test.Po
gcc -g -O2 -o test test.o ./libbcm2835.a -lrt
make[2]: Leaving directory `/etc/bcm2835-1.60/src'
make check-TESTS
make[2]: Entering directory `/etc/bcm2835-1.60/src'
make[3]: Entering directory `/etc/bcm2835-1.60/src'
PASS: test
============================================================================
Testsuite summary for bcm2835 1.60
============================================================================
# TOTAL: 1
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
make[3]: Leaving directory `/etc/bcm2835-1.60/src'
...
Für mich sieht das OK aus !
Dann habe ich ein Beispielprogramm kompiliert :
root@raspberrypi:/home/pi/Desktop/C_Programming# gcc GPIO11_blink_example.c -o GPIO11_blink_example
/tmp/ccFmlmLr.o: In function `main':
GPIO11_blink_example.c:(.text+0x14): undefined reference to `bcm2835_init'
GPIO11_blink_example.c:(.text+0x3c): undefined reference to `bcm2835_gpio_fsel'
GPIO11_blink_example.c:(.text+0x48): undefined reference to `bcm2835_gpio_write'
GPIO11_blink_example.c:(.text+0x50): undefined reference to `bcm2835_delay'
GPIO11_blink_example.c:(.text+0x5c): undefined reference to `bcm2835_gpio_write'
GPIO11_blink_example.c:(.text+0x64): undefined reference to `bcm2835_delay'
collect2: ld returned 1 exit status
Das sieht dann nicht mehr gut aus !
Kann mir jemand sagen, was da schief gelaufen ist, oder wo und wie ich suchen kann ?
Vielen Dank !
Gruß, Hlech65730