From: Timothy C. <Tim...@va...> - 2005-12-01 19:10:03
|
I have having a hard time getting the vil fft to compile. I have included: #include <vil/algo/vil_fft.txx> #include <vil/algo/vil_fft.h> #include <vnl/algo/vnl_fft.h> #include <vnl/algo/vnl_fft.cxx> #include <vnl/algo/vnl_fft_prime_factors.h> #include <vnl/algo/vnl_fft_prime_factors.txx> #include <vnl/algo/vnl_fft_base.h> #include <vnl/algo/vnl_fft_base.txx> But it is saying that the vnl_fft_gpfa and vnl_fft_setgpfa are already defined. If I don't include these then I get a slew of unresolved external symbol errors. I am using Microsoft VC.net. source.obj : error LNK2005: "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) already defined in lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_setgpfa(double *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) already defined in lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) already defined in lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_gpfa(double *,double *,double const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) already defined in lab5.obj lab5.obj : error LNK2019: unresolved external symbol _setgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) source.obj : error LNK2019: unresolved external symbol _setgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) lab5.obj : error LNK2019: unresolved external symbol _dsetgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(double *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) source.obj : error LNK2019: unresolved external symbol _dsetgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(double *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) lab5.obj : error LNK2019: unresolved external symbol _gpfa_ referenced in function "void __cdecl vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) source.obj : error LNK2019: unresolved external symbol _gpfa_ referenced in function "void __cdecl vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) lab5.obj : error LNK2019: unresolved external symbol _dgpfa_ referenced in function "void __cdecl vnl_fft_gpfa(double *,double *,double const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) source.obj : error LNK2019: unresolved external symbol _dgpfa_ referenced in function "void __cdecl vnl_fft_gpfa(double *,double *,double const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) Debug/Lab5.exe : fatal error LNK1120: 4 unresolved externals |
From: Timothy C. <Tim...@va...> - 2005-12-01 16:43:51
|
I have having a hard time getting the vil fft to compile. I have included: #include <vil/algo/vil_fft.txx> #include <vil/algo/vil_fft.h> #include <vnl/algo/vnl_fft.h> #include <vnl/algo/vnl_fft.cxx> #include <vnl/algo/vnl_fft_prime_factors.h> #include <vnl/algo/vnl_fft_prime_factors.txx> #include <vnl/algo/vnl_fft_base.h> #include <vnl/algo/vnl_fft_base.txx> But it is saying that the vnl_fft_gpfa and vnl_fft_setgpfa are already defined. If I don't include these then I get a slew of unresolved external symbol errors. I am using Microsoft VC.net. source.obj : error LNK2005: "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) already defined in lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_setgpfa(double *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) already defined in lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) already defined in lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_gpfa(double *,double *,double const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) already defined in lab5.obj lab5.obj : error LNK2019: unresolved external symbol _setgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) source.obj : error LNK2019: unresolved external symbol _setgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) lab5.obj : error LNK2019: unresolved external symbol _dsetgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(double *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) source.obj : error LNK2019: unresolved external symbol _dsetgpfa_ referenced in function "void __cdecl vnl_fft_setgpfa(double *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) lab5.obj : error LNK2019: unresolved external symbol _gpfa_ referenced in function "void __cdecl vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) source.obj : error LNK2019: unresolved external symbol _gpfa_ referenced in function "void __cdecl vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) lab5.obj : error LNK2019: unresolved external symbol _dgpfa_ referenced in function "void __cdecl vnl_fft_gpfa(double *,double *,double const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) source.obj : error LNK2019: unresolved external symbol _dgpfa_ referenced in function "void __cdecl vnl_fft_gpfa(double *,double *,double const *,int,int,int,int,int,int const * const,int *)" (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) Debug/Lab5.exe : fatal error LNK1120: 4 unresolved externals |
From: Ian S. <ian...@st...> - 2005-12-01 19:33:36
|
Timothy Chan wrote: > I have having a hard time getting the vil fft to compile. I have included: It isn't clear what you are trying to do. Are you getting an error while building VXL, or are you trying to use vil_fft in your own program? The error messages don't appear to be from building VXL, despite your description above. If you are just trying to use vil_fft, in your own client code, then you don't need to include anything other that vil_fft.h (well maybe and other bits of vil to load and save the images). The reason you are getting multiple definition link errors is that you have included .txx and .cxx files that are not meant to be included by VXL clients. You can see how to write a program using vil_fft from $VXLSRC\core\vil\examples\example_complex.cxx If you are just trying to build vil_fft without building the rest of VXL, then we don't encourage that. Please ask a competent local programmer for help extracting and reassembling the necessary bits of VXL. Ian. > > #include <vil/algo/vil_fft.txx> > #include <vil/algo/vil_fft.h> > #include <vnl/algo/vnl_fft.h> > #include <vnl/algo/vnl_fft.cxx> > #include <vnl/algo/vnl_fft_prime_factors.h> > #include <vnl/algo/vnl_fft_prime_factors.txx> > #include <vnl/algo/vnl_fft_base.h> > #include <vnl/algo/vnl_fft_base.txx> > > But it is saying that the vnl_fft_gpfa and vnl_fft_setgpfa are already > defined. If I don't include these then I get a slew of unresolved external > symbol errors. I am using Microsoft VC.net. > > > > > source.obj : error LNK2005: "void __cdecl vnl_fft_setgpfa(float *,int,int * > const,int *)" (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) already defined in > lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_setgpfa(double > *,int,int * const,int *)" (?vnl_fft_setgpfa@@YAXPANHQAHPAH@Z) already > defined in lab5.obj source.obj : error LNK2005: "void __cdecl > vnl_fft_gpfa(float *,float *,float const *,int,int,int,int,int,int const * > const,int *)" (?vnl_fft_gpfa@@YAXPAM0PBMHHHHHQBHPAH@Z) already defined in > lab5.obj source.obj : error LNK2005: "void __cdecl vnl_fft_gpfa(double > *,double *,double const *,int,int,int,int,int,int const * const,int *)" > (?vnl_fft_gpfa@@YAXPAN0PBNHHHHHQBHPAH@Z) already defined in lab5.obj > lab5.obj : error LNK2019: unresolved external symbol _setgpfa_ referenced in > function "void __cdecl vnl_fft_setgpfa(float *,int,int * const,int *)" > (?vnl_fft_setgpfa@@YAXPAMHQAHPAH@Z) > <snip> |