当前位置:  技术问答>linux和unix

求教怎么编译这个数学工具的源文件

    来源: 互联网  发布时间:2017-03-01

    本文导语:  最近要用这个数学工具来解一个问题,在网上找到了使用相应的代码包。我在Redhat中解压这个包,得到了一个名为pomdp-solve-4.0的文件夹,里面有一个main.c文件,还有定义了其他函数和变量的头文件和相应的C文件。另...

最近要用这个数学工具来解一个问题,在网上找到了使用相应的代码包。我在Redhat中解压这个包,得到了一个名为pomdp-solve-4.0的文件夹,里面有一个main.c文件,还有定义了其他函数和变量的头文件和相应的C文件。另外pomdp-solve-4.0文件夹里还有lp_solve和mdp这两个文件夹。我估计里面的函数用来解lp和mdp这两个问题,而主函数可能会调用这两个文件夹中的函数。

代码的作者给出了一些编译和运行的说明。但是我是由于要用这个工具才刚接触的linux,对他的说明不是明白,希望有高手能指点一下。他的一段话是教怎么编译,标题是“Compiling”。内容如下:
“To build the thing, do this:

     make clean
     make dep
     make pomdp-solve

Makefiles are still a bit mysterious to me, and I haven't had the time to do the IMakefile or "autoconfig" thing, so no guarantees that I actually have this set up to work properly on your system. It works on the few systems I have tried (Linux, Solaris, Solaris with CPLEX 3.0 and 4.0) , and I have tried to make it so it would work other places, but that's all I know.

Also, you can do:

     make test

to build and execute a program which automatically runs the code through some simple tests This is used to ensure that installation went well and for regression testing on subsequent versions (if you or I change the code around).

If you want, you can also do:

    make clean

to clean up all the object files, libraries, etc. or

     make clean-local

to leave the libraries in tact, but clean up the main pomdp-solve code. This leaves the libraries in-tact and helps speed up development and compilation time. ”

是不是照他这几条“make”的指令就可以完成编译了?具体步骤是先cd 进入pomdp-solve-4.0 文件夹,然后输入make指令对吧?

我奇怪的是他还有一段话讲“Compilation Transcript”,我有点不太明白这个“Compilation Transcript”是要输入的指令还是执行make编译过程中系统显示出来的东西。具体内容如下:
“Not sure if this will be helpful or not, but here is the transcript of what it looks like when I compile the code on linux without CPLEX.

