[prev in list] [next in list] [prev in thread] [next in thread] 

List:       python-cpp-sig
Subject:    [C++-sig] how to boost.build using two different python versions
From:       Ronny Herzog <herzog () mpi-cbg ! de>
Date:       2012-11-06 10:38:44
Message-ID: 5098E8B4.8020303 () mpi-cbg ! de
[Download RAW message or body]

Dear all,

I need to cross compile a python extension using boost.build. I have 
Python 2.6 (32 and 64 Bit) and Python 2.7 (64 Bit) installed on my 
computer. I compiled boost with Python 2.6 (32Bit).

My goal is to compile the python extension for Python 2.7 (64Bit).

The problem is that it does not try to not find the python27.lib. Is 
there a way to do this without re-compiling Boost with Python 2.7?

Thanks,
Ronny

Jamroot:
# Copyright David Abrahams 2006. Distributed under the Boost
# Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
#

using msvc ;

# Make the definition of the python-extension rule available
import python ;

#using python : 2.6 : c:/Python26/python.exe
#    : c:/Python26/include
#    : c:/Python26/libs
#    : <address-model>32
#    ;

using python : 2.7 : c:/Python27_64/python.exe
     : c:/Python27_64/include
     : c:/Python27_64/libs
     : <address-model>64
     ;

# Specify the path to the Boost project.  If you move this project,
# adjust the path to refer to the Boost root directory.
use-project boost
   : c:/boost_1_50_0 ;

# Set up the project-wide requirements that everything uses the
# boost_python library defined in the project whose global ID is
# /boost/python.

project boost-python-quickstart
     : requirements <library>/boost/python//boost_python
     ;

# Declare a Python extension
python-extension calcsf
     :
     lipidxexception.cpp CalcSF.cpp
     ;

install convenient_copy
   : calcsf
   : <install-dependencies>on <install-type>SHARED_LIB 
<install-type>PYTHON_EXTENSION
<address-model>32:<location>c:/users/duke/my_projects/lipidxplorer/trunk/lx/mfql/calcsf26_32 

<address-model>64:<location>c:/users/duke/my_projects/lipidxplorer/trunk/lx/mfql/calcsf27_64
   ;

The output:
C:\Users\Duke\My_Projects\boost_python\calcsf>bjam address-model=64 
release link
=static -d+2

file 
bin\msvc-9.0\release\address-model-64\link-static\threading-multi\calcsf.py
d.rsp

"bin\msvc-9.0\release\address-model-64\link-static\threading-multi\lipidxexcepti
on.obj"
"bin\msvc-9.0\release\address-model-64\link-static\threading-multi\CalcSF.obj"
"C:\boost_1_50_0\bin.v2\libs\python\build\msvc-9.0\release\address-model-64\link
-static\threading-multi\libboost_python-vc90-mt-1_50.lib"
"python26.lib"
msvc.link.dll 
bin\msvc-9.0\release\address-model-64\link-static\threading-multi\
calcsf.pyd

         call "C:\Program Files\Microsoft Visual Studio 
9.0\VC\vcvarsall.bat" x86
_amd64 >nul
link /NOLOGO /INCREMENTAL:NO /DLL /MACHINE:X64 /subsystem:console 
/out:"bin\msvc
-9.0\release\address-model-64\link-static\threading-multi\calcsf.pyd" 
/IMPLIB:"b
in\msvc-9.0\release\address-model-64\link-static\threading-multi\calcsf.lib" 
/LI
BPATH:"c:\Python64\libs" 
@"bin\msvc-9.0\release\address-model-64\link-static\t
hreading-multi\calcsf.pyd.rsp"
         if %ERRORLEVEL% NEQ 0 EXIT %ERRORLEVEL%

LINK : fatal error LNK1104: cannot open file 'python27.lib'
...skipped 
<pc:\users\duke\my_projects\lipidxplorer\trunk\lx\mfql\calcsf27_64>ca
lcsf.pyd for lack of 
<pbin\msvc-9.0\release\address-model-64\link-static\threadi
ng-multi>calcsf.pyd...
...failed updating 2 targets...


["herzog.vcf" (text/x-vcard)]

_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic