Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 13/05/2010, à 20:07

grim7reaper

Re : Problème de compilation de PTAMM

On est sur la bonne voie smile.
La compilation est OK, mais l'édition des liens pose problème.

Tu as bien fait

sudo make install

pour la libcvd ?

Tu pourrais poster le contenu du makefile pour PTAMM (et eventuellement celui pour la libcvd) ?

Dernière modification par grim7reaper (Le 13/05/2010, à 20:09)

Hors ligne

#27 Le 13/05/2010, à 21:53

Piratecorp

Re : Problème de compilation de PTAMM

Voici celui de PTAMM:

# DO NOT DELETE THIS LINE -- make depend depends on it.


# Edit the lines below to point to any needed include and link paths
# Or to change the compiler's optimization flags
CC = g++
COMPILEFLAGS = -I MY_CUSTOM_INCLUDE_PATH -D_LINUX -D_REENTRANT -Wall  -O3 -march=nocona -msse3
LINKFLAGS = -L MY_CUSTOM_LINK_PATH -lGVars3 -lcvd

# Edit this line to change video source
VIDEOSOURCE = VideoSource_Linux_DV.o

OBJECTS=	main.o\
		GLWindow2.o\
		GLWindowMenu.o\
		$(VIDEOSOURCE)\
		System.o \
		ATANCamera.o\
		KeyFrame.o\
		MapPoint.o\
		Map.o\
		SmallBlurryImage.o\
		ShiTomasi.o \
		HomographyInit.o \
		MapMaker.o \
		Bundle.o \
		PatchFinder.o\
		Relocaliser.o\
		MiniPatch.o\
		MapViewer.o\
		ARDriver.o\
		EyeGame.o\
		Tracker.o

CALIB_OBJECTS=	GLWindow2.o\
		GLWindowMenu.o\
		$(VIDEOSOURCE)\
		CalibImage.o \
		CalibCornerPatch.o\
		ATANCamera.o \
		CameraCalibrator.o

All: PTAM CameraCalibrator

PTAM: $(OBJECTS)
	$(CC) -o PTAM $(OBJECTS) $(LINKFLAGS)

CameraCalibrator:$(CALIB_OBJECTS)
	$(CC) -o CameraCalibrator $(CALIB_OBJECTS) $(LINKFLAGS)


%.o: %.cc
	$(CC) $< -o $@ -c $(COMPILEFLAGS)

clean:
	rm *.o


depend:
	rm dependecies; touch dependencies
	makedepend -fdependencies $(INCLUDEFLAGS) $(MOREINCS) *.cc *.h


-include dependencies

et libcvd:

# Makefile.  Generated from Makefile.in by configure.

SHELL = /bin/sh
srcdir = .
top_srcdir = .

prefix = /usr/local
exec_prefix = ${prefix}
bindir = ${exec_prefix}/bin
sbindir = ${exec_prefix}/sbin
libexecdir = ${exec_prefix}/libexec
datadir = ${datarootdir}
sysconfdir = ${prefix}/etc
sharedstatedir = ${prefix}/com
localstatedir = ${prefix}/var
libdir = ${exec_prefix}/lib
infodir = ${datarootdir}/info
mandir = ${datarootdir}/man
includedir = ${prefix}/include
oldincludedir = /usr/include
arch= i686
datarootdir=${datarootdir}


CC = gcc
CXX=g++
LD=g++
RANLIB=ranlib
CPPFLAGS =  -INONE/include
CFLAGS = -g -O2
CXXFLAGS = -D_REENTRANT -Wall -Wextra -pipe -ggdb -fPIC -mmmx -msse -msse -msse2 -msse3 -pthread
OFLAGS= -O3 -march=native
LDFLAGS = 
LOADLIBES = -ljpeg -lpng -lpng -llapack -lGLU -lGL -lrt  -L -lX11 -lXext -pthread
INSTALL = /usr/bin/install -c
AR=ar

pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@

top_builddir = .

ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@

INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL} $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_SCRIPT = ${INSTALL}
transform = s,x,x,

NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
MAKEINFO = @MAKEINFO@
PACKAGE = @PACKAGE@
VERSION = @VERSION@

DEBUGEXTRA=-D_GLIBCXX_DEBUG -DCVD_IMAGE_DEBUG

SUBDIRS =
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_CLEAN_FILES =
DIST_COMMON =  README ChangeLog Makefile.am \
Makefile.in aclocal.m4 configure configure.ac install-sh missing \
mkinstalldirs


DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)

TAR = gtar
GZIP_ENV = --best

################################################################################
#
# CVD objects
#

