I've just tried to compile HarfBuzz as a 32bit library on my 64bit box for testing purposes. By default, this library uses .pc files (for pkg-config) to find libraries. One of them is zlib. However, openSuSE's 32bit package of zlib doesn't come with a proper 32bit `zlib.pc' file (to be installed into `/usr/lib/pkgconfig'); and it seems that basically all other 32bit library packages don't provide .pc files either...
Bug? Intention?
At first, I thought it a bug. But then reconsidered, ask yourself the following: when you have two *.pc files, one in /usr/lib/pkgconfig and another in /usr/lib64/pkgconfig, which file would PKG_CHECK_MODULE() macro refer to?
Yes, I've just now come to the same conclusion: pkg-config itself is buggy, since it doesn't support multiple architectures at the same time. For example, pkg-config 0.28 as delivered by 64bit openSuSE searches first /usr/local/lib64, then /usr/local/lib (instead of trying /usr/lib64 before)... HOWEVER: I still think that 32bit .pc files should be provided, using a cross-compiling approach so that a call like configure --host=i686-linux-gnu \ CFLAGS=-m32 \ CXXFLAGS=-m32 \ LDFLAGS=-m32 works. What about using a directory for 32bit .pc files that contains `i686-linux-gnu' in the path? At the same time, a `pkg-config-32bit' should be created that provides a `pkg-config-i686-linux-gnu' binary with properly adjusted paths for finding 32bit .pc files first. Werner -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org