Re: [eigen] Link error: multiple definition of ei_p*** functions |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] Link error: multiple definition of ei_p*** functions
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Wed, 16 Jun 2010 18:11:01 -0400
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=+lnwN4Dl9i4mOdPz+f5zmImOpWJFhhXeMrvNUH4MaUQ=; b=QRpTbueUYoj+fKsSK8IhxHkdh11mCJqKfg1qoAKYpo9oYy7uRUsXsiBxyed8QeAzN8 J+ZaBHzPIZ3ccYnAuhr2yqEVSciyVwS+d4w5KkjEEXVudGNvyquAWIMsrxkoaMckeRPM Pf/2gi1Stk229odTetsHSl0ovEtkJh+pdVhYI=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=kXOX19qeyMdh3PjZ63/p2w15D2oJMI+tZ/s7CSqGTW2h7etrmST7UryMhx0ArDPrLy IAubsaycVjkPR0NRhTlQGBwYnjdzfoaFFr8OHtQijifsWTJrj2p7hhIvXogc6v/1QQzW RwSbbZXnlG7GkJ+KQuTabEgvU6Uv8dqaL7HMA=
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
>
>
>
>