Thiếu thư viện ở fedora 19


0

Trên fedora 19 64bit, tôi nên cài đặt gói nào cho các tùy chọn biên dịch -lz và -lcrypto? Tôi đang cố gắng để biên dịch git tĩnh. Đây là thông báo lỗi hoàn chỉnh:

[rubenroy@localhost git]$ make prefix=/home/rubenroy/git-static CFLAGS="${CFLAGS} -static"
LINK git-credential-store
/usr/bin/ld: cannot find -lz
/usr/bin/ld: cannot find -lcrypto
libgit.a(path.o): In function `getpw_str':
path.c:(.text+0xd0b): warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
libgit.a(wrapper.o): In function `xgetpwuid_self':
wrapper.c:(.text+0xeac): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libpthread.a(libpthread.o): In function `sem_open':
(.text+0x67fb): warning: the use of `mktemp' is dangerous, better use `mkstemp'
libgit.a(ident.o): In function `add_domainname':
ident.c:(.text+0x3cc): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
collect2: error: ld returned 1 exit status
make: *** [git-credential-store] Error 1
[rubenroy@localhost git]$

EDIT: Các thư viện đã được cài đặt ngay bây giờ, nhưng tôi vẫn gặp lỗi trong khi biên dịch:

[rubenroy@localhost git]$ make prefix=/home/rubenroy/git-static CFLAGS="${CFLAGS} -static" 
LINK git-credential-store
libgit.a(path.o): In function `getpw_str':
path.c:(.text+0xd0b): warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
libgit.a(wrapper.o): In function `xgetpwuid_self':
wrapper.c:(.text+0xeac): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libpthread.a(libpthread.o): In function `sem_open':
(.text+0x67fb): warning: the use of `mktemp' is dangerous, better use `mkstemp'
libgit.a(ident.o): In function `add_domainname':
ident.c:(.text+0x3cc): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(fips.o): In function `FIPSCHECK_verify':
(.text+0x116): undefined reference to `dlopen'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(fips.o): In function `FIPSCHECK_verify':
(.text+0x12d): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(fips.o): In function `FIPSCHECK_verify':
(.text+0x142): undefined reference to `dladdr'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(fips.o): In function `FIPSCHECK_verify':
(.text+0x14e): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(fips.o): In function `FIPSCHECK_verify':
(.text+0x1a6): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_globallookup':
(.text+0x11): undefined reference to `dlopen'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_globallookup':
(.text+0x24): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_globallookup':
(.text+0x2f): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_func':
(.text+0x334): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_func':
(.text+0x3f2): undefined reference to `dlerror'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_var':
(.text+0x464): undefined reference to `dlsym'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_var':
(.text+0x522): undefined reference to `dlerror'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_load':
(.text+0x589): undefined reference to `dlopen'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_load':
(.text+0x5ed): undefined reference to `dlclose'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_load':
(.text+0x625): undefined reference to `dlerror'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_pathbyaddr':
(.text+0x6b1): undefined reference to `dladdr'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_pathbyaddr':
(.text+0x711): undefined reference to `dlerror'
/usr/lib/gcc/x86_64-redhat-linux/4.8.1/../../../../lib64/libcrypto.a(dso_dlfcn.o): In function `dlfcn_unload':
(.text+0x772): undefined reference to `dlclose'
collect2: error: ld returned 1 exit status
make: *** [git-credential-store] Error 1

Câu trả lời:


1

Bạn đang tìm kiếm các gói có thư viện tĩnh tương ứng (ví dụ: libxx.atệp). Thông thường chúng có cùng tên với các gói có thư viện dùng chung + hậu tố -static. Trong trường hợp này zlib-staticopenssl-static.

$ repoquery --list zlib-static.x86_64
/usr/lib64/libz.a
/usr/share/doc/zlib-static-1.2.7
/usr/share/doc/zlib-static-1.2.7/README
$ repoquery --list openssl-static.x86_64
/usr/lib64/libcrypto.a
/usr/lib64/libssl.a
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.