2013-07-04 32 views
0

我试图编译编译项目“volumemorph”在http://cs.uccs.edu/~gsc/pub/master/kchandra/src/ 给出以下按照Linux系统VTK wiki的指令http://cs.uccs.edu/~gsc/pub/master/kchandra/src/Read_Me.txt编译错误VTK,C++

的VTK安装已完成的指示。

在volumemorph项目中,我得到以下信息的编译:

make all-recursive 
make[1]: Entering directory `/home/axlia/volumemorph' 
Making all in volumemorph 
make[2]: Entering directory `/home/axlia/volumemorph/volumemorph' 
source='CADisplayEngine.cpp' object='CADisplayEngine.o' libtool=no \ 
    depfile='.deps/CADisplayEngine.Po' tmpdepfile='.deps/CADisplayEngine.TPo' \ 
    depmode=gcc3 /bin/bash ../admin/depcomp \ 
    g++ -DHAVE_CONFIG_H -I. -I. -I..  -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -fno-exceptions -fno-check-new -c -o CADisplayEngine.o `test -f 'CADisplayEngine.cpp' || echo './'`CADisplayEngine.cpp 
cc1plus: warning: command line option ‘-Wmissing-prototypes’ is valid for C/ObjC but not for C++ [enabled by default] 
In file included from CADisplayEngine.cpp:18:0: 
CADisplayEngine.h: In member function ‘float CADisplayEngine::getRenderTimeInSeconds()’: 
CADisplayEngine.h:80:79: warning: conversion to ‘float’ from ‘double’ may alter its value [-Wconversion] 
CADisplayEngine.cpp: In member function ‘void CADisplayEngine::initialize(int, int)’: 
CADisplayEngine.cpp:68:16: error: ‘class vtkVolumeRayCastMapper’ has no member named ‘SetInput’ 
CADisplayEngine.cpp: In member function ‘void CADisplayEngine::render(CAVolume*)’: 
CADisplayEngine.cpp:117:13: error: ‘class vtkJPEGWriter’ has no member named ‘SetInput’ 
CADisplayEngine.cpp: In member function ‘bool CADisplayEngine::saveImageFile()’: 
CADisplayEngine.cpp:196:6: warning: no return statement in function returning non-void [-Wreturn-type] 
make[2]: *** [CADisplayEngine.o] Error 1 
make[2]: Leaving directory `/home/axlia/volumemorph/volumemorph' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `/home/axlia/volumemorph' 
make: *** [all] Error 2 

我敢肯定的是,代码应该工作,但我不能编译它,我坚持,任何帮助吗?我该如何解决它?

PS我使用Ubuntu 12.10,我是一个新的Linux用户。

+0

如果您使用的是VTK6,则需要将一些SetInput调用更改为SetInputData。 –

回答

0

自述文件说它需要VTK 4.2。你确定你正在使用这个版本吗?因为Ubuntu 12.10 seems to pack version 5.8

的选项有:

  • 查找,下载VTK 4.2,编译和使用您的个人副本,而不是系统之一。
  • 查找适用于您的VTK版本的volumemorph的更新版本。
  • 了解VTK 4.2和5.8之间的差异,并自行修补volumemorph