LINUX编译时缺少头文件,查找依赖库的终极解决办法

简介: LINUX编译时缺少头文件,查找依赖库的终极解决办法

在LINUX上编译,经常缺少头文件。如果不知道哪个库,就要上网搜索。有时很快找到,有时找不到。有没有一个彻底的解决办法?有。


安装并更新

apt install apt-file
apt update

报错

src/switch_core.c:54:10: fatal error: sqlite3.h: 没有那个文件或目录
 #include <sqlite3.h>

需要什么库

root@freeswitch:/home/quantum6/freeswitch# apt-file search sqlite3.h
aolserver4-nssqlite3: /usr/share/doc/aolserver4-nssqlite3/nssqlite3.html
autoconf-archive: /usr/share/doc/autoconf-archive/html/ax_005flib_005fsqlite3.html
cl-sql: /usr/share/doc/cl-sql/html/sqlite3.html
db5.3-doc: /usr/share/doc/db5.3-doc/api_reference/C/sqlite3.html
db5.3-doc: /usr/share/doc/db5.3-doc/api_reference/CXX/sqlite3.html
emscripten: /usr/share/emscripten/tests/sqlite/sqlite3.h
erlang-p1-sqlite3: /usr/lib/erlang/lib/p1_sqlite3-1.1.5/include/sqlite3.hrl
erlang-sqlite3: /usr/lib/erlang/lib/sqlite3-1.1.4~dfsg0/include/sqlite3.hrl
glusterfs-common: /usr/include/glusterfs/gfdb/gfdb_sqlite3.h
hhvm-dev: /usr/include/hphp/runtime/ext/sqlite3/ext_sqlite3.h
libbotan-2-dev: /usr/include/botan-2/botan/sqlite3.h
libghc-haskelldb-hdbc-sqlite3-doc: /usr/lib/ghc-doc/haddock/haskelldb-hdbc-sqlite3-2.1.2/haskelldb-hdbc-sqlite3.haddock
libghc-hdbc-sqlite3-doc: /usr/lib/ghc-doc/haddock/hdbc-sqlite3-2.3.3.1/HDBC-sqlite3.haddock
libmstoolkit-dev: /usr/include/libmstoolkit/sqlite3.h
libsoci-dev: /usr/include/soci/sqlite3/soci-sqlite3.h
libspatialite-dev: /usr/include/spatialite/sqlite3.h
libsqlcipher-dev: /usr/include/sqlcipher/sqlite3.h
libsqlite3-dev: /usr/include/sqlite3.h
libtsk-dev: /usr/include/tsk/auto/sqlite3.h
libwxsqlite3-3.0-dev: /usr/include/wx-3.0/wx/wxsqlite3.h
lisaac-common: /usr/share/lisaac/lib/unstable/sqlite-binding/sqlite3.h
lua-dbi-sqlite3-dev: /usr/include/lua5.1/lua-dbi-sqlite3.h
lua-sql-sqlite3-dev: /usr/include/lua5.1/lua-sql-sqlite3.h
lua-sql-sqlite3-dev: /usr/include/lua5.2/lua-sql-sqlite3.h
lua-sql-sqlite3-dev: /usr/include/lua5.3/lua-sql-sqlite3.h
nim-doc: /usr/share/doc/nim-doc/html/sqlite3.html
php-doc: /usr/share/doc/php-doc/html/book.sqlite3.html
php-doc: /usr/share/doc/php-doc/html/intro.sqlite3.html
python-flask-doc: /usr/share/doc/python-flask-doc/html/patterns/sqlite3.html
python-pysqlite2-doc: /usr/share/doc/python-pysqlite2-doc/html/sqlite3.html
python2.7-doc: /usr/share/doc/python2.7/html/library/sqlite3.html
python3.5-doc: /usr/share/doc/python3.5/html/library/sqlite3.html
python3.6-doc: /usr/share/doc/python3.6/html/library/sqlite3.html
python3.7-doc: /usr/share/doc/python3.7/html/library/sqlite3.html
qtcreator-dev: /usr/src/qtcreator/src/libs/3rdparty/sqlite/sqlite3.h
r-cran-rsqlite: /usr/lib/R/site-library/RSQLite/include/sqlite3.h
salt-doc: /usr/share/doc/salt/html/ref/modules/all/salt.modules.sqlite3.html
salt-doc: /usr/share/doc/salt/html/ref/pillar/all/salt.pillar.sqlite3.html
salt-doc: /usr/share/doc/salt/html/ref/sdb/all/salt.sdb.sqlite3.html
salt-doc: /usr/share/doc/salt/html/ref/states/all/salt.states.sqlite3.html
sqlite3-doc: /usr/share/doc/sqlite3-doc/c3ref/sqlite3.html
thunderbird-dev: /usr/include/thunderbird/sqlite3.h

安装

apt install libsqlite3-dev

 

目录
相关文章
|
2月前
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
126 2
|
13天前
|
Ubuntu Linux Go
golang编译成Linux可运行文件
本文介绍了如何在 Linux 上编译和运行 Golang 程序,涵盖了本地编译和交叉编译的步骤。通过这些步骤,您可以轻松地将 Golang 程序编译成适合 Linux 平台的可执行文件,并在目标服务器上运行。掌握这些技巧,可以提高开发和部署 Golang 应用的效率。
105 14
|
28天前
|
存储 编译器 Linux
动态链接的魔法:Linux下动态链接库机制探讨
本文将深入探讨Linux系统中的动态链接库机制,这其中包括但不限于全局符号介入、延迟绑定以及地址无关代码等内容。
402 22
|
3月前
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
122 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
|
2月前
|
Linux
Linux - 如何编译源码安装软件
源码编译安装通常包括三个步骤:1) `./configure` 检测平台特征和依赖项,生成 Makefile;2) `make` 编译源码,生成可执行文件;3) `make install` 将可执行文件安装到指定目录并配置环境变量。
74 0
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
169 8
|
2月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
690 6
|
2月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
119 3
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
62 14
Linux 10 个“who”命令示例