I have succeeded in linking itpp statically to libfftw3.a. I had to do this
because I use itpp in a mex file in MATLAB and there were fftw library version
clashes (the internal MATLAB fftw and the system one). So far so good.
But now I would like to link my mex file against the static libitpp.a, so that
I don't need the shared libitpp around. When I try to do this using
g++ -o ldpcc ldpcc.cc /usr/local/lib/libitpp.a
I get this:
ld: warning: ignoring file /usr/local/lib/libitpp.a, file was built for
archive which is not the architecture being linked (x86_64)
and a lot of Undefined symbols messages.
Why would the static library be built for the wrong architecture (the shared
variant works, and I built it from the same sources)?
Best,
Stefan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I have succeeded in linking itpp statically to libfftw3.a. I had to do this
because I use itpp in a mex file in MATLAB and there were fftw library version
clashes (the internal MATLAB fftw and the system one). So far so good.
But now I would like to link my mex file against the static libitpp.a, so that
I don't need the shared libitpp around. When I try to do this using
g++ -o ldpcc ldpcc.cc /usr/local/lib/libitpp.a
I get this:
ld: warning: ignoring file /usr/local/lib/libitpp.a, file was built for
archive which is not the architecture being linked (x86_64)
and a lot of Undefined symbols messages.
Why would the static library be built for the wrong architecture (the shared
variant works, and I built it from the same sources)?
Best,
Stefan