eclipse CDT / usr / bin / ld:找不到-l <libname> </libname>

时间:2015-01-02 09:34:43

标签: linux eclipse

这是我的代码:

#include <stdio.h>
#include <stdlib.h>
#include <libimobiledevice/libimobiledevice.h>
#include <libimobiledevice/lockdown.h>
#include <libimobiledevice/installation_proxy.h>
#include <libimobiledevice/notification_proxy.h>
#include <libimobiledevice/afc.h>

int main(void) {
    idevice_t phone = NULL;
    char *udid = NULL;
    idevice_new(&phone, udid);
    puts("!!!hello!!!"); /* prints !!!Hello World!!! */
    return EXIT_SUCCESS;
}

我安装了libimobiledevice库,这是

#ls /usr/lib/i386-linux-gnu | grep libimob
libimobiledevice.a
libimobiledevice.so
libimobiledevice.so.4
libimobiledevice.so.4.0.1

但为什么在配置CDT时使用共享库如图片CDT错误?

/usr/bin/ld: cannot find -llibimobiledevice

enter image description here enter image description here enter image description here

2 个答案:

答案 0 :(得分:3)

在库下添加imobiledevice而不是libimobiledevice。使用-lx时,链接器会搜索libx.so。在您的情况下,链接器搜索了它找不到的liblibimobiledevice.so

答案 1 :(得分:0)

在Mars Eclipse中,添加第三方库只能从中获取 C ++ / Build-&gt; Setting-&gt; Cross G ++ Link-&gt;杂。

我浪费了两个小时通过其他方法添加库,但这个对我有用。