-------- Original-Nachricht -------- Datum: Fri, 22 Sep 2006 09:18:05 +0200 (CEST) Von: "Arjen Markus" <[EMAIL PROTECTED]> An: cmake@cmake.org Betreff: [CMake] The Windows equivalent of RPATH?
> Hello, > > in the PLplot project we have run into an issue that is peculiar > to Windows: > > When you build the various libraries that PLplot consists of, they > end up in different directories (at least before installation). > On UNIX and Linux these directories are taken care of via the > RPATH mechanism, so that the example/test programs "know" where > to find them, without actual installation. > > On installation again the RPATH mechanism makes sure the > directories where the shared libraries live are known. > > On Windows, however, there is as far as I know, no such mechanism. > We need to rely on the search path for the DLLs to be found. And > currently that means that we need to copy the DLLs into the directories > holding the example/test programs (there are different directories > for all the programming languages we support). Otherwise the > example/test programs can not be run. > > My question is: what is the best way to solve this problem? > > I can see a couple of solutions: > - Copy the various DLLs via a custom target - now we do it manually > - Expand the path just before running the example/test programs > - (A brute force method would be to copy the DLLs into the system > directory, but that is not acceptable to many people: pollution > of the system directory, on many Windows machines this is not > even allowed without special permissions etc.) Two options: you can set EXECUTABLE_OUTPUT_PATH and LIBRARY_OUTPUT_PATH to the same directory, so they will end up in the same directory. Or you create wrapper bat-files which set PATH appropriatly. Bye Alex -- Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake