컴파일하는 데 문제가 있습니다.에피바르 0.24StackExchange에서 답변을 검색한 후 가까운 답변을 찾았습니다.efivar를 컴파일하는 방법은 무엇입니까?그러나 그것은 내 문제를 완전히 해결하지 못했습니다.make V=1 -j1
오류 메시지가 나타납니다.
root:/sources/efivar-0.24/src# make V=1 -j1
make -f /sources/efivar-0.24/src/Make.deps deps SOURCES="crc32.c creator.c disk.c gpt.c linux.c loadopt.c dp.c dp-acpi.c dp-hw.c dp-media.c dp-message.c efivarfs.c export.c guid.c guids.S guid-symbols.c lib.c vars.c makeguids.c guid.c include/efivar/efivar-guids.h include/efivar/efivar.h include/efivar/efiboot.h include/efivar/efiboot-loadopt.h include/efivar/efivar-dp.h include/efivar/efiboot-creator.h include/efivar/efivar-guids.h guid-symbols.c efivar.c"
make[1]: Entering directory '/sources/efivar-0.24/src'
make[1]: Nothing to be done for 'deps'.
make[1]: Leaving directory '/sources/efivar-0.24/src'
gcc -O2 -g3 -I/sources/efivar-0.24/src/include/efivar/ -specs=/sources/efivar-0.24/gcc.specs -L. -static -I/usr/include -o efivar-static efivar.c dp.static.o dp-acpi.static.o dp-hw.static.o dp-media.static.o dp-message.static.o efivarfs.static.o export.static.o guid.static.o guids.static.o guid-symbols.static.o lib.static.o vars.static.o -ldl -lpopt
/usr/bin/ld: cannot find -lpopt
collect2: error: ld returned 1 exit status
make: *** [/sources/efivar-0.24/Make.rules:17: efivar-static] Error 1
Make.Defaults가 포함되어 있는지 확인했습니다.
prefix ?= /usr/
libdir ?= $(prefix)/lib64/
datadir ?= $(prefix)/share/
mandir ?= $(datadir)/man/
includedir ?= $(prefix)/include/
bindir ?= $(prefix)/bin/
PCDIR ?= $(libdir)/pkgconfig/
DESTDIR ?=
나는 또한 popt.h와 popt.pc를 검색하여 이들이 올바른 디렉토리에 있는지 확인했습니다.
root:/sources/efivar-0.24/src# find / -iname popt.h
/usr/include/popt.h
root:/sources/efivar-0.24/src# find / -iname popt.pc
/usr/lib/pkgconfig/popt.pc
/usr/lib/pkgconfig/popt.pc의 출력은 다음과 같습니다.
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: popt
Version: 1.16
Description: popt library.
Libs: -L${libdir} -lpopt
Cflags: -I${includedir}
누군가가 내가 해결책을 찾도록 도와주거나 적어도 내가 집중해야 할 방향을 알려줄 수 있다면 좋을 것입니다. 미리 감사드립니다, 여러분.