CVD_OBJS=   \
			cvd_src/diskbuffer2.o                           \
			cvd_src/deinterlacebuffer.o                     \
			cvd_src/exceptions.o                            \
			cvd_src/image_io.o                              \
			cvd_src/bayer.o                                 \
			cvd_src/colourspace_convert.o                   \
			cvd_src/half_sample.o                           \
			cvd_src/draw.o                                  \
			cvd_src/yuv422.o                                \
			cvd_src/yuv420.o                                \
			pnm_src/pnm_grok.o                              \
			pnm_src/bmp.o                                   \
			pnm_src/cvdimage.o                              \
			pnm_src/fits.o                                  \
			pnm_src/fitswrite.o                             \
			pnm_src/save_postscript.o                       \
			pnm_src/text_write.o                            \
			pnm_src/text.o                                  \
			cvd_src/fast_corner.o                           \
			cvd_src/convolution.o                           \
			cvd_src/nonmax_suppression.o                    \
			cvd_src/timeddiskbuffer.o                       \
			cvd_src/videosource.o                           \
			cvd_src/connected_components.o                  \
			cvd_src/i686/yuv411_to_stuff_MMX.o cvd_src/i686/halfsample.o cvd_src/i686/rgb_to_gray.o cvd_src/i686/convert_rgb_to_y.o cvd_src/i686/convolve_gaussian.o cvd_src/i686/gradient.o cvd_src/i686/yuv422_to_rgb.o cvd_src/i686/yuv422_to_grey.o cvd_src/i686/yuv422_wrapper.o cvd_src/i686/median_3x3.o cvd_src/i686/utility_float.o cvd_src/i686/utility_byte_differences.o cvd_src/i686/utility_double_int.o cvd_src/SSE2/two_thirds_sample.o cvd_src/fast/fast_7_detect.o cvd_src/fast/fast_7_score.o cvd_src/slower_corner_7.o cvd_src/fast/fast_8_detect.o cvd_src/fast/fast_8_score.o cvd_src/slower_corner_8.o cvd_src/fast/fast_9_detect.o cvd_src/fast/fast_9_score.o cvd_src/fast_corner_9_nonmax.o cvd_src/fast/fast_10_detect.o cvd_src/fast/fast_10_score.o cvd_src/fast/fast_11_detect.o cvd_src/fast/fast_11_score.o cvd_src/slower_corner_11.o cvd_src/fast/fast_12_detect.o cvd_src/fast/fast_12_score.o cvd_src/faster_corner_9.o cvd_src/faster_corner_10.o cvd_src/faster_corner_12.o cvd_src/videosource_nodvbuffer.o cvd_src/Linux/v4l1buffer.o cvd_src/Linux/videosource_v4l1buffer.o cvd_src/Linux/v4lbuffer.o cvd_src/Linux/videosource_v4lbuffer.o cvd_src/Linux/v4l2buffer.o cvd_src/Linux/v4lcontrol.o cvd_src/OSX/videosource_noqtbuffer.o cvd_src/posix/timer.o cvd_src/synchronized.o cvd_src/eventobject.o cvd_src/thread.o cvd_src/thread/runnable_batch.o cvd_src/noarch/posix_memalign.o cvd_src/videodisplay.o cvd_src/glwindow.o cvd_src/gltext.o pnm_src/jpeg.o pnm_src/png.o cvd_src/videosource_novideofilebuffer.o cvd_src/globlist.o cvd_src/tensor_voting.o cvd_src/brezenham.o cvd_src/draw_toon.o 

################################################################################
#
# Shared objects
#

ifeq (,yes)
	soname=libcvd.dylib
	soname1=libcvd-0.dylib
	soname2=libcvd-0.8.dylib

	dsoname=libcvd_debug.dylib
	dsoname1=libcvd_debug-0.dylib
	dsoname2=libcvd_debug-0.8.dylib

	shared=-dynamiclib
else
	soname=libcvd.so
	soname1=libcvd.so.0
	soname2=libcvd.so.0.8

	dsoname=libcvd_debug.so
	dsoname1=libcvd_debug.so.0
	dsoname2=libcvd_debug.so.0.8

	set_soname=-Wl,-soname,libcvd.so.0
	set_dsoname=-Wl,-soname,libcvd_debug.so.0

	shared=-shared
endif

OBJS=$(CVD_OBJS)

DEBUG_OBJSA=$(OBJS:cvd_src%=debug/cvd_src%)
DEBUG_OBJS=$(DEBUG_OBJSA:pnm_src%=debug/pnm_src%)

sos= $(soname) $(soname1) $(soname2) 
dsos= $(dsoname) $(dsoname1) $(dsoname2) 


all: libcvd.a $(soname) progs $(DTARGETS) libcvd_debug.a $(dsoname)

$(soname): $(OBJS)
	rm -f $(sos)
	$(LD) $(shared) -o $(soname2) $(OBJS) $(LDFLAGS) $(LOADLIBES) $(sed_soname)
	ln -s $(soname2) $(soname1)
	ln -s $(soname1) $(soname)

$(dsoname): $(DEBUG_OBJS)
	rm -f $(dsos)
	$(LD) $(shared) -o $(dsoname2) $(DEBUG_OBJS) $(LDFLAGS) $(LOADLIBES) $(set_dsoname)
	ln -s $(dsoname2) $(dsoname1)
	ln -s $(dsoname1) $(dsoname)

libcvd.a: $(OBJS)
	$(AR) crvs libcvd.a $(OBJS)
	$(RANLIB) libcvd.a

libcvd_debug.a: $(DEBUG_OBJS)
	$(AR) crvs libcvd_debug.a $(DEBUG_OBJS)
	$(RANLIB) libcvd_debug.a

#Automatically deduce the debug directories
DEBUG_DIRS=$(shell find ???_src -type d -not -name 'CVS' | xargs -n1 -Ix  echo  debug/x )

#This the debug subdir all debug directories, so specifying a dependency on this
#will ensure that all subdirs get created
debug:$(DEBUG_DIRS)

#Multiple targets are allowed on the left, so all directories can be created in batch
#with a single rule
$(DEBUG_DIRS):
	mkdir -p $(DEBUG_DIRS)

# Before we compile the test programs we need to augment the
# search paths with the path to libcvd, and also add libcvd to the
# libraries to use
CPPFLAGS = -I.  -INONE/include
ifneq (,yes)
    LDFLAGS = -Wl,-R. 