arc on marie % make dep
make -C ./mdp dep
make[1]: Entering directory `/u/arc/proj/pomdp-solve-4.0/mdp'
gcc -E -M  *.[c] > Makefile.depend
make[1]: Leaving directory `/u/arc/proj/pomdp-solve-4.0/mdp'
gcc -E -M -I./mdp -I./lp_solve  *.[c] > Makefile.depend
arc on marie % make
make -C ./mdp libmdp.a
make[1]: Entering directory `/u/arc/proj/pomdp-solve-4.0/mdp'
bison -v -d parser.y
gcc -g     -c parser.tab.c
flex scanner.l
gcc -g     -c lex.yy.c
gcc -g     -c imm-reward.c
gcc -g     -c parse_err.c
gcc -g     -c parse_hash.c
gcc -g     -c sparse-matrix.c
gcc -g     -c mdp.c
ar -crv libmdp.a parser.tab.o lex.yy.o imm-reward.o parse_err.o parse_hash.o sparse-matrix.o mdp.o
a - parser.tab.o
a - lex.yy.o
a - imm-reward.o
a - parse_err.o
a - parse_hash.o
a - sparse-matrix.o
a - mdp.o
make[1]: Leaving directory `/u/arc/proj/pomdp-solve-4.0/mdp'
make -C ./lp_solve liblpk.a
make[1]: Entering directory `/u/arc/proj/pomdp-solve-4.0/lp_solve_2.2'
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c lpkit.c -o lpkit.o
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c solve.c -o solve.o
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c debug.c -o debug.o
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c read.c -o read.o
read.c: In function `read_lp_file':
read.c:572: warning: implicit declaration of function `yyparse'
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c readmps.c -o readmps.o
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c hash.c -o hash.o
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c presolve.c -o presolve.o
bison -y lp.y
mv y.tab.c lp.c
flex lex.l
mv lex.yy.c lex.c
gcc -g -Wall -pedantic -ansi -DSYSLINUX   -c lp.c -o lp.o
/usr/lib/bison.simple: In function `yyparse':
/usr/lib/bison.simple:327: warning: implicit declaration of function `yyerror'
/usr/lib/bison.simple:387: warning: implicit declaration of function `yylex'
lp.y:99: warning: implicit declaration of function `check_decl'
lex.yy.c: In function `yy_init_buffer':
In file included from lp.y:204:
lex.yy.c:1362: warning: implicit declaration of function `fileno'
lex.yy.c: At top level:
lex.yy.c:1116: warning: `yyunput' defined but not used
ar rv liblpk.a lpkit.o solve.o debug.o read.o readmps.o hash.o presolve.o lp.o
a - lpkit.o
a - solve.o
a - debug.o
a - read.o
a - readmps.o
a - hash.o
a - presolve.o
a - lp.o
ranlib liblpk.a
make[1]: Leaving directory `/u/arc/proj/pomdp-solve-4.0/lp_solve_2.2'
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c global.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c timing.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c random.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c pomdp.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c alpha.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c stats.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c params.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c projection.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c lp-interface.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c region.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c parsimonious.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c neighbor.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c common.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c witness.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c cross-sum.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c enumeration.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c inc-prune.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c two-pass.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c vertex-enum.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c linear-support.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c policy-graph.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c cmd-line.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c signal-handler.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c pomdp-solve.c
gcc    -DSYSLINUX   -g -pedantic -I./mdp -I./lp_solve  -c main.c
gcc -o pomdp-solve  -L./mdp -L./lp_solve  global.o timing.o random.o pomdp.o alpha.o stats.o params.o projection.o lp-interface.o region.o parsimonious.o neighbor.o common.o witness.o cross-sum.o enumeration.o inc-prune.o two-pass.o vertex-enum.o linear-support.o policy-graph.o cmd-line.o signal-handler.o pomdp-solve.o main.o   -lmdp -llpk  -lm”

确实太麻烦了哈,但还是希望能有高手帮帮我。倒是是直接输入那几条make指令就好,还是说要输入上面这一长串这么多命令呢?
  

|
编译的话,当然是那几条 make指令

transcript 是为了出错时找问题用的

    
 
 

您可能感兴趣的文章:

  • [求教]内核加载模块后,这部分内容编译在内核里的吗?
  • 求教内核编译网络部分配置
  • 求教一个比较初级的java编译问题
  • 从最小系统开始编译安装整个系统求教
  • c/c++ iis7站长之家
  • arm-linux-gcc编译JM的问题求教
  • 高分求教mysql 编译环境安装问题!
  • 求教——编译内核(新手大派送)
  • 求教:编译qtopia时报错
  • 想通过交叉编译把open dpi移植到mips64目标平台上,新手求教??
  • 紧急求教: LINUX 内核编译错误 !!!!!!!!!!
  • gcc 编译参数求教
  • 求教:编译时静态库的问题
  • 求教:有没有工具能把java程序编译成windows上的可执行文件?
  • 一个关于编译器的小问题,小妹初学求教
  • 使用连接池时能否使用预编译的PrepareStatement或CallableStatement,200分求教
  • 新手求教。。。。有.c .so .h文件的程序要怎么编译???.h .so均不是标准的。。。
  • jdk 1.4.0 servlet 包还在javax包里面嘛?我以前用jdk1.3搞定的东西在jdk1.4 编译不出来啦,高分求教,明天结贴
  • 求教:JAVA程序的发布问题,编译成.EXE文件后,拷贝到其他机器会出现……详细请进
  • centos6.2编译安装compat-wireless时报错。求教!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求教求教,shell问题...各位大哥,帮忙下
  • 400分求教: 求教一简单问题,现场给分
  • 高分求教:如何将JAVA文件(.class)制作成可执行文件(.exe),求教方法或工具推荐
  • 急!!求教linux命令的使用:统计出/bin目录中文件的个数,追加到文件filea的结尾
  • 求教:在UNIX中查找包含指定文字的文件名
  • 小白菜求教linux大鸟
  • JDK1.3.1初级问题求教
  • 初学者有问题求教!
  • 各路高手请进!高分求教,非常着急!
  • 高分求教的问题(关于SendMail设置)
  • 简单问题:从sun网站上当了个jdk1.4b3,bin后缀,求教怎么安装
  • 求教:知道当前时间,如何得到N天前的时间 ?
  • 求教:switch(condition)中的condition 必须为整型吗?
  • Linux远程访问的问题,高分求教:)
  • 求教:在Linux下如何做代理服务器?
  • 紧急求教!究竟Java里面有没有相当于C++的CPOINT的类阿?
  • 求教JAVA中XML解析问题
  • 50分求教,在JSP里如何将String转换成Double
  • 我刚装好,是不是需要配制环境变量?求教。
  • 400分求教JAVA皮肤的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3