[CMake] Executing python though CMake and linking libraries

Konstantin Tokarev annulen at yandex.ru
Mon Nov 28 13:56:04 EST 2016



28.11.2016, 21:53, "Matthew Woehlke" <mwoehlke.floss at gmail.com>:
> On 2016-11-25 04:04, Kit Chambers wrote:
>>  I have a Cmake custom target which runs a python script:
>>
>>  add_custom_target(run
>>                   COMMAND python myscript.py
>>                    )
>>
>>  ...
>>
>>  To me it looks like my LD_LIBRARY_PATH and DYLD_LIBRARY_PATH are not being passed through CMake to Python so it cannot find all the necessary sub libraries. However, i cannot work out how to pass this information through.
>
> As written, your custom target will be run with whatever environment
> your build tool decides to use. *Probably* that will be the environment
> when you actually run the build tool (make, ninja, etc.), but it's
> possible some build too might monkey with the environment in which it
> runs build commands. Also, requiring people building your software to
> modify their local environment is probably not ideal.
>
> You probably want to wrap your custom target's command with
> `${CMAKE_COMMAND} -E env ...` to ensure it gets the necessary
> environment. (Also, you should probably use `${PYTHON_EXECUTABLE}`
> instead of `python`, and, similarly, note `${CMAKE_COMMAND}` instead of
> `cmake`.)
>
> (Personally, I wouldn't mind seeing CMake learn an `ENVIRONMENT` option
> to add_custom_command / add_custom_target that would set up this
> wrapping automatically.)

+1

>
> --
> Matthew
>
> --
>
> Powered by www.kitware.com
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware offers various services to support the CMake community. For more information on each offering, please visit:
>
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake

-- 
Regards,
Konstantin


More information about the CMake mailing list