FIAS . Impressum . Privacy

Problem with compiling under different systems/configurations.

Matthias Kretz [please enable javascript to see the address]
Wed Sep 5 08:40:40 CEST 2012


On Tuesday 04 September 2012 23:59:08 Sven Langkamp wrote:
> I have written a short program using vc. Code can be found here:
> http://depot.tu-dortmund.de/get/2y3wq
> The code builds and runs under my system using vc from git, but someone
> else got the following error with vc 0.61: http://paste.kde.org/544046/

Ah yeah, sorry about that undescriptive error message. The issue is that 
IndexesFromZero only works for integer types. So far I only required 
IndexesFromZero with floating point types only for my unit tests, in which 
case I simply casted it from its IndexType, i.e.

float_v i(float_v::IndexType::IndexesFromZero());

If you can make a case for having the IndexesFromZero constant available for 
floating point types I can of course add it.
 
> I tried to integrate my code into Krita. Looked like this:
> http://paste.kde.org/544178/
> And got the flollwing error:
> Linking CXX shared library ../../../../lib/libkritalibbrush.so
> CMakeFiles/kritalibbrush.dir/kis_auto_brush.cpp.o: In function
> `runLibraryAbiCheck':
> /usr/local/include/Vc/version.h:44: undefined reference to
> `Vc::checkLibraryAbi(unsigned int, unsigned int, char const*)'
> CMakeFiles/kritalibbrush.dir/kis_auto_brush.cpp.o: In function
> `_IndexesFromZero<float, 4>':
> /usr/local/include/Vc/sse/vector.tcc:33: undefined reference to
> `Vc::SSE::_IndexesFromZero4'

So you're using Vc master, yes? I see that float_v::IndexesFromZero() compiles 
there - uh, dangerous. Because it reinterpret_casts the integers 0,1,2,3 to 
float. That'll be denormal numbers.

The actual error you get is that it can't find the symbols in libVc.a. Did you 
forget to link to libVc?

-- 
Dipl.-Phys. Matthias Kretz
http://compeng.uni-frankfurt.de/?mkretz

SIMD easy and portable: http://compeng.uni-frankfurt.de/?vc



More information about the Vc mailing list
FIAS . Impressum . Privacy