2012-04-13 1 views
0

많은 문제를 겪은 후 VXL-1.14.0을 설치하고 컴파일 된 오픈gazer http://www.inference.phy.cam.ac.uk/opengazer/을 설치할 수있었습니다. 나는 그 README와 mirrlules http://www.mirkules.com/opengazer/vxl_install_notes.txt에 의해 Opengazer의 Makefile과 관련 파일 ("PointTracker.h"와 같은)을 수정하는 매우 유용한 노트를 따라 갔다. 예를 들어, Makefile에서 처음 몇 줄을 다음과 같이 변경했습니다 (vxl 헤더는 "/ usr/local/include/vxl"에 있고 공유 라이브러리는 "/ usr/local/lib" libvnl_algo.so "와"libvnl.so ") : 내가 컴파일 할 때Opengazer-0.1.2 컴파일 및 vnl_cholesky.h 오류 받기

VXLDIR = /usr/local 
VERSION = opengazer-0.1.2 
CPPFLAGS = -Wall -g -O3 
LINKER = -L$(VXLDIR)/lib -L/usr/local/lib -lm -ldl -lvnl -lmvl -lvnl_algo -lvgl -lgthread-2.0 

# change the following line if your vxl library is installed elsewhere 
INCLUDES = $(foreach prefix,/usr/local/include $(VXLDIR)/include $(VXLDIR)/include/vxl, \ 
    $(foreach suffix,/core /vcl /contrib/oxl /core/vnl/algo,-I$(prefix)$(suffix))) 

=== 아직

, 나는 다음과 같은 오류가 발생합니다 :

LeastSquares.o: In function `LeastSquares::solve()': 
/home/mycomp/Downloads/opengazer-0.1.2/LeastSquares.cpp:27: undefined reference to `vnl_cholesky::vnl_cholesky(vnl_matrix<double> const&, vnl_cholesky::Operation)' 
/home/mycomp/Downloads/opengazer-0.1.2/LeastSquares.cpp:27: undefined reference to `vnl_cholesky::solve(vnl_vector<double> const&) const' 
LeastSquares.o: In function `~vnl_cholesky': 
/usr/local/include/vxl/core/vnl/algo/vnl_cholesky.h:45: undefined reference to `vnl_vector<double>::~vnl_vector()' 
/usr/local/include/vxl/core/vnl/algo/vnl_cholesky.h:45: undefined reference to `vnl_matrix<double>::~vnl_matrix()' 
LeastSquares.o: In function `LeastSquares::solve(double&, double&, double&)': 
/home/mycomp/Downloads/opengazer-0.1.2/LeastSquares.cpp:39: undefined reference to `vnl_vector<double>::~vnl_vector()' 
LeastSquares.o: In function `~vnl_cholesky': 
/usr/local/include/vxl/core/vnl/algo/vnl_cholesky.h:45: undefined reference to `vnl_matrix<double>::~vnl_matrix()' 
/usr/local/include/vxl/core/vnl/algo/vnl_cholesky.h:45: undefined reference to `vnl_vector<double>::~vnl_vector()' 
/usr/local/include/vxl/core/vnl/algo/vnl_cholesky.h:45: undefined reference to `vnl_matrix<double>::~vnl_matrix()' 
/usr/local/include/vxl/core/vnl/algo/vnl_cholesky.h:45: undefined reference to `vnl_matrix<double>::~vnl_matrix()' 
collect2: ld returned 1 exit status 
make: *** [opengazer] Error 1 

수있는 익숙한 사람 VXL, Opengazer 또는 C 라이브러리를 컴파일 할 때 일반적으로 여기에 어떤 일이 벌어지고 있는지 말해 주시겠습니까? 고맙습니다.

sudo apt-get install g++-4.4 

그런 다음 g++-4.4-g++을 포함 메이크의 라인을 변경 : gcc의 이전 버전을 사용

답변

0

문제를 해결할 것으로 보인다.

나중에 모호한 예외 문제가 발생할 경우 install notes을 참조하십시오.