Re: [eigen] Link error: multiple definition of ei_p*** functions

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


arf... it's going to be caused by my recent commit there, sorry. fixing it ASAP.

2010/6/16 Manoj Rajagopalan <rmanoj@xxxxxxxxx>:
> Hi,
>
>   I just began to notice these link errors in the "release" version of my code which I compile with SSE2 - multiple definitions of the
> packet mathfunctions seem to be present in different .o files which is causing linker death. I just refreshed my working copy
> before the build. Would someone know why this is happening? Perhaps some "inline" keyword is missing?
>
>   My g++ command-line flags are as follows:
>
> -Wall -Werror -march=pentium4 -g0 -O3 -msse2 -mfpmath=sse
> -ftree-vectorize -fgcse-sm -fgcse-las -fgcse-after-reload -fipa-pta
> -ftree-loop-linear -ftree-loop-im -ftree-loop-ivcanon -ftracer -funroll-loops
> -fvariable-expansion-in-unroller -fprefetch-loop-arrays -fno-math-errno
> -ffinite-math-only -fno-trapping-math -fno-signaling-nans
> -DEIGEN_NO_AUTOMATIC_RESIZING
>
>
>   A linker error log snippet is:
>
> kmesh.o: In function `float __vector Eigen::ei_psqrt<float __vector>(float __vector const&)':
> kmesh.cpp:(.text+0x60): multiple definition of `float __vector Eigen::ei_psqrt<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x60): first defined here
> kmesh.o: In function `float __vector Eigen::ei_pcos<float __vector>(float __vector const&)':
> kmesh.cpp:(.text+0xae): multiple definition of `float __vector Eigen::ei_pcos<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x33ee): first defined here
> kmesh.o: In function `float __vector Eigen::ei_psin<float __vector>(float __vector const&)':
> kmesh.cpp:(.text+0x20e): multiple definition of `float __vector Eigen::ei_psin<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x354e): first defined here
> kmesh.o: In function `float __vector Eigen::ei_pexp<float __vector>(float __vector const&)':
> kmesh.cpp:(.text+0x38c): multiple definition of `float __vector Eigen::ei_pexp<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x36cc): first defined here
> kmesh.o: In function `float __vector Eigen::ei_plog<float __vector>(float __vector const&)':
> kmesh.cpp:(.text+0x4a2): multiple definition of `float __vector Eigen::ei_plog<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x37e2): first defined here
> offdiagfunctors.o: In function `float __vector Eigen::ei_psqrt<float __vector>(float __vector const&)':
> offdiagfunctors.cpp:(.text+0x3e0): multiple definition of `float __vector Eigen::ei_psqrt<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x60): first defined here
> offdiagfunctors.o: In function `float __vector Eigen::ei_plog<float __vector>(float __vector const&)':
> offdiagfunctors.cpp:(.text+0xb24): multiple definition of `float __vector Eigen::ei_plog<float __vector>(float __vector const&)'
> iv.o:iv.cpp:(.text+0x37e2): first defined here
>
>
> thanks,
> Manoj
>
>
>
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/