gcc 编译第三方库

gcc 编译第三方库

说明: 测试文件, 连接postgresql 数据库, 需要第三方 libpq-fe.h
c文件如下, 文件名为 main.c

#include <stdio.h>
#include <stdlib.h>

/** yum install postgresql-devel */
#include <libpq-fe.h>

#include <string.h>

const char *conninfo="host=192.168.31.140 dbname=sfang user=postgres password=13673711016";

void test_dbconn() {
    PGconn *conn;
    conn=PQconnectdb(conninfo);
    if(PQstatus(conn)==CONNECTION_BAD)
    {
       fprintf(stderr,"connection to %s failed 
",conninfo);
       PQerrorMessage(conn);
    }
    else printf("connection ok 
");
    PQfinish(conn);
}

//gcc main.c -o main -I /usr/include -L /usr/lib64 -lpq
int main(int argc, char const *argv[])
{
    test_dbconn();
}

1. 编译使用以下命令

gcc -g main.c -o main -I /usr/include -L /usr/lib64 -lpq
./main  ## 运行即可
  • -I 是 libpq-fe.h 头文件所在目录
  • -L 是 libpq-fe 对应 .so 文件所在目录
  • -l 是 libpq-fe 对应的 .so 文件, libpq-fe对应的文件为 libpq.so, 则 写为 -lpq
  • -g 是 编译的时候会包含调试信息, 使用gdb可以调试源代码
原文地址:https://www.cnblogs.com/han-guang-xue/p/14971714.html