endif
LDFLAGS =  -L.
LOADLIBES = -ljpeg -lpng -lpng -llapack -lGLU -lGL -lrt  -L -lX11 -lXext -pthread

PROGS=progs/se3_exp progs/se3_ln progs/se3_pre_mul progs/se3_post_mul progs/se3_inv progs/calibrate progs/img_play progs/cvd_display_image progs/img_play_bw progs/img_play_deinterlace progs/video_play_source  
TESTPROGS=test/diskbuffer2 test/test_images test/v4lbuffer_mono test/v4lbuffer_bayerrgb test/v4l2buffer test/v4l1buffer_bayer test/v4l1buffer_rgb test/font 

$(PROGS):$(soname)
$(TESTPROGS):$(soname)

testprogs: $(TESTPROGS)
progs: $(PROGS)


no:
	doxygen Doxyfile

test-fast:test/fast_test
	test/fast_test test/fast_test_image/noise.pgm


#If the mandir is older than the lib, then remake. A bit of a hack
man: libcvd.a
	doxygen Doxyfile
	touch man


install: install-nodebug install-libs-debug

install-nodebug: install-progs install-headers install-libs 

install-progs:progs
	mkdir -p $(DESTDIR)$(bindir)
	[ "$(PROGS)" = "" ] || cp $(PROGS) $(DESTDIR)$(bindir)

install-headers:
	mkdir -p $(DESTDIR)$(includedir)
	cp -r cvd $(DESTDIR)$(includedir)

install-libs-so:$(soname)
	mkdir -p $(DESTDIR)$(libdir)
	cp $(soname2) $(DESTDIR)$(libdir)
	rm -f  $(libdir)/$(soname1) $(DESTDIR)$(libdir)/$(soname)
	ln -s  $(libdir)/$(soname2) $(DESTDIR)$(libdir)/$(soname1)
	ln -s  $(libdir)/$(soname1) $(DESTDIR)$(libdir)/$(soname)

install-libs-a:libcvd.a
	mkdir -p $(DESTDIR)$(libdir)
	cp libcvd.a $(DESTDIR)$(libdir)

install-libs:install-libs-so install-libs-a

install-libs-debug:$(dsoname) libcvd_debug.a
	mkdir -p $(DESTDIR)$(libdir)
	cp $(dsoname2) $(DESTDIR)$(libdir)
	rm -f  $(libdir)/$(dsoname1) $(DESTDIR)$(libdir)/$(dsoname)
	ln -s  $(libdir)/$(dsoname2) $(DESTDIR)$(libdir)/$(dsoname1)
	ln -s  $(libdir)/$(dsoname1) $(DESTDIR)$(libdir)/$(dsoname)
	cp libcvd_debug.a $(DESTDIR)$(libdir)




clean:
	/bin/rm -f tmp libcvd.a $(sos) libcvd_debug.a $(dsos)
	find . -name '*.o' | xargs rm -f
	find progs/ -perm +0100 -type f | xargs rm -f
	rm -rf html man

distclean: clean
	/bin/rm -f Makefile config.h config.status config.cache config.log cvd/config.h .deps config.dep_tmp
	/bin/rm -rf debug

.deps:
	rm -f .sourcefiles
	find . -name "*.cxx" -o -name "*.cc" -o -name "*.cpp" -o -name "*.c" -o -name "*.C"  | grep -v python > .sourcefiles
	rm -f .deps
	bash generate_dependencies.bash "-I. $(CPPFLAGS) $(CXXFLAGS)" > .deps

depend: .deps

.PHONY: ChangeLog 

ChangeLog:
	cvs log | gawk -f make/log_to_changelog.awk > ChangeLog

.PRECIOUS: %.o

%.o : %.cc
	$(CXX) $(OFLAGS) -I. $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@

%.o: %.cpp
	$(CXX) $(OFLAGS) -I. $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@

%.o: %.cxx
	$(CXX) $(OFLAGS) -I. $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@

%.o: %.C
	$(CXX) $(OFLAGS) -I. $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@

%.o: %.s
	as -g -o $@ $<



debug/%.o : %.cc debug
	$(CXX) -I. $(CPPFLAGS) $(CXXFLAGS) $(DEBUGEXTRA) -c $< -o $@

debug/%.o: %.cpp debug
	$(CXX) -I. $(CPPFLAGS) $(CXXFLAGS) $(DEBUGEXTRA) -c $< -o $@

debug/%.o: %.cxx debug
	$(CXX) -I. $(CPPFLAGS) $(CXXFLAGS) $(DEBUGEXTRA) -c $< -o $@

debug/%.o: %.C debug
	$(CXX) -I. $(CPPFLAGS) $(CXXFLAGS) $(DEBUGEXTRA) -c $< -o $@

debug/%.o: %.s debug
	as -g -o $@ $<

%: %.o
	$(CXX) -o $@ $< $(LDFLAGS) -lcvd  $(LOADLIBES)

include .deps
sudo make install

a été fait

Dernière modification par Piratecorp (Le 13/05/2010, à 21:57)

Hors ligne

#28 Le 13/05/2010, à 22:03

grim7reaper

Re : Problème de compilation de PTAMM

OK.

Dans le Makefile de PTAMM remplace la ligne (située au début)

LINKFLAGS = -L MY_CUSTOM_LINK_PATH -lGVars3 -lcvd

par

