Raspberry Pi için Bluetooth / Bluetooth.h nereden alınır?
Bu aptalca bir soru. Ama buna bir çözüm bulamıyorum. Bu öğreticiye referansla bir BLE uygulaması oluşturmaya çalışıyorumhttps://people.csail.mit.edu/albert/bluez-intro/c404.html. Raspberry Pi3 için Windows pc wsl'den çapraz derliyorum. Araç zincirini şuradan indirdim:https://github.com/raspberrypi/tools. Ve basit bir HelloWorld uygulaması derleyerek ve bunu RaspberryPi'den çalıştırarak araç zincirini doğruladım. Şimdi yukarıdaki kodu derlemeye çalıştığımda hata alıyorum
/mnt/c/Study/RaspberryPi/main.c:5:33: fatal error: bluetooth/bluetooth.h: No such file or directory
#include <bluetooth/bluetooth.h>
Bluetooth.h'nin benim sistemim olmadığını anlıyorum. Sorum şu ki onu nereden alabilirim? Böylece pencerelerden çapraz derleme yapabilirim. Bunun için sdk indirmem gerekiyor mu? gerekirse nereden alabilirim?
Yanıtlar
Herhangi bir dosyayı bulmak için Debian'ın (Raspberry Pi işletim sisteminin temel aldığı dağıtımdır) arama motorunu kullanabilirsiniz:

Gerekli dosyaları içeren paketi bulduğunuzda, aynı paketi bir Pi'ye yükleyebilir apt-get
veya manuel olarak indirebilirsiniz http://archive.raspbian.org/
. Debian paketini doğrudan arama sonuçlarından da alabilirsiniz, ancak Pi işletim sistemindeki bazı paketlerin Debian muadilleriyle küçük farklılıkları olduğunu unutmayın.
Dosyaları bir paketten yüklemeden almanız gerekiyorsa, indirin ve ihtiyacınız olan dosyaları ar
komut veya 7zip ile çıkartın .
Aptalca bir soru değil. Paketlerin kaynaktan nasıl kurulacağına dair hemen iyi bir açıklama bulamadım. Bununla birlikte, bazı deneme yanılma şu çözümü verdi:
$ apt-cache search bluez
Bir listesi vermiştir şüpheliler biriydi olan,:
libbluetooth-dev - BlueZ Linux Bluetooth kitaplığını kullanmak için geliştirme dosyaları
Makul bir seçim gibi görünüyordu.
$ sudo apt-get install libbluetooth-dev
...
The following additional packages will be installed:
libbluetooth3
The following NEW packages will be installed:
libbluetooth-dev libbluetooth3
Daha sonra, öğreticideki kod derlenir ve çalıştırılır:
$ gcc -o simplescan simplescan.c -lbluetooth $ ./simplescan
CC:6D:A0:64:36:32 Roku Player.
Bu da benim dairemde doğru cevap. Ancak o değil komple diğer BT donanımlı cihazlar gibi cevap (örneğin benim iPhone hakkında atıyoruz).
NOTLAR:
- Yeni paketleri kurmadan önce sisteminizi güncellediğinizden ve yükselttiğinizden emin olun !
- Dmitry'ın cevabı - Debian'ın arama motorunu kullanarak - OP'nin sorusu için daha iyi bir cevap . Bana öyle geliyor ki hala bazı tahminler işin içinde olabilir, ama kesinlikle alanı daraltmaya yardımcı oluyor.
- Paketleri yerel olarak kaynaktan derleyip kurmak isteyenler için , bunu desteklemek için uygun seçenekler var gibi görünüyor .