A newbie question about Python/KDL

Hello,

I've just discovered Orocos and I'm very interestied in using KDL, more
specifically KDL python bindings.
I've tried to have it work on my PC (windows 7 - 64). Unfortunately I'm a
total newbie and I didn't succeed for the moment.

My configuration : Win 7-64 PC, Python 2.7, SIP 4.16.2 and Eigen 3
installed, MinGW working correctly.

Using instructions given in kdl/installation-manual website, I compiled
orocos-kdl without problem. Ran make + make install, got copies of
orocos_kdl in c:\Program Files (x86)/Orocos-KDL.
Now I'd like to get python bindings.

What I did :
- created a build directory in python_orocos_kdl
- launched 'cmake_gui' (windows) then 'configure' : here are the logs

The C compiler identification is GNU 4.8.1
The CXX compiler identification is GNU 4.8.1
Check for working C compiler: C:/MinGW/bin/gcc.exe
Check for working C compiler: C:/MinGW/bin/gcc.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler: C:/MinGW/bin/g++.exe
Check for working CXX compiler: C:/MinGW/bin/g++.exe -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Found PkgConfig: C:/Windows/pkg-config.exe (found version "0.28")
Looking for KDL in: C:/Program Files (x86)/Orocos-KDL
checking for one of the modules 'orocos-kdl'
CMake Warning at CMakeLists.txt:10 (find_package):
Found package configuration file:

C:/GIT-orocos/orocos_kinematics_dynamics/orocos_kdl/build/orocos-kdl-config.cmake

but it set Orocos-KDL_FOUND to FALSE so package "Orocos-KDL" is considered
to be NOT FOUND.

Found PythonInterp: C:/Python27/python.exe (found version "2.7.8")
Found PythonLibs: C:/Python27/libs/libpython27.a (found version "2.7.8")
Found SIP version: 4.16.2
Configuring done

I thought there was a problem with the identification of the directory
containing the newly compiled Orocos-kdl files so I added

//The directory containing a CMake configuration file for Orocos-KDL.
Orocos-KDL_DIR:PATH=C:/Program Files (x86)/Orocos-KDL/
Orocos-KDL_INCLUDE_DIRS:PATH=C:/Program Files (x86)/Orocos-KDL/include
Orocos-KDL_LIBRARY_DIRS:PATH=C:/Program Files (x86)/Orocos-KDL/lib

in python_orocos_kdl\build\CmakeCache.txt to overwrite possibly erroneous
KDL files.

Then I ran (in command line prompt)

c:\GIT-orocos\orocos_kinematics_dynamics\python_orocos_kdl\build>cmake ..
Looking for KDL in: C:/Program Files (x86)/Orocos-KDL

Ruben Smits's picture

A newbie question about Python/KDL

Hello Jonathan,

On Wed, Jul 16, 2014 at 3:28 PM, <jonathan [dot] savin [..] ...> wrote:

> Hello,
>
> I've just discovered Orocos and I'm very interestied in using KDL, more
> specifically KDL python bindings.
> I've tried to have it work on my PC (windows 7 - 64). Unfortunately I'm a
> total newbie and I didn't succeed for the moment.
>
>
AFAIK you are the first one that tries to compile the python bindings on
Windows. So it does not suprise me that it does not work out of the box.

> My configuration : Win 7-64 PC, Python 2.7, SIP 4.16.2 and Eigen 3
> installed, MinGW working correctly.
>

Can you tell us which version of cmake you are using? And which version of
Orocos KDL?

>
> Using instructions given in kdl/installation-manual website, I compiled
> orocos-kdl without problem. Ran make + make install, got copies of
> orocos_kdl in c:\Program Files (x86)/Orocos-KDL.
> Now I'd like to get python bindings.
>
> What I did :
> - created a build directory in python_orocos_kdl
> - launched 'cmake_gui' (windows) then 'configure' : here are the logs
>
> The C compiler identification is GNU 4.8.1
> The CXX compiler identification is GNU 4.8.1
> Check for working C compiler: C:/MinGW/bin/gcc.exe
> Check for working C compiler: C:/MinGW/bin/gcc.exe -- works
> Detecting C compiler ABI info
> Detecting C compiler ABI info - done
> Check for working CXX compiler: C:/MinGW/bin/g++.exe
> Check for working CXX compiler: C:/MinGW/bin/g++.exe -- works
> Detecting CXX compiler ABI info
> Detecting CXX compiler ABI info - done
> Found PkgConfig: C:/Windows/pkg-config.exe (found version "0.28")
> Looking for KDL in: C:/Program Files (x86)/Orocos-KDL
> checking for one of the modules 'orocos-kdl'
> CMake Warning at CMakeLists.txt:10 (find_package):
> Found package configuration file:
>
>
> C:/GIT-orocos/orocos_kinematics_dynamics/orocos_kdl/build/orocos-kdl-config.cmake
>
> but it set Orocos-KDL_FOUND to FALSE so package "Orocos-KDL" is considered
> to be NOT FOUND.
>
>
After looking at the *-config.cmake files it appears we are not setting
*_FOUND at all. But according to this page
http://www.cmake.org/Wiki/CMake/Tutorials/How_to_create_a_ProjectConfig....
that should not be necessary.

> Found PythonInterp: C:/Python27/python.exe (found version "2.7.8")
> Found PythonLibs: C:/Python27/libs/libpython27.a (found version "2.7.8")
> Found SIP version: 4.16.2
> Configuring done
>
> I thought there was a problem with the identification of the directory
> containing the newly compiled Orocos-kdl files so I added
>
>
Could you post the original contents of the following variables:

orocos_kdl_INCLUDE_DIRS

> //The directory containing a CMake configuration file for Orocos-KDL.
> Orocos-KDL_DIR:PATH=C:/Program Files (x86)/Orocos-KDL/
> Orocos-KDL_INCLUDE_DIRS:PATH=C:/Program Files (x86)/Orocos-KDL/include
> Orocos-KDL_LIBRARY_DIRS:PATH=C:/Program Files (x86)/Orocos-KDL/lib
>
>
This looks like you are using an older version of KDL (not master) since
currently the above variables are not used instead we have

orocos_kdl_INCLUDE_DIRS
orocos_kdl_LIBRARIES

> in python_orocos_kdl\build\CmakeCache.txt to overwrite possibly erroneous
> KDL files.
>
> Then I ran (in command line prompt)
>
> *c:\GIT-orocos\orocos_kinematics_dynamics\python_orocos_kdl\build>cmake ..*
> *Looking for KDL in: C:/Program Files (x86)/Orocos-KDL*