2013-10-30 52 views
0

问题安装用于C/C++库 “IGRAPH” ++中的应用程序文件夹安装在应用程序文件夹对于C库 “IGRAPH”/ C++

我使用Ubuntu 13.04

下载链接:http://sourceforge.net/projects/igraph/?source=dlp

我试图安装库 “IGRAPH” 为C /基于此链接C + +:

http://igraph.sourceforge.net/doc/html/igraph-installation.html

http://igraph.sourceforge.net/doc/html/ch03s01.html

http://www.linphone.org/docs/mediastreamer2/mediastreamer2_install.html参见 “安装名称”

基础,要安装完整的C库打字

$ ./configure 
$ make 
$ make install 

默认情况下,'make install'安装/usr/local/bin包下的命令,包括/usr/local/include下的文件,等。我想在我的应用程序目录中安装软件包

我修改了默认安装:

$ ./configure 
$ make 
$ make install DESTDIR=~/Desktop/Graph/igraph/ 

我试图编译下面简单的例子程序:

#include "../usr/local/include/igraph/igraph.h" 

int main(void) { 
    igraph_integer_t diameter; 
    igraph_t graph; 
    igraph_erdos_renyi_game(&graph, IGRAPH_ERDOS_RENYI_GNP, 1000, 5.0/1000, IGRAPH_UNDIRECTED, IGRAPH_NO_LOOPS); 
    igraph_diameter(&graph, &diameter, 0, 0, 0, IGRAPH_UNDIRECTED, 1); 
    printf("Diameter of a random graph with average degree 5: %d\n", (int) diameter); 
    igraph_destroy(&graph); 
    return 0; 
} 

我使用的命令编译程序:

gcc igraph_test.c -I~/Desktop/Graph/igraph/usr/local/include/igraph -L~/Desktop/Graph/igraph/usr/local/lib -ligraph -o igraph_test 

但是,出现此错误:

/usr/bin/ld: cannot find -ligraph 
collect2: error: ld returned 1 exit status 

任何人都可以帮助m è?

+0

这是你正在编译的实际代码,以及它给出的实际错误吗?或者你真正的代码在第8行说“GRAPH_UNDIRECTED”,它应该(可能)说'IGRAPH_UNDIRECTED'? –

+0

对不起,错误是另一个。修复问题。 –

+0

您是否检查过安装是否将该库放在您期望的位置?即'〜/ Desktop/Graph/igraph/usr/local/lib'中是否有'libigraph.a'或'.so'? –

回答

1

当您调用gcc时,请尝试拼写出您的主目录的全名(例如/Users/whatever/Desktop/Graph/igraph/usr/local/lib),而不是简单地指定~/Desktop/Graph/igraph/usr/local/lib。对做同样的事情。这解决了我在我的机器上的问题。

相关问题