[sword-devel] cmake python bindings user location

Ben cricketc at gmail.com
Wed Jun 19 17:18:06 MST 2013


On 06/19/2013 10:00 AM, Greg Hellings wrote:
>
>
>
> On Mon, Jun 17, 2013 at 6:14 AM, Ben <cricketc at gmail.com
> <mailto:cricketc at gmail.com>> wrote:
>
>     On 06/16/2013 11:55 PM, Greg Hellings wrote:
>
>
>
>
>         On Sun, Jun 16, 2013 at 9:22 PM, <cricketc at gmail.com
>         <mailto:cricketc at gmail.com>
>         <mailto:cricketc at gmail.com <mailto:cricketc at gmail.com>>> wrote:
>
>              Hey Greg,
>
>              I'm building the python bindings with cmake 2.6.4. I'm
>         trying to
>              specify a user location, but it doesn't work with current svn -
>              SWORD_PYTHON_INSTALL_DIR is always just "OFF", even if I pass a
>              value through the cmake command. If I pass "1" as the
>         value, then
>              SWORD_PYTHON_INSTALL_DIR gets set, but it's obviously not
>         what I'm
>              looking for.
>
>              If I comment out the OPTION setting in cmake/options.cmake,
>         it seems
>              to work properly for me.
>
>
>         What exact command line are you invoking CMake with? And are you
>         doing
>         it from a clean configuration directory (e.g. new dir or "rm -rf
>         * .*"
>         beforehand)? CMake is very unfriendly towards attempts to
>         reconfigure a
>         directory.
>
>
>
>     cmake -DCMAKE_INSTALL_PREFIX="~/__sword-cmake-build/install"
>     -DLIBSWORD_LIBRARY_TYPE="__Shared" -DSWORD_BUILD_TESTS=Yes
>     -DSWORD_BINDINGS=Python
>     -DSWORD_PYTHON_INSTALL_DIR=~/__sword-cmake-build/install
>     -DSWORD_BUILD_EXAMPLES=Yes /path/to/svn/sword
>
>     Yes, it's a clean directory.
>
>     I output the value of SWORD_PYTHON_INSTALL_DIR, and it says the
>     value is "OFF". Again, if I remove the OPTION command in
>     options.cmake, then it takes the value that I pass in from the
>     command line.
>
>
>     -Ben
>
>
> I was misusing the CMake OPTION command. Turns out it only works for
> ON/OFF values and cannot handle arbitrary strings. I have updated the
> handling to hopefully work as intended. Can you give it a whirl and let
> me know if it is now working better for you?

That part looks OK to me now, but I get a different error:

-- Installing: 
/home/me/sword-cmake-build/install/lib/sword/1.6.2_icu_/translit_Latin_Ugaritic.res
-- Installing: 
/home/me/sword-cmake-build/install/lib/sword/1.6.2_icu_/translit_swordindex.res
running install
running build
running build_py
running build_ext
running install_lib
creating /home/me/sword-cmake-build/install/lib64
creating /home/me/sword-cmake-build/install/lib64/python
copying build/lib.linux-x86_64-2.6/_Sword.so -> 
/home/me/sword-cmake-build/install/lib64/python
copying build/lib.linux-x86_64-2.6/Sword.py -> 
/home/me/sword-cmake-build/install/lib64/python
byte-compiling /home/me/sword-cmake-build/install/lib64/python/Sword.py 
to Sword.pyc
running install_egg_info
Writing 
/home/me/sword-cmake-build/install/lib64/python/sword-1.6.2-py2.6.egg-info
-- Installing: /usr/local/bin/addld
CMake Error at utilities/cmake_install.cmake:41 (FILE):
   file INSTALL cannot copy file 
"/home/me/sword-cmake-build/utilities/addld"
   to "/usr/local/bin/addld".
Call Stack (most recent call first):
   cmake_install.cmake:275 (INCLUDE)

I think maybe ${SWORD_INSTALL_DIR} should be changed to ${PREFIX} in 
utilities/CMakeLists.txt?

Also, I'm not sure it's causing anything to fail, but the name of the 
icu directory seems to be missing something (1.6.2_icu_).

Thanks,
-Ben



More information about the sword-devel mailing list