LINKFLAGS = -L /usr/local/lib -lGVars3 -lcvd

et réessaye un

make

et si cette fois ça fonctionne, conclus par un

sudo make install

pour terminer l'installation.

Dernière modification par grim7reaper (Le 13/05/2010, à 22:03)

Hors ligne

#29 Le 13/05/2010, à 22:35

Piratecorp

Re : Problème de compilation de PTAMM

Voici le résultat:

piratecorp@piratecorp-laptop:~/Bureau/PTAMM$ make
g++ -o PTAM main.o GLWindow2.o GLWindowMenu.o VideoSource_Linux_DV.o System.o ATANCamera.o KeyFrame.o MapPoint.o Map.o SmallBlurryImage.o ShiTomasi.o HomographyInit.o MapMaker.o Bundle.o PatchFinder.o Relocaliser.o MiniPatch.o MapViewer.o ARDriver.o EyeGame.o Tracker.o -L /usr/local/lib -lGVars3 -lcvd
VideoSource_Linux_DV.o: In function `VideoSource::VideoSource()':
VideoSource_Linux_DV.cc:(.text+0x279): undefined reference to `CVD::DV3::RawDVBuffer3::RawDVBuffer3(CVD::DV3::DV3ColourSpace, int, unsigned long long, int, bool, bool, CVD::ImageRef, float, CVD::ImageRef, int)'
VideoSource_Linux_DV.o: In function `VideoSource::VideoSource()':
VideoSource_Linux_DV.cc:(.text+0x47b): undefined reference to `CVD::DV3::RawDVBuffer3::RawDVBuffer3(CVD::DV3::DV3ColourSpace, int, unsigned long long, int, bool, bool, CVD::ImageRef, float, CVD::ImageRef, int)'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::frame_pending()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EE13frame_pendingEv[CVD::DVBuffer3<CVD::yuv411>::frame_pending()]+0x22): undefined reference to `CVD::DV3::RawDVBuffer3::frame_pending()'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::put_frame(CVD::VideoFrame<CVD::yuv411>*)':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EE9put_frameEPNS_10VideoFrameIS1_EE[CVD::DVBuffer3<CVD::yuv411>::put_frame(CVD::VideoFrame<CVD::yuv411>*)]+0x11): undefined reference to `CVD::DV3::RawDVBuffer3::put_frame(CVD::VideoFrame<unsigned char>*)'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::get_frame()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EE9get_frameEv[CVD::DVBuffer3<CVD::yuv411>::get_frame()]+0xc): undefined reference to `CVD::DV3::RawDVBuffer3::get_frame()'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EED0Ev[CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()]+0x3c): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EED1Ev[CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()]+0x3c): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x24): undefined reference to `typeinfo for CVD::DV3::RawDVBuffer3'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x2c): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x30): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x38): undefined reference to `CVD::DV3::RawDVBuffer3::frame_pending()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x68): undefined reference to `typeinfo for CVD::DV3::RawDVBuffer3'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x70): undefined reference to `virtual thunk to CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x74): undefined reference to `virtual thunk to CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x7c): undefined reference to `virtual thunk to CVD::DV3::RawDVBuffer3::frame_pending()'
VideoSource_Linux_DV.o:(.rodata._ZTIN3CVD9DVBuffer3INS_6yuv411EEE[typeinfo for CVD::DVBuffer3<CVD::yuv411>]+0x18): undefined reference to `typeinfo for CVD::DV3::RawDVBuffer3'
collect2: ld returned 1 exit status
make: *** [PTAM] Erreur 1

ça bug encore mais il y a du progrès

Hors ligne

#30 Le 13/05/2010, à 22:43

grim7reaper

Re : Problème de compilation de PTAMM

Quand tu as fais le

sudo make install

pour la libcvd il t'a affiché quoi (si tu ne t'en rappelle plus, refais-le) ?

Hors ligne

#31 Le 13/05/2010, à 22:53

Piratecorp

Re : Problème de compilation de PTAMM

Voilà:

piratecorp@piratecorp-laptop:~/Bureau/PTAMM/libcvd$ sudo make install
[sudo] password for piratecorp: 
mkdir -p /usr/local/bin
[ "progs/se3_exp progs/se3_ln progs/se3_pre_mul progs/se3_post_mul progs/se3_inv progs/calibrate progs/img_play progs/cvd_display_image progs/img_play_bw progs/img_play_deinterlace progs/video_play_source  " = "" ] || cp progs/se3_exp progs/se3_ln progs/se3_pre_mul progs/se3_post_mul progs/se3_inv progs/calibrate progs/img_play progs/cvd_display_image progs/img_play_bw progs/img_play_deinterlace progs/video_play_source   /usr/local/bin
mkdir -p /usr/local/include
cp -r cvd /usr/local/include
mkdir -p /usr/local/lib
cp libcvd.so.0.8 /usr/local/lib
rm -f  /usr/local/lib/libcvd.so.0 /usr/local/lib/libcvd.so
ln -s  /usr/local/lib/libcvd.so.0.8 /usr/local/lib/libcvd.so.0
ln -s  /usr/local/lib/libcvd.so.0 /usr/local/lib/libcvd.so
mkdir -p /usr/local/lib
cp libcvd.a /usr/local/lib
mkdir -p /usr/local/lib
cp libcvd_debug.so.0.8 /usr/local/lib
rm -f  /usr/local/lib/libcvd_debug.so.0 /usr/local/lib/libcvd_debug.so
ln -s  /usr/local/lib/libcvd_debug.so.0.8 /usr/local/lib/libcvd_debug.so.0
ln -s  /usr/local/lib/libcvd_debug.so.0 /usr/local/lib/libcvd_debug.so
cp libcvd_debug.a /usr/local/lib

