컴파일을 시도했지만 bluez-utils-3.36
시도한 후에구성패키지에서 오류 메시지가 발생했습니다. configure: error: Bluetooth library is required
가 나타납니다.
질문: 나는업데이트나 설치가 허용되지 않습니다.이 머신에 있는 모든 것은 컴파일만 가능합니다. 그래서 유일한 방법은 도서관을 가리키는 것이라고 생각합니다. 그래서 저는 ./configure -help
두 가지 옵션을 작성하고 찾았습니다.
BLUEZ_CFLAGS C compiler flags for BLUEZ, overriding pkg-config
BLUEZ_LIBS linker flags for BLUEZ, overriding pkg-config
그래서 이를 내 명령에 추가하고 경로를 보완했습니다.
./configure --prefix=/home/black/test/ltib/rootfs BLUEZ_CFLAGS=-I~/home/black/test/bluetooth/bluez-libs-3.36/include BLUEZ_LIBS="-L~/home/black/test/bluetooth/bluez-libs-3.36/src/.libs -lbluetooth"
이제 오류 없이 잘 작동합니다.
하지만 명령을 실행하면 다음 make
과 같은 오류가 많이 발생합니다.
glib-helper.c:34:33: error: bluetooth/bluetooth.h: Datei oder Verzeichnis nicht gefunden
glib-helper.c:35:30: error: bluetooth/rfcomm.h: Datei oder Verzeichnis nicht gefunden
glib-helper.c:36:29: error: bluetooth/l2cap.h: Datei oder Verzeichnis nicht gefunden
glib-helper.c:37:27: error: bluetooth/sco.h: Datei oder Verzeichnis nicht gefunden
glib-helper.c:38:27: error: bluetooth/sdp.h: Datei oder Verzeichnis nicht gefunden
glib-helper.c:39:31: error: bluetooth/sdp_lib.h: Datei oder Verzeichnis nicht gefunden
Datei oder Verzeichnis nicht gefunden
독일어로 다음을 의미합니다.folder or file not found
이 문제를 어떻게 해결할 수 있나요?
답변1
명령에 제공한 경로에 문제가 있는 것 같습니다 configure
.
./configure --prefix=/home/black/test/ltib/rootfs \
BLUEZ_CFLAGS=-I~/home/black/test/bluetooth/bluez-libs-3.36/include \
BLUEZ_LIBS="-L~/home/black/test/bluetooth/bluez-libs-3.36/src/.libs -lbluetooth"
이 ~
문자 앞에 공백이 없으면 홈 디렉터리 경로로 확장되지 않습니다. 다음 출력을 고려하십시오.
$ echo -I~/foo
-I~/foo
비교적:
$ echo -I ~/foo
-I /home/lars/foo
수정 사항을 ~
적용 $HOME
하더라도 경로는 여전히 의심스럽습니다.
~/home/black/test/bluetooth/bluez-libs-3.36/include
사용자 이름이 이라고 가정하면 black
다음과 같이 확장됩니다.
/home/black/home/black/test/...
이것은 아마도 잘못된 것 같습니다.
-I
경로를 수정 -L
하고 구성을 다시 실행해 보세요.
답변2
나는 해결책을 스스로 찾았습니다. "include" 폴더를 복사하여 bluez-libs-3.36
로 이동합니다 bluez-utils-3.36\common
. 그런 다음 복사한 폴더의 이름을 "include"에서 "bluetooth"로 변경합니다. 이제 올바르게 컴파일될 것입니다.