Matus,
thank you for your response and for pointing out the arch-independence
of the includes.
"uname -a" gives (I hope that answers your question; if not, please let
me know):
Linux myhost 3.13.0-rc8 #1 SMP Sun Jan 26 14:27:15 CET 2014 x86_64
Intel(R) Core(TM)2 Duo CPU E6850 @ 3.00GHz GenuineIntel GNU/Linux
The system was built according to "Cross-Compiled Linux from scratch",
x86_64 (http://cross-lfs.org/view/svn/x86_64/).
There are "/lib" and "/usr/lib" directories holding the 32bit-libraries
as well as "/lib64" and "/usr/lib64" directories holding the
64bit-libraries. These are no links.
There is a tiny "/usr/bin/multiarch_wrapper" executable as well which
will execute either 32bit or 64bit programs based on the |USE_ARCH|
varia|ble. According to
http://cross-lfs.org/view/svn/x86_64/final-system/multiarch_wrapper.html
t|he multiarch-wrapper is used to wrap certain binaries that have
hardcoded paths to libraries or are architecture specific.
Although I do not understand the specifics I can attest that I have been
using this architecture for several years and never experienced similar
issues. As I understand it: For example, there are three binaries for
"xml2-config" (/usr/bin/xml2-config, /usr/bin/xml2-config-32,
/usr/bin/xml2-config-64), with "/usr/bin/xml2-config" being just a
symlink to "/usr/bin/multiarch_wrapper". So, if "/usr/bin/xml2-config"
is executed, the multiarch-wrapper gets executed and decides to execute
either the 32bit or the 64bit binary depending on the contents of the
environment variable "USE_ARCH=32". If "USE_ARCH" holds "32" then the
32bit executable is run, otherwise the 64bit executable.
Regards
Alexander
Am 09.05.2014 10:25, schrieb Matus UHLAR - fantomas:
On 08.05.14 22:52, Alexander Tampermeier wrote:
So, I got into the same "error adding symbols"-trouble as before with
libxml2, now with libltdl. First I thought, that this might be a
general issue with my libraries. But then I tried to recompile
several packages including php (which also uses libxml2) and
everything compiled perfectly. This makes me believe that this issue
might not be related to my system only.
Apparently clamav compilation detects wrong system architecture.
What is the current kernel arch running on, and where do /lib and
/usr/lib
point to?
But what definitely is strange:
"xml2-config-32 --libs" and "xml2-config-64 --libs" both bring the
same result: "-lxml2 -lz -lm -ldl"
"./xml2-config-32 --cflags" and "./xml2-config-64 --cflags" both
bring the same result: "-I/usr/include/libxml2"
I don't find this strange. You need the same includes
(arch-independent) and
the same libraries (although from different directories).
_______________________________________________
Help us build a comprehensive ClamAV guide:
https://github.com/vrtadmin/clamav-faq
http://www.clamav.net/support/ml