Hors ligne

#32 Le 13/05/2010, à 23:19

grim7reaper

Re : Problème de compilation de PTAMM

Hum, c'est bizarre ça hmm.

Est-ce que tu as appliqué la procédure

./configure && make && sudo make install

à GVars3 comme tu l'as fait pour la libcvd ?

Dernière modification par grim7reaper (Le 13/05/2010, à 23:25)

Hors ligne

#33 Le 13/05/2010, à 23:42

Piratecorp

Re : Problème de compilation de PTAMM

Je suis repartis de zéro pour toute les procédures d'installation de TooN, libdvc, lib3ds et gvars3

Voilà le résultat de gvars3:

piratecorp@piratecorp-laptop:~/Bureau/PTAMM/gvars3$ ./configure
checking for gawk... gawk
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking iostream usability... yes
checking iostream presence... yes
checking for iostream... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking if compiler flag -Wall works... yes
checking if compiler flag -Wextra works... yes

--------------------------
Checking for options
--------------------------
checking for TooN... yes
checking for TooN-2... yes
checking if compiler flag -pthread works... yes
checking for rl_done in -lreadline... yes

------------------------------------------------
Checking for widget libraries (provides GUI_...)
------------------------------------------------
checking for fltk2-config... no
checking FL/Fl.H usability... no
checking FL/Fl.H presence... no
checking for FL/Fl.H... no
checking for main in -lfltk... no
checking for X... libraries , headers 
checking Xm/Xm.h usability... no
checking Xm/Xm.h presence... no
checking for Xm/Xm.h... no
checking for main in -lXm... no
configure: WARNING: No GUI functionality enabled
Options:
toon readline

Missing options:
gui 
GUI support:
none

configure: creating ./config.status
config.status: creating Makefile
config.status: creating gvars3/config.h
config.status: gvars3/config.h is unchanged
piratecorp@piratecorp-laptop:~/Bureau/PTAMM/gvars3$ sudo make install
g++ -I.  -DGUI_HAVE_READLINE -g -O2 -Wall -Wextra -pthread -I.  -DGUI_HAVE_READLINE  -c -o src/gvars3.o src/gvars3.cc
In file included from ./gvars3/gvars3.h:34,
                 from src/gvars3.cc:22:
./gvars3/serialize.h: In static member function ‘static std::vector<Precision, std::allocator<_Tp1> > GVars3::serialize::FromStream<std::vector<Precision, std::allocator<_Tp1> > >::from(std::istream&)’:
./gvars3/serialize.h:77: error: ‘EOF’ was not declared in this scope
./gvars3/serialize.h:92: error: ‘EOF’ was not declared in this scope
./gvars3/serialize.h: In static member function ‘static std::vector<std::vector<Precision, std::allocator<_Tp1> >, std::allocator<std::vector<Precision, std::allocator<_Tp1> > > > GVars3::serialize::FromStream<std::vector<std::vector<Precision, std::allocator<_Tp1> >, std::allocator<std::vector<Precision, std::allocator<_Tp1> > > > >::from(std::istream&)’:
./gvars3/serialize.h:118: error: ‘EOF’ was not declared in this scope
./gvars3/serialize.h:133: error: ‘EOF’ was not declared in this scope
make: *** [src/gvars3.o] Erreur 1

Hors ligne

#34 Le 14/05/2010, à 00:00

grim7reaper

Re : Problème de compilation de PTAMM

Bon, j'essayerai de compiler GVars3 chez moi demain si j'ai le temps pour voir comment ça se passe et faire quelques tests.

Sinon, est-ce que tu suis bien l'ordre du pdf (on dirait que oui, mais je voudrai être sûr) : TooN - libCVD - GVars3 et enfin lib3ds ?

Est-ce que tu suis bien les recommandations du pdf ?
C'est à dire :
- pour TooN :

./configure && make && make install

- pour libCVD :

export CXXFLAGS=-D_REENTRANT
./configure --without-ffmpeg && make && make install

- pour GVars3 :

./configure --disable-widgets && make && make install

