From: BRIDGE HUANG <bridge.h@gm...>  20051009 08:32:03
Attachments:
Message as HTML

I am trying to cross compile vxl for arm9 platform. The compiler is cross gcc 3.4.4, os  Redhat linux 9, and kernel 2.4.1814. The outputs when building vnl_math.o of ARMVERSION are: /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx: In function `bool vnl_math_isfinite(long double)': /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx:198: error: `finitel' undeclared (first use this function) /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx:198: error: (Each undeclared identifier is reported only once for each function it appears in.) /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx: In function `bool vnl_math_isinf(long double)': /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx:225: error: `finitel' undeclared (first use this function) make[5]: *** [vnl_math.o] Error 1 make[4]: *** [default_target] Error 2 make[3]: *** [default_target_vnl] Error 2 make[2]: *** [default_target] Error 2 make[1]: *** [default_target_core] Error 2 make: *** [default_target] Error 2 Hope for any help or advices, Thanks! 
From: Amitha Perera <perera@cs...>  20051010 14:45:01

On Sun 09 Oct 2005, BRIDGE HUANG wrote: > I am trying to cross compile vxl for arm9 platform. > The compiler is cross gcc 3.4.4, os  Redhat linux 9, and kernel 2.4.1814. > The outputs when building vnl_math.o of ARMVERSION are: > /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx: In function > `bool vnl_math_isfinite(long double)': > /home/ARMDevelop/vxl1.2.0/vxlarmsrc/core/vnl/vnl_math.cxx:198: error: > `finitel' undeclared (first use this function) [...] My guess is that the autogenerated "system and compiler capabilities" are for the host platform instead of the target platform. Are you using CMake to compile? As I understand it, CMake currently does not support crosscompiling. As part of the configuration process, vxl determines the capabilities of your compiler and of your system libraries. The results of these tests are stored in two sets of files in your *binary* tree: 1. vcl/vcl_config_compiler.h, vcl_config_headers.h, vcl_config_manual.h 2. core/vxl_config.h You can edit these header files by hand to match the capabilities of the target system. For the errors you mentioned, have a look at the various *FINITE* settings in core/vxl_config.h. Amitha. 
From: Osama T. Masoud <masoud@cs...>  20051010 19:25:20

vgl has an elegant alogithm that computes the point on the conic closest to a given point. Anyone knows of a reference to that (paper/book)? algo/vgl_homg_operators_2d.txx: //: Return the point on the conic closest to the given point template <class T> vgl_homg_point_2d<T> vgl_homg_operators_2d<T>::closest_point(vgl_conic<T> const& c, vgl_homg_point_2d<T> const& pt) Thanks, osama 
From: Peter Vanroose <peter_vanroose@ya...>  20051012 15:58:22

> vgl has an elegant alogithm that computes the point on the conic > closest to a given point. > Anyone knows of a reference to that (paper/book)? As the insource documentation states, this is standard plane projective geometry: "The nearest point must have a polar line which is orthogonal to its connection line with the given point; all points with this property form a conic." You can find theory and applications of polar points and lines in any text book on projective geometry. The actual implementation in vgl was not borrowed from any such text book: I just implemented it based on the ideas of polar line/point, and using the algorithm to intersect two conics. (By the way, that intersection algorithm is also a straightforward consequence of standard projective geometry, viz. bundles of conics.)  Peter. 
From: Osama T. Masoud <masoud@cs...>  20051022 19:24:07

Any particular reason the intersection of two conics operator returns only real solutions? It seems limiting conisering that a lot of the projective geometry algorithms depend on complex solutions (e.g., every two circles intersect at the circular points [1 i 0] and [1 i 0]). Since the class is templated, one idea would be that if the return type is vcl_complex, complex solutions are returned as well. osama On Wed, 12 Oct 2005, Peter Vanroose wrote: > > vgl has an elegant alogithm that computes the point on the conic > > closest to a given point. > > Anyone knows of a reference to that (paper/book)? > > As the insource documentation states, this is standard plane > projective geometry: > > "The nearest point must have a polar line which is orthogonal to its > connection line with the given point; all points with this property > form a conic." > > You can find theory and applications of polar points and lines in any > text book on projective geometry. > The actual implementation in vgl was not borrowed from any such text > book: I just implemented it based on the ideas of polar line/point, and > using the algorithm to intersect two conics. > (By the way, that intersection algorithm is also a straightforward > consequence of standard projective geometry, viz. bundles of conics.) > >  Peter. > 
From: Peter Vanroose <peter_vanroose@ya...>  20051023 13:23:41

> Since the class is templated, one idea would be that if the > return type is vcl_complex, complex solutions are returned as well. Good idea!  Peter. 