On 9 Mar 2012, David C. Rankin said:
On 03/08/2012 06:56 PM, Darrell Anderson wrote:
I can't answer your question to add a library. But check your build log output and cmake cache:
-- Looking for X11/extensions/shape.h -- Looking for X11/extensions/shape.h - found
//Have include X11/extensions/shape.h HAVE_X11_EXTENSIONS_SHAPE_H:INTERNAL=1
Darrell
Yep, -- it find the header fine, but with gcc >=4.6.2 you must explicitly pass the library to the linker or it will refuse to use it...
This is not a GCC-specific thing: it's a local distro patch to GCC's specfiles forcing the addition of -Wl,--no-copy-dt-needed-entries to all link lines (or -Wl,--no-add-needed on older binutils, which means the same thing but is a confusing option name so is deprecated). This is a good idea in the longer run, even though it does break things now.
(A lot of distros have this patch, but not all. Upstream GCC does not have it.)
I'm using gcc 4.6.3-1 :(
This is, of course, a local distro version. What patches are applied depends on what distro you're using.