Tôi đang cố biên dịch thư viện TinyB từ Intel. Tôi tìm thấy kịch bản này:
https://gist.github.com/StevenRudenko/b6c032c3c1fdfb5c641ff95883e6cd02
https://github.com/intel-iot-devkit/tinyb
https://mcuoneclipse.com/2016/12/19/tutorial-ble-pairing-the-raspberry-pi-3-model-b-with-hexiwear/
# Cập nhật BlueZ
sudo apt-get cập nhật
sudo apt-get cài đặt git build-essential autoconf cmake libtool libglib2.0 libdbus-1-dev libudev-dev libical-dev libreadline-dev
wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.39.tar.xz
tar xvf bluez-5.39.tar.xz
cd bluez-5.39/
aclocal
tiêu đề tự động
automake --force-missing --add-missing
autoconf
./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-experimental --with-systemdsystemunitdir=/lib/systemd/system -- with-systemduserunitdir=/usr/lib/systemd
./configure --prefix=/usr \
--mandir=/usr/share/man \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-thử nghiệm \
--enable-maintainer-mode
chế tạo
sudo thực hiện cài đặt
Sudo cp attrib/gatttool /usr/local/bin
sudo sed -i '/^ExecStart.*bluetoothd\s*$/ s/$/ --experimental/' /lib/systemd/system/bluetooth.service
Sudo ln -s/lib/phần sụn/etc/phần sụn
sudo systemctl kích hoạt bluetooth
Sudo systemctl daemon-tải lại
sudo apt-mark giữ bluez
sudo nano /lib/systemd/system/bluetooth.service
ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental
Sudo systemctl daemon-tải lại
sudo systemctl khởi động lại bluetooth
bluetoothctl
bật nguồn
đại lý trên
quét trên
quét sạch
thông tin 00:34:40:0A:00:4E
cặp 00:34:40:0A:00:4E
thiết bị
thuộc tính danh sách 00:34:40:0A:00:4E
đọc
thông tin thuộc tính
chọn thuộc tính /org/bluez/hci0/dev_00_32_40_08_00_12/service002e/char002f
viết 0x3 0x4 0x10 0x20 0x30 0x40
ngắt kết nối 00:32:40:08:00:12
từ bỏ
sudo apt-get install cmake build-essentials check-install libglib2.0-dev doxygen
bản sao git https://github.com/intel-iot-devkit/tinyb.git
xây dựng mkdir
xây dựng đĩa cd
cmake -DBUILDJAVA=BẬT ..
chế tạo
Sudo kiểm tra cài đặt cài đặt
// để xóa dpkg -r build
java -Djava.library.path=/usr/lib/jni -cp /usr/share/java/RXTXcomm.jar -jar your.jar
nhưng điều này là một chút không liên quan. Bạn có thể giúp tôi khắc phục điều này?
Trước hết:
Tập lệnh này muốn biên dịch bluez-5.39 bằng cờ -enable-experimental. Có thực sự cần thiết bây giờ không? Tôi có thể tải xuống bản phát hành mới nhất của thư viện không? Nếu không, khi biên dịch BlueZ, có nhiều cảnh báo hoàn thành quá trình biên dịch với cờ -Werror. Ngoài ra, có vấn đề với chức năng âSIOCGSTAMPâ và tôi không biết mình nên sử dụng chức năng nào ở đây: âSIOCGSTAMP_NEWâ hay âSIOCGSTAMP_OLDâ?
Thứ hai: sudo systemctl kích hoạt bluetooth
không hoạt động, do Tệp đơn vị /etc/systemd/system/bluetooth.service bị ẩn.
Tôi có nên vạch mặt nó không?
Thứ ba: chính xác thì lệnh này làm gì:
Sudo nano /lib/systemd/system/bluetooth.service
ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental
và tại sao tôi cần nó?
Tôi đã không đi sâu hơn vào kịch bản, vì phần thứ ba dường như vô nghĩa đối với tôi. Tại sao trùng lặp ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental ở đầu tệp? Tôi hy vọng sự giúp đỡ của bạn.
Có lẽ một số kho lưu trữ đã có thư viện tinyB được biên dịch sẽ hoạt động?