- et enfin pour lib3ds (bon tu n'iras pas jusque là si GVars3 ne veut pas compiler) :

./configure && make && make install

Dernière modification par grim7reaper (Le 14/05/2010, à 20:51)

Hors ligne

#35 Le 14/05/2010, à 19:46

Piratecorp

Re : Problème de compilation de PTAMM

Oui j'ai fait tout correctement mais GVvars3 ne veut toujours rien savoir

Hors ligne

#36 Le 14/05/2010, à 21:13

grim7reaper

Re : Problème de compilation de PTAMM

Alors là, c'est très étrange car chez moi ça compile sans aucun problème.

Tu as bien récupéré les sources à partir de

cvs -z3 -d:pserver:anoncvs@cvs.savannah.nongnu.org:/cvsroot/libcvd co gvars3
cvs -z3 -d:pserver:anoncvs@cvs.savannah.nongnu.org:/cvsroot/libcvd co libcvd
cvs -z3 -d:pserver:anoncvs@cvs.savannah.nongnu.org:/cvsroot/toon co TooN

?

Hors ligne

#37 Le 14/05/2010, à 22:23

Piratecorp

Re : Problème de compilation de PTAMM

Rien à faire, j'ai toujours ce résultat:

piratecorp@piratecorp-laptop:~/Bureau/PTAMM/gvars3$ ./configure --disable-widgets
checking for gawk... gawk
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking iostream usability... yes
checking iostream presence... yes
checking for iostream... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking if compiler flag -Wall works... yes
checking if compiler flag -Wextra works... yes

--------------------------
Checking for options
--------------------------
checking for TooN... yes
checking for TooN-2... yes
checking if compiler flag -pthread works... yes
checking for rl_done in -lreadline... yes

------------------------------------------------
Checking for widget libraries (provides GUI_...)
------------------------------------------------
configure: WARNING: No GUI functionality enabled
Options:
toon readline

Missing options:
gui 
GUI support:
none

configure: creating ./config.status
config.status: creating Makefile
config.status: creating gvars3/config.h

Hors ligne

#38 Le 14/05/2010, à 22:26

grim7reaper

Re : Problème de compilation de PTAMM

Non ça c'est bon, ce n'est pas un signe d'erreur.

Essaye de taper

make

maintenant.

Hors ligne

#39 Le 14/05/2010, à 23:08

Piratecorp

Re : Problème de compilation de PTAMM

j'ai peur du résultat, c'est toujours normal?

piratecorp@piratecorp-laptop:~/Bureau/PTAM/gvars3$ sudo make
g++ -I.  -DGUI_HAVE_READLINE -g -O2 -Wall -Wextra -pthread -I.  -DGUI_HAVE_READLINE  -c -o src/gvars3.o src/gvars3.cc
In file included from ./gvars3/gvars3.h:34,
                 from src/gvars3.cc:22:
./gvars3/serialize.h: In static member function ‘static std::vector<Precision, std::allocator<_Tp1> > GVars3::serialize::FromStream<std::vector<Precision, std::allocator<_Tp1> > >::from(std::istream&)’:
./gvars3/serialize.h:77: error: ‘EOF’ was not declared in this scope
./gvars3/serialize.h:92: error: ‘EOF’ was not declared in this scope
./gvars3/serialize.h: In static member function ‘static std::vector<std::vector<Precision, std::allocator<_Tp1> >, std::allocator<std::vector<Precision, std::allocator<_Tp1> > > > GVars3::serialize::FromStream<std::vector<std::vector<Precision, std::allocator<_Tp1> >, std::allocator<std::vector<Precision, std::allocator<_Tp1> > > > >::from(std::istream&)’:
./gvars3/serialize.h:118: error: ‘EOF’ was not declared in this scope
./gvars3/serialize.h:133: error: ‘EOF’ was not declared in this scope
make: *** [src/gvars3.o] Erreur 1

Hors ligne

#40 Le 14/05/2010, à 23:15

grim7reaper

Re : Problème de compilation de PTAMM

Non là il y a un problème (en passant, le sudo n'est utile que pour le make install).

C'est étrange car chez moi la compilation passe sans problème. Il te manque peut-être un paquet (mais lequel hmm).

Tu pourrais copier le contenu du fichier gvars3/serialize.h entre balise code ?

Dernière modification par grim7reaper (Le 14/05/2010, à 23:15)

Hors ligne

#41 Le 14/05/2010, à 23:22

Piratecorp

Re : Problème de compilation de PTAMM

Voilà:

/*                       
	This file is part of the GVars3 Library.

	Copyright (C) 2005 The Authors

	This library is free software; you can redistribute it and/or
	modify it under the terms of the GNU Lesser General Public
	License as published by the Free Software Foundation; either
	version 2.1 of the License, or (at your option) any later version.

	This library is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
	Lesser General Public License for more details.

	You should have received a copy of the GNU Lesser General Public
	License along with this library; if not, write to the Free Software
	Foundation, Inc., 
    51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
*/

#ifndef GV3_INC_SERIALIZE_H
#define GV3_INC_SERIALIZE_H
#include <gvars3/config.h>
#include <gvars3/default.h>
#include <string>
#include <vector>
#include <sstream>

namespace GVars3
{
	namespace serialize
	{
		/// Checks a stream and returns a statis code
		/// @param input stream to check.
		int check_stream(std::istream& i);
			
		//Define a serializer for everything that works with iostreams
		//override to add new types with unusual serializers
		template<class T> std::string to_string(const T& val)
		{
		         
			std::ostringstream o;
			o << val;
			return o.str();
		}

		std::string to_string(const std::string& val);

		template<class T> struct FromStream
		{
			static T from(std::istream& i)
			{	
				T result = DefaultValue<T>::val();
				i >> result;
				return result;
			}
		};
		
		//Special reading of strings
		template<> struct FromStream<std::string>
		{
			static std::string from(std::istream& in);
		};

		template<class T> struct FromStream<std::vector<T> >
		{
			static std::vector<T> from(std::istream& in)
			{
				std::vector<T> v;
				using std::ws;
				using std::ios;
				v.clear();
				in >> ws;
				int c;

				if((c = in.get()) == EOF)
					return v;

				if(c != '[')
				{
					in.setstate(ios::failbit);
					return v;
				}

				for(;;)
				{
					in >> ws;
					
					c = in.get();
					
					if(c == EOF || c == ']') 
						return v;

					in.unget();

					T val =  FromStream<T>::from(in);

					if(!in.fail() && !in.bad())
						v.push_back(val);
					else
						return v;
				}
			}
		};

		template<class T> struct FromStream<std::vector<std::vector<T> > >
		{
			static std::vector<std::vector<T> > from(std::istream& in)
			{
				std::vector<std::vector<T> > v;
				using std::ws;
				using std::ios;
				v.clear();
				in >> ws;
				int c;

				if((c = in.get()) == EOF)
					return in;

				if(c != '[')
				{
					in.setstate(ios::failbit);
					return v;
				}

				std::vector<T> current;

				for(;;)
				{
					in >> ws;
					
					if((c = in.get()) == EOF || c == ']') 
					{
						if(!current.empty())
							v.push_back(current);
						return v;
					}
					else if(c == ';')
					{
						v.push_back(current);
						current.clear();
					}
					else
						in.unget();

					T val = FromStream<T>::from(in);

					if(!in.fail() && !in.bad())
						current.push_back(val);
					else
						return v;
				}
			}
		};



		#ifdef GVARS3_HAVE_TOON
			template<int N> std::string to_string(const TooN::Vector<N>& m)
			{
				std::ostringstream o;
				o << "[ ";
				for(int i=0; i<m.size(); i++)
				  o << m[i] << " ";
				o << "]";
				return o.str();
			}

			template<int N, int M> std::string to_string(const TooN::Matrix<N, M>& m)
			{
				std::ostringstream o;
				o << "[ ";
				for(int i=0; i<m.num_rows(); i++)
				{
					if(i != 0)
						o << "; ";

					for(int j=0; j<m.num_cols(); j++)
					{
						if(j != 0)
							o << " ";
						o << m[i][j];
					}
				}
				o << "]";
				return o.str();
			}
			

			template<int N> struct FromStream<TooN::Vector<N> >
			{
				static TooN::Vector<N> from(std::istream& i)
				{
					std::vector<double> v = FromStream<std::vector<double> >::from(i);

					if(i.fail() || i.bad() || (N != -1 && v.size() != N) || v.size() == 0)
					{
						i.setstate(std::ios::failbit);
						return DefaultValue<TooN::Vector<N> >::val();
					}
					else
					{
						return TooN::wrapVector(&v[0], v.size());
					}
				}
			};

			/*template<int N> std::istream& from_stream(std::istream& i, TooN::Matrix<N>& m)
			{
				std::vector<std::vector<double> > v;
				from_stream(i, v);

				if(v.size() != m.num_rows())
				{
					i.setstate(std::ios::failbit);
					return i;
				}
				
				for(int r=1; r < m.size(); r++)
				{
					if(v[r].size() != m.num_cols())
					{
						i.setstate(std::ios::failbit);
						return i;
					}
				}


				for(int r=0; r < m.num_rows(); r++)
					for(int c=0; c < m.num_cols(); c++)
					{
						m[r][c] = v[r][c];
					}
				return i;
			}*/
		#endif

		template<class T> T from_stream(std::istream& i)
		{
			return FromStream<T>::from(i);
		}

		template<class T> int from_string(std::string& s, T& t)
		{
			std::istringstream is(s);
			t = from_stream<T>(is);
			return check_stream(is);
		}

	}
}


#endif

Hors ligne

#42 Le 14/05/2010, à 23:45

grim7reaper

Re : Problème de compilation de PTAMM

Ha ok, je crois que j'ai trouvé ton problème. On a une version différente de gcc (je ne suis pas sous Ubuntu) j'ai la 4.5, tu dois avoir la 4.4. Or, j'ai lu que la version 4.4 de gcc n'inclus pas cstdio par défaut (c'est stupide que le code de cette bibliothèque se base là-dessus selon moi, mais bon c'est pas moi le dev).

C++ header dependencies got cleaned up in GCC 4.3, which broke a lot of code which relied on headers to be included indirectly through some other headers. I found some new build failures with GCC 4.4 related to missing #includes; in particular, #include <cstdio> is missing in a lot of code.

Typical errors look like these:

error: 'sscanf' was not declared in this scope
error: 'EOF' was not declared in this scope
error: '::fseek' has not been declared
error: 'uint32_t' does not name a type

Donc pour résoudre ton problème remplace

#include <gvars3/config.h>
#include <gvars3/default.h>
#include <string>
#include <vector>
#include <sstream>

par

#include <gvars3/config.h>
#include <gvars3/default.h>
#include <cstdio>
#include <string>
#include <vector>
#include <sstream>

dans le fichier gvars3/serialize.h.
Et retente un make, ça devrait passer cette fois smile.

Dernière modification par grim7reaper (Le 14/05/2010, à 23:48)

Hors ligne

#43 Le 15/05/2010, à 00:10

Piratecorp

Re : Problème de compilation de PTAMM

Impeccable ça passe sans problème. Par contre quand ça bug encore vers la fin, quand je fait un make sur le dossier PTAM (j'ai bien pensé à rajouter

LINKFLAGS = -L /usr/local/lib -lGVars3 -lcvd

dans le Makefile):

piratecorp@piratecorp-laptop:~/Bureau/PTAM$ make
g++ -o PTAM main.o GLWindow2.o GLWindowMenu.o VideoSource_Linux_DV.o System.o ATANCamera.o KeyFrame.o MapPoint.o Map.o SmallBlurryImage.o ShiTomasi.o HomographyInit.o MapMaker.o Bundle.o PatchFinder.o Relocaliser.o MiniPatch.o MapViewer.o ARDriver.o EyeGame.o Tracker.o -L /usr/local/lib -lGVars3 -lcvd
VideoSource_Linux_DV.o: In function `VideoSource::VideoSource()':
VideoSource_Linux_DV.cc:(.text+0x279): undefined reference to `CVD::DV3::RawDVBuffer3::RawDVBuffer3(CVD::DV3::DV3ColourSpace, int, unsigned long long, int, bool, bool, CVD::ImageRef, float, CVD::ImageRef, int)'
VideoSource_Linux_DV.o: In function `VideoSource::VideoSource()':
VideoSource_Linux_DV.cc:(.text+0x47b): undefined reference to `CVD::DV3::RawDVBuffer3::RawDVBuffer3(CVD::DV3::DV3ColourSpace, int, unsigned long long, int, bool, bool, CVD::ImageRef, float, CVD::ImageRef, int)'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::frame_pending()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EE13frame_pendingEv[CVD::DVBuffer3<CVD::yuv411>::frame_pending()]+0x22): undefined reference to `CVD::DV3::RawDVBuffer3::frame_pending()'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::put_frame(CVD::VideoFrame<CVD::yuv411>*)':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EE9put_frameEPNS_10VideoFrameIS1_EE[CVD::DVBuffer3<CVD::yuv411>::put_frame(CVD::VideoFrame<CVD::yuv411>*)]+0x11): undefined reference to `CVD::DV3::RawDVBuffer3::put_frame(CVD::VideoFrame<unsigned char>*)'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::get_frame()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EE9get_frameEv[CVD::DVBuffer3<CVD::yuv411>::get_frame()]+0xc): undefined reference to `CVD::DV3::RawDVBuffer3::get_frame()'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EED0Ev[CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()]+0x3c): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o: In function `CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()':
VideoSource_Linux_DV.cc:(.text._ZN3CVD9DVBuffer3INS_6yuv411EED1Ev[CVD::DVBuffer3<CVD::yuv411>::~DVBuffer3()]+0x3c): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x24): undefined reference to `typeinfo for CVD::DV3::RawDVBuffer3'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x2c): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x30): undefined reference to `CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x38): undefined reference to `CVD::DV3::RawDVBuffer3::frame_pending()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x68): undefined reference to `typeinfo for CVD::DV3::RawDVBuffer3'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x70): undefined reference to `virtual thunk to CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x74): undefined reference to `virtual thunk to CVD::DV3::RawDVBuffer3::~RawDVBuffer3()'
VideoSource_Linux_DV.o:(.rodata._ZTCN3CVD9DVBuffer3INS_6yuv411EEE8_NS_3DV312RawDVBuffer3E[vtable for CVD::DVBuffer3<CVD::yuv411>]+0x7c): undefined reference to `virtual thunk to CVD::DV3::RawDVBuffer3::frame_pending()'
VideoSource_Linux_DV.o:(.rodata._ZTIN3CVD9DVBuffer3INS_6yuv411EEE[typeinfo for CVD::DVBuffer3<CVD::yuv411>]+0x18): undefined reference to `typeinfo for CVD::DV3::RawDVBuffer3'
collect2: ld returned 1 exit status
make: *** [PTAM] Erreur 1

Dernière modification par Piratecorp (Le 15/05/2010, à 00:10)

Hors ligne

#44 Le 15/05/2010, à 00:17

grim7reaper

Re : Problème de compilation de PTAMM

Je ferais des tests sur la compilation de PTAMM demain et je te tiens au courant.

Hors ligne

#45 Le 15/05/2010, à 00:20

Piratecorp

Re : Problème de compilation de PTAMM

ok merci beaucoup et bonne soirée

Dernière modification par Piratecorp (Le 15/05/2010, à 00:20)

Hors ligne

#46 Le 16/05/2010, à 22:22

grim7reaper

Re : Problème de compilation de PTAMM

Salut,

J'ai fait les tests et malheureusement la compilation de PTAMM ne fonctionne pas chez moi non plus.
J'ai exactement les mêmes erreurs que toi et je n'ai malheureusement aucune idée sur la manière les résoudre sad.

Hors ligne

#47 Le 22/05/2010, à 00:24

Piratecorp

Re : Problème de compilation de PTAMM

Bon tant pis. En tout cas merci beaucoup de ton aide ( désolé pour le temps de réponse...)

Hors ligne

#48 Le 07/06/2010, à 18:26

Piratecorp

Re : Problème de compilation de PTAMM

J'ai du nouveau en ce qui concerne PTAMM.

La cause des messages d'erreur visible au post 43, c'est que je n'avais pas activé le module raw1394 roll

La compilation se passe bien, mais quand je veux ouvrir CameraCalibrator, ça me met:

piratecorp@piratecorp-linux:~/Bureau/PTAMM (MODIFIÉ)/PTAM$ ./CameraCalibrator
./CameraCalibrator: error while loading shared libraries: libGVars3.so: cannot open shared object file: No such file or directory

Donc il refuse de s'ouvrir et c'est là que je bloque...

Hors ligne

#49 Le 07/06/2010, à 19:28

grim7reaper

Re : Problème de compilation de PTAMM

Salut,

Essaye d'ajouter la ligne

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/chemin/absolu/jusqu'a/libGVars3.so

dans le ~/.bashrc

Relance le shell et essaye de lancer le programme à nouveau.

Hors ligne

#50 Le 07/06/2010, à 19:58

Piratecorp

Re : Problème de compilation de PTAMM

Je sais pas trop où le caser dans le ~/.bashrc

Hors ligne