Win7下VS2008编译metis

来源:互联网 发布:网络验证授权 编辑:程序博客网 时间:2024/05/08 19:08
                                  Win7下VS2008编译metis

                                           By wangsh 2011-11-22

       metis是比较经典的分割图算法库,算法经典,稳定高效。

本文介绍编译metis问题解决:

metis:参考2中下载metis-4.0.tar.gz  解压。

建立空vs2008工程,添加lib中的文件,编译。

解决出现的几个问题:

1.      找不到double drand48()void srand48(long):

方法1:在macros.h文件头添加:#define __VC__

方法2:自己建立rand48.c:拷贝下面内容:

/* ========================================================================== */

/* === rand48.c ====================================================== */

/* ========================================================================== */

 

/* METIS uses drand48 and srand48

 */

 

#include <stdlib.h>

 

double drand48 (void)

{

    return (((double) (rand ( ))) / ((double) RAND_MAX)) ;

}

 

void srand48 (long int seed)

{

    srand ((unsigned int) seed) ;

}

 

2.      找不到void ReadGraph(GraphType *graph, char *filename, int *wgtflag)函数,将Programs文件夹下io.c和smbfactor.c到Lib文件夹下,添加到工程中,解决。

 

编译链接,成功!

 

 

Enjoy it!

 

版权所有,侵权必究。转载请注明链接: http://blog.csdn.net/wsh6759/article/details/7000329

参考资料

1.     Metis简介 http://glaros.dtc.umn.edu/gkhome/metis/metis/overview  

2.     Metis4.0源码网址http://glaros.dtc.umn.edu/gkhome/fsroot/sw/metis/OLD

3.     工程网址 http://www.lrz.de/services/software/mathematik/metis/

4.     源码介绍:http://people.sc.fsu.edu/~jburkardt/c_src/metis/metis.html