[CMake] RUNTIME_OUTPUT_DIRECTORY_<CONFIG> has no effect

Martin Magnusson martin at eyra.se
Fri Jan 7 07:08:44 EST 2011


2011-01-07 12:07, Nizar Khalifa Sallem skrev:
> At Fri, 07 Jan 2011 11:11:18 +0100,
> Martin Magnusson wrote:
>>
>> I'm having trouble setting the runtime output directory, especially with
>> multiple configurations.
>>
>> I'm using CMake 2.8 on Ubuntu 10.04, with gcc.
>>
>> My current root CMakeLists.txt contains
>> SET( EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin )
>> which works, although the EXECUTABLE_OUTPUT_PATH is deprecated.
>>
>> If I read the documentation correctly, the proper way of setting the
>> output directory now would be
>> SET_PROPERTY( GLOBAL PROPERTY
>>   RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin
>> )
>> but that doesn't work for me. With that setting, the binary is produced
>> in the source directory, just as if I hadn't specified an output
>> directory at all.
> Hi,
> Actually you can do something like this:
> set_property(GLOBAL TARGET target1, target2, ...
> PROPERTY RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO
> ${PROJECT_BINARY_DIR}/bin/relwithdebinfo)

I tried that just now, but then CMake exits with the message

CMake Error at CMakeLists.txt:8 (SET_PROPERTY):
  set_property given names for GLOBAL scope.



More information about the CMake mailing list