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

Reply via email to