WFDB的快速入门2-cannot find -lwfdb的解决方法

安装完 cygwin和WFDB后,开始了《WFDB Programmer’s Guide》(WFDB程序员指南)第一个程序的测试 wfdb-10.6.2\examples\psamples.c:

#include <stdio.h>
#include <wfdb/wfdb.h>

main()
{
    int i;
    WFDB_Sample v[2];
    WFDB_Siginfo s[2];

    if (isigopen("100s", s, 2) < 1)
    exit(1);
    for (i = 0; i < 10; i++) {
    if (getvec(v) < 0)
        break;
    printf("%d\t%d\n", v[0], v[1]);
    }
    exit(0);
}

在cygwin 中执行命令行:

cd wfdb-10.6.2/examples

gcc -o psamples psamples.c -lwfdb

此时会出现这样的错误:/usr/lib/gcc/i686-pc-cygwin/10/../../../../i686-pc-cygwin/bin/ld: cannot find -lwfdb

这个意思就是找不到相应动态链接库。 (cygwin中,-LXXX是  lib+库名的意思,例如此处,-lwfdb,对应的是libwfdb.dll),上面的错误就是没有找到libwfdb.dll。

这个文件一般应该在哪呢?一般都是在环境变量设置(和WINDOWS系统类似)的地方,如 : usr/lib; usr/bin/lib;等。

libwfdb.dll这个文件在哪呢,在cygwin目录下搜索一下,在/usr/local/bin文件夹下发现了一个非空文件的libwfdb.dll.a.10.6。

接下来就是建立一个软连接就行了。

软连接的命令(LN -s):

先用命令行进入文件夹usr/lib

cd usr/lib

再执行软连接命令,

ln -s /usr/local/bin/libwfdb.dll.a.10.6 libwfdb.dll

此时就在usr/lib下建立了一个类似windows下的快捷方式。

以上就把libwfdb.dll设置到环境变量中了。

执行两个命令行,cd    ;cd wfdb-10.6.2/examples,切换到案例的目录下

再运行gcc -o psamples psamples.c -lwfdb    

ok,顺利通过。

测试一下:./psamples

第一个例子完成了。

备注:

不带库编译:gcc -o psamples psamples.c  能编译通过,但运行时,会提示函数没有定义的错误。

带库编译: gcc -o psamples psamples.c -lwfdb  就解决以上这个问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值