`
omygege
  • 浏览: 1386710 次
文章分类
社区版块
存档分类
最新评论

gcc不能编译gdbm的程序

 
阅读更多

系统:Fedora10.0

程序:beginning linux programming chapter7 dbm1.c

报错:/tmp/cc4T13wv.o: In function `main':

dbm1.c:(.text+0x2d): undefined reference to `dbm_open'

dbm1.c:(.text+0x250): undefined reference to `dbm_store'

dbm1.c:(.text+0x2fb): undefined reference to `dbm_fetch'

dbm1.c:(.text+0x38a): undefined reference to `dbm_close'

collect2: ld returned 1 exit status

程序源代码如下:

编译的时候使用的编译命令如下,引入/usr/include/gdbm头文件搜索路径,链接库文件gdbm

gcc -o dbm1 -I/usr/include/gdbm dbm1.c -lgdbm

但是编译不通过,查看了头文件ndbm.h里面的内容没有错的的,命名有声明这个几个函数,然后百度之后找到答案,需要链接一个gdbm_compat库才可以。使用命令如下,编译成功。

gcc -o dbm1 -I/usr/include/gdbm dbm1.c -lgdbm -lgdbm_compat

分享到:
评论

相关推荐

    Redhat 64位GCC的rpm安装包1

    标题 "Redhat 64位GCC的rpm安装包1" 提及的是在Red Hat操作系统上安装64位版本的GNU Compiler Collection (GCC) 的过程,而GCC是一个开源的编译器套件,用于将源代码编译成可执行程序。RPM是Red Hat Package Manager...

    arm-linux-gcc常用参数讲解gcc编译器使用方法参照.pdf

    12. **定义宏**:`-D`选项用于在编译时定义宏,如`-DHAVE_GDBM`定义宏`HAVE_GDBM`,`-DHELP_FILE="help"`则定义宏`HELP_FILE`为字符串`"help"`。 掌握这些参数的使用对于编写和调试ARM平台的Linux程序至关重要,...

    arm-linux-gcc命令参数介绍

    针对 ARM 架构的 Linux 环境,编译工具链 arm-linux-gcc 成为了必不可少的一部分。本文将详细介绍 arm-linux-gcc 的常用命令参数,帮助开发者更好地理解和掌握该工具链。 #### GCC 编译流程 在了解 arm-linux-gcc ...

    常用参数讲解 gcc

    特别是对于那些需要跨平台编译的应用场景,`gcc`更是不可或缺的强大工具。本文将深入探讨`gcc`的一些基本工作流程以及常用的命令行参数,帮助读者更好地理解和掌握`gcc`的使用方法。 #### 编译器的工作过程 在使用...

    AIX6.1 安装PYHON2.6.2 依赖的软件包GDBM

    3. **编译与安装**:解压下载的源代码包,然后使用AIX的编译工具如`xlc`或`gcc`进行编译。通常,这涉及到执行`./configure`,`make`,然后`sudo make install`。 4. **设置路径**:安装完成后,可能需要将新库的...

    Linux系统安装Python3环境.docx

    在编译Python 3.x之前,需要安装一些依赖项,例如zlib-devel、bzip2-devel、openssl-devel、ncurses-devel、sqlite-devel、readline-devel、tk-devel、gcc、make、gdbm-devel、db4-devel、libpcap-devel、xz-devel、...

    linux for beginner解读Linux编程库

    静态库在编译时会被合并到目标程序中,形成一个独立的可执行文件,不依赖运行时的库。静态库文件通常以`.a`(Archive)为后缀,如`libgdbm.a`。 在Linux中,库的命名规则通常是`lib`开头,后面跟着库的名字,然后是...

    Linux下查看nginx apache mysql php的编译参数

    nginx: built by gcc 4.3.2 (Debian 4.3.2-1.1) nginx: configure arguments: --user=www-data --group=www-data --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module ``` ...

    安装部署-linux安装python3.10教程

    yum install -y gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel ``` 这些包包括...

    centos7升级自带python至3.8.docx

    ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel # 安装 kernel 开发相关的依赖 yum -y install gcc kernel-devel kernel-headers make bzip2 # 安装 EPEL 源,...

    Linux安装python3.7/3.9.tgz

    sudo dnf install gcc make libffi-devel openssl-devel bzip2-devel readline-devel sqlite-devel tk-devel gdbm-devel libffi-devel liblzma-devel ``` ### 下载Python源码 1. **下载Python源码**:访问Python...

    在openSUSE42.1下编译安装PHP7 的方法

    zypper install gcc make autoconf automake libtool curl libcurl-devel libxml2-devel libjpeg-devel libmcrypt-devel libpng-devel freetype-devel libiconv-devel libmcrypt libxml2 libjpeg libpng ...

    django.pdf

    - 安装GCC编译器环境:`yum -y install gcc`,这是Python3安装所需的编译环境。 - 安装Python3所依赖的组件:`yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite*-devel mysql...

    centos安装freeswitch过程实录

    这些库包括但不限于编译工具(如`gcc-c++`)、网络库(如`curl-devel`)、音频处理库(如`alsa-lib-devel`)、数据库接口库(如`db-devel`)等。以下是安装这些依赖的具体命令: ```bash sudo yum install -y gcc-...

    python升级指导书.docx

    zypper install readline-devel openssl-devel gmp-devel ncurses-devel gdbm-devel zlib-devel expat-devel libGL-devel tcl gcc-c++ libX11-devel glibc-devel bzip2 tar tcl-devel tk-devel pkg-config tix-...

    CentOS7下安装python3.6.8的教程详解

    这些工具和库包括gcc、g++以及其他依赖,例如ssl、bzip2、expat、gdbm、readline、sqlite、zlib、libffi、python、mariadb等。 安装步骤大致如下: 1. 下载setuptools和pip的源码包,并使用Python进行安装。这包括...

    erlangForLinux_20.1.zip

    sudo yum install gcc kernel-devel ncurses-devel readline-devel openssl-devel sqlite-devel bzip2-devel expat-devel gdbm-devel libyaml-devel ``` 以上就是在Linux系统中安装Erlang 20.1的基本步骤。Erlang...

    oracle ebs R12 在linux 安装 12.1.1升级 安装中文语言包.docx

    4. **中文语言包安装:** 在完成核心应用程序安装后,根据 Oracle 提供的文档安装中文语言包。 #### 结论 通过本文档提供的指南,您可以顺利地在 Linux 系统上完成 Oracle EBS R12.1.1 的安装和升级工作,并成功...

Global site tag (gtag.js) - Google Analytics