From: kanschat Date: Tue, 3 Sep 2013 16:38:49 +0000 (+0000) Subject: Comment on shadowed libraries X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d30a409c2d8551d5ad664a7cc35be5ff97e6f4d8;p=dealii-svn.git Comment on shadowed libraries git-svn-id: https://svn.dealii.org/trunk@30570 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/doc/development/cmake.html b/deal.II/doc/development/cmake.html index 2683cc1d7e..86c663bfb9 100644 --- a/deal.II/doc/development/cmake.html +++ b/deal.II/doc/development/cmake.html @@ -411,6 +411,33 @@ -NOTFOUND and may be set by hand.

+

Library conflicts

+

Caveat: if you have a set of standard libraries in the default + location, say /usr/lib and a set of + private versions of the same libraries, for instance because you + need different revisions sometimes, in your own library directory, + you may receive an error message of the form:

+ +
+CMake Warning at source/CMakeLists.txt:65 (ADD_LIBRARY):
+  Cannot generate a safe runtime search path for target deal_II.g because
+  files in some directories may conflict with libraries in implicit
+  directories:
+
+    runtime library [libtbb.so.2] in /usr/lib may be hidden by files in:
+      /my/private/lib
+
+  Some of these libraries may not be found correctly.
+
+ +

This is not a problem of CMake or deal.II, but rather a general + Linux problem. In order to fix this, you have two options:

+
    +
  1. Choose all libraries either from your private directory or from + the standard one.
  2. +
  3. Install all your private library versions in different directories.
  4. +
+

Manual override

Warning: Do not do this unless absolutely necessary!