On Sun, Jan 8, 2012 at 1:49 PM, Clifford Yapp <cliffy...@gmail.com> wrote: > I can say that in my particular case, in order to be able to > successfully run compiled binaries from the build directory it is > necessary to have a broad variety of files in a sane position relative > to the compiled binary. So far as I know, the only way I can do this > in systems that like to have multiple binary output locations is to > copy the files in question to their proper locations ahead of time > *for each possible configuration*. Ouch. And even that may not quite > be enough, depending on the specifics of the layouts in question. >
if( SUPPORTS_PARALLEL_BUILD_TYPE ) # will be set in visual studio type projects... INSTALL( FILES ... DESTINATION ...${CMAKE_INSTALL_CONFIG_NAME} ... ) #CMAKE_INSTALL_CONFIG_NAME will be set for the build type you're doing. > My current work-around is to peg all of the output directories for all > the active configurations to the same directory - that negates much of > the benefit of multiple-configuration IDE options, but does at least > result in the expected run-from-build-directory behavior. (It works > for MSVC - we apparently have too many targets or something for > XCode...) You have to switch configs and re-build just like with Make > files, but that's the tradeoff currently required for being able to > run in the build directory. > > Cheers, > CY > > On Sun, Jan 8, 2012 at 4:08 PM, Michael Jackson > <mike.jack...@bluequartz.net> wrote: >> This is going to sound either harsh or "flame bait" but is written in all >> seriousness and with a lot of practical experience. >> >> When coming from a "makefile" based system like Unix and going to Visual >> Studio there are a few things you need to "give up on" (In my opinion). >> Visual Studio (And Xcode) both like to separate build types into >> Debug/Release/Others and put those items compiled into those subfolders. If >> you try to have your output files put anywhere else you are endlessly >> "fighting the system" and in the you will waste more time trying to fight >> the system rather then working on your code. Unless you have a very valid >> reason why your built items MUST be in the binary folder then I wouldn't >> really worry where they land. Let Visual Studio or Xcode put them where they >> want. You only need to realize that there _are_ Debug and Release subfolders >> and it is in there that you will find your executables and libraries. This >> is said with about 3 or 4 years of working with Linux, OS X, Windows, Visual >> Studio, Xcode, Makefiles. Don't fight the system, just adapt to it and move >> on. >> >> I guess that was harsh. Sorry. Having said that I am very interested in >> knowing the specific reasons why you need your executables in the >> CMAKE_BINARY_DIRECTORY and can not have them in a subfolder. >> -- >> Mike Jackson <www.bluequartz.net> > -- > > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Follow this link to subscribe/unsubscribe: > http://www.cmake.org/mailman/listinfo/cmake -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake