Dizzy wrote:
On Thursday 13 September 2007 15:08:30 you wrote:
Thinking out of the box, here is one way I solved this problem. Say
your first project builds a library Foo. Then install that library in
what ever location you want to install it. Then set an environment
variable "FOO_ROOT" that points to the top level install directory.
So typically you would install things in /usr/local/ (on a unix
machine), then "make install" should put libFoo.a in the "lib"
directory in /usr/local. That was all part 1.
<snip>
This type of setup will solve the "use absolute paths" where possible
that Bill Suggested. Not sure if it will solve the linking problem
though..

Hope that helps explain some things.

What you are sugesting solves the problem for installable libraries (which were installed in a previous to "cmake time", the time where FIND_LIBRARY() runs). Problem with "convenience libraries" of a project is that they have not been built already when cmake runs for that project (so FIND_LIBRARY cannot find them). Using full paths to them (by using of CMAKE_BUILD_DIR and such variables) seems unportable (or maybe I miss something).
Full paths by the use of PROJECT_SOURCE_DIR and PROJECT_BINARY_DIR and such
variables is very portable. If Cmake is building the library, then you only need to use the target
name to find it.

-Bill

_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to