On Thu, May 07, 2009 at 10:36:37AM -0700, Alan Irwin wrote: > On 2009-05-07 10:53+0100 Andrew Ross wrote: > >> >> Further to my previous report, this only seems to occur if you explicitly >> set the cmake build type, e.g. with -DCMAKE_BUILD_TYPE=Debug. This is >> probably why no-one has reported it before. Without this option the Qt >> library >> dependencies contain no type tags and so the problem does not occur. Not sure >> whether you would classify this as a cmake problem or a plplot problem. >> Either way it is irritating if you are trying to debug plplot problems. >> >> Andrew >> >> On Thu, May 07, 2009 at 10:11:10AM +0100, Andrew Ross wrote: >>> >>> I think I have found a bug with our current cmake build system. For link >>> flags cmake now (with cmake 2.6.3 at least) adds a tag describing which >>> type of build this link flag is for. E.g. >>> plpotf77cd_LIB_DEPENDS:STATIC=general;plplotd; >>> >>> On the whole we seem to handle the general tag correctly, although I can't >>> see where this happens in plplot. >>> >>> For the qt drivers we get different libraries depending on the build type, >>> e.g. qt_LIB_DEPENDS contains >>> ;debug;/usr/lib/libQtSvg.so;optimized;/usr/lib/libQtSvg; >>> >>> This doesn't seem to cause any problems for the build, but if you look in >>> pkgcfg/plplotd-qt.pc then debug and optimized appear in the libs list. This >>> causes a build of the examples in the install tree to fail for anything >>> which uses pkg-config plplotd-qt. Normally this does not show up >>> (plplotd-qt.pc is not used). The problem becomes much more serious if you >>> try and do a build with ENABLE_DYNDRIVERS=OFF, because then all the driver >>> library dependencies end up in plplotd.pc, and so any plplot build using >>> pkg-config will fail. >>> >>> Alan, I don't fully understand all the cmake logic involved here. Can you >>> replicate this problem, and can you check to see if it is a problem with >>> our code. I can't see why general gets stripped out, but not optimized or >>> debug. >>> > > Actually, tags leaking into plplotd-qt.pc should cause the build of > examples/c++/qt_example to fail. I wonder why you didn't see that?
Sorry - I have seen this build fail, presumably for just this reason. > If you exclude qt, does -DCMAKE_BUILD_TYPE=Debug actually work? There was a > very long standing Linux bug in that (some needed flags were empty) which I > reported. IIRC, it was just last year that Bill Hoffman still didn't have a > fix. It would be great if that actually worked, but I haven't been using it > because I didn't trust this method. Instead, I have always set the CC, CXX, > and FC environment variables with appropriate compilation flags. Apart from the pkg-config issue it seems to work fine. Everything builds and I get a library with debug information in which can be used by gdb / valgrind. > I do hope you answer those questions to satisfy my curiosity, but I > do realize those are beside the main point which is > tags should never leak into plplotd-qt.pc. I will take a look at that. Andrew ------------------------------------------------------------------------------ The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your production scanning environment may not be a perfect world - but thanks to Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 Series Scanner you'll get full speed at 300 dpi even with all image processing features enabled. http://p.sf.net/sfu/kodak-com _______________________________________________ Plplot-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/plplot-devel
