2009-11-12 102 views
3

在编译使用libevent库的程序时,我使用了gcc选项-levent。但我得到这个错误 -错误的原因和解决方法 - “/ usr/bin/ld:无法找到-levent”?

在/ usr /斌/劳工处:找不到-levent

我没有我的系统,所以我静态链接到它libevent的同时使用编译

gcc -o Hello -static -I libevent-1.4.12-stable/ hello.c -levent 

我该如何解决这个问题?

在此先感谢!

回答

5

系统中的libevent.(a|so)文件在哪里?

如果它不在您系统的库路径上,那么您将不得不添加一个-L选项,将其位置添加到库链接程序搜索的路径列表中。

例如

gcc -L/folder/containing/event/lib -levent mysource.cc 
+0

我没有libevent。(a | so)。我静态地包括使用gcc的libevent -o Hello -static -I libevent-1.4.12-stable/hello.c -levent – 2009-11-12 10:34:44

+2

如果你想链接库(静态或动态)你*需要*库。静态库应该被称为libevent.a。如果这是libevent-1.4.12-stable,那么你应该提供'-Llibevent-1.4.12-stable'来告诉链接器在那里看。 – 2009-11-12 11:00:21

0

您需要在您的系统上libevent或需要明确指定其路径(如果它是一个第三方库,你用头了)。

我怀疑它不在你的默认/ lib路径。

相关问题