udev
패키지를 만들 려고합니다 .https://www.kernel.org/pub/linux/utils/kernel/hotplug/182
맞춤형 툴체인을 사용한 버전입니다.
내 구성 옵션은 다음과 같습니다.
./configure \
--with-gnu-ld \
--prefix=%{_toolchain} \
--sysconfdir=%{_toolchain}/etc \
--libexecdir=%{_toolchain}/libexec \
--with-usb-ids-path=no \
--with-pci-ids-path=no \
--disable-introspection \
--disable-keymap
이 시간 동안 make
다음 오류가 발생합니다.
src/udevd-sd-daemon.o: In function `sd_is_mq':
sd-daemon.c:(.text+0xacd): undefined reference to `mq_getattr'
collect2: error: ld returned 1 exit status
make[2]: *** [udevd] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
답변1
이 오류는 정의된 라이브러리가 누락되었음을 의미합니다 undefined reference
. mq_getattr
Google 검색에 mq_getattr
따르면 이는 표준 Linux 기능입니다. 읽고 man mq_getattr
발견하세요
와 연결하세요
-lrt
.
바로 상단에 있습니다. 따라서 -lrt
링커 옵션에 추가해야 하지만 사용자 정의 도구 모음에서 이 작업을 수행할 수 있습니다.
답변2
LDFLAGS 변수를 사용하여 구성합니다.
LDFLAGS='-lrt' ./configure