这些是我输入的内容:
apt install libkrb5-dev
安装成功后,我找不到上一个命令中预期安装的“/usr/include/gssapi.h”。
# apt-file list libkrb5-dev
libkrb5-dev: /usr/bin/krb5-config
libkrb5-dev: /usr/include/gssapi.h
libkrb5-dev: /usr/include/gssapi/gssapi.h
libkrb5-dev: /usr/include/gssapi/gssapi_ext.h
# locate gssapi.h
#
我使用的是 ubuntu 18.10 cosmic,包文件列表是这里。
谁能告诉我为什么未安装头文件?以及如何修复它?
谢谢。
root@zfs-gitlab-ci:~# ls /usr/include
aio.h c++ endian.h fmtmsg.h gnu-versions.h kdb.h locale.h mtd netpacket proc_service.h reglib shadow.h string.h tgmath.h utmp.h xfs
aliases.h com_err.h envz.h fnmatch.h grp.h krb5 malloc.h net netrom profile.h resolv.h signal.h strings.h thread_db.h utmpx.h
alloca.h complex.h err.h fstab.h gshadow.h krb5.h math.h netash netrose protocols rpc sound stropts.h threads.h values.h
argp.h cpio.h errno.h fts.h gssapi langinfo.h mcheck.h netatalk nfs pthread.h rpcsvc spawn.h sudo_plugin.h time.h video
argz.h crypt.h error.h ftw.h gssapi.h lastlog.h memory.h netax25 nl_types.h pty.h sched.h stab.h syscall.h ttyent.h wait.h
ar.h ctype.h et gawkapi.h gssrpc libgen.h misc netdb.h nss.h pwd.h scsi stdc-predef.h sysexits.h uchar.h wchar.h
arpa dirent.h execinfo.h gconv.h iconv.h libintl.h mit-krb5 neteconet obstack.h rdma search.h stdint.h syslog.h ucontext.h wctype.h
asm-generic dlfcn.h fcntl.h getopt.h ifaddrs.h limits.h mntent.h netinet paths.h re_comp.h semaphore.h stdio_ext.h tar.h ulimit.h wordexp.h
assert.h drm features.h glob.h inttypes.h link.h monetary.h netipx poll.h regex.h setjmp.h stdio.h termio.h unistd.h x86_64-linux-gnu
byteswap.h elf.h fenv.h gnumake.h kadm5 linux mqueue.h netiucv printf.h regexp.h sgtty.h stdlib.h termios.h utime.h xen
答案1
locate
不是实时搜索,而是使用每天自动更新一次的文件数据库。因此它不会显示您刚刚安装的任何文件。
您可以locate
使用以下方法手动更新 的数据库:
sudo updatedb
运行该程序后,locate
应该了解当时所有现有的文件并正确显示新安装的文件。
除此之外,您还可以使用其他工具ls /usr/include/gssapi.h
来检查该文件是否存在。