classification
Title: Building python 2.5 for AMD64 (windows) and VS2005
Type:
Components: Build Versions: Python 2.5
process
Status: closed Resolution: out of date
Dependencies: Superseder:
Assigned To: krisvale Nosy List: christian.heimes, fred2k, krisvale, loewis
Priority: normal Keywords:

Created on 2007-03-02 11:16 by fred2k, last changed 2008-01-12 05:11 by christian.heimes.

Messages
msg31404 (view) Author: fred2k (fred2k) Date: 2007-03-02 11:16
When building pythoncore for AMD64 (WIndows) on VS2005, I get the following error : 

3>generate buildinfo
3>cl.exe -c -D_WIN32 -DUSE_DL_EXPORT -D_WINDOWS -DWIN32 -D_WINDLL -MD -MD /USECL:MS_OPTERON ..\Modules\getbuildinfo.c -Fogetbuildinfo.o -I..\Include -I..\PC
3>Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.42 for 80x86
3>Copyright (C) Microsoft Corporation.  All rights reserved.
3>getbuildinfo.c
3>Linking...
3>LINK : warning LNK4044: unrecognized option '/USELINK:MS_SDK'; ignored
3>getbuildinfo.o : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'
3>Build log was saved at "file://d:\users\fbr\python build\Python-2.5\PCbuild8\amd64-temp-release\pythoncore\BuildLog.htm"
3>pythoncore - 1 error(s), 225 warning(s)

I already looked for the issue on google and on the ML archive (http://mail.python.org/pipermail/python-dev/2006-March/062753.html) but the workaround explained there (checking vsextcompiler) is specific for VC2003.

Has anyone solved this problem ?





msg31405 (view) Author: Martin v. Löwis (loewis) Date: 2007-03-03 01:49
Kristjan, can you take a look? If not, please unassign.
msg31406 (view) Author: Kristján Valur Jónsson (krisvale) Date: 2007-03-03 10:23
Well, it sounds like he is trying to link modules compiled for different machines.
/USECL or /USELINK aren't options for MSVC, so something fishy is going on there.  I will try to reproduce when I get the chance
msg31407 (view) Author: Martin v. Löwis (loewis) Date: 2007-03-03 10:40
USECL and USELINK is easily resolved: that's an option of vsextcomp, used to build the "official" AMD64 and Itanium binaries with the 2003 build environment, vsextcomp, and the platform compilers. Apparently, when the VS 2005 projects were created, the AMD64 and Itanium targets weren't updated.
msg31408 (view) Author: Kristján Valur Jónsson (krisvale) Date: 2007-03-03 10:57
This suggest to me that the reporter is not using the PCBuild8 build setup to do this, since that should have all-new flags.  I will still try to repro, though.
msg31409 (view) Author: fred2k (fred2k) Date: 2007-03-03 11:53
What do you mean by PCBuild8 build setup ??
I only see the files that are necessary to the build in the directory.
msg31410 (view) Author: Martin v. Löwis (loewis) Date: 2007-03-03 12:05
In what directory? PCbuild or PCbuild8?
msg31411 (view) Author: fred2k (fred2k) Date: 2007-03-03 12:08
As I tried to build with MVS2005, I used the sln file in the PCBuild8 directory
msg31412 (view) Author: Kristján Valur Jónsson (krisvale) Date: 2007-03-03 13:13
Ok, I will look into this when I get the oppertunity.  Possibly these .sln file or .vcproj have gotten contaminated with some strange options...
msg59793 (view) Author: Christian Heimes (christian.heimes) Date: 2008-01-12 05:11
The new build directories for VS 2005 and VS 2008 work for AMD 64.
History
Date User Action Args
2008-01-12 05:11:24christian.heimessetstatus: open -> closed
nosy: + christian.heimes
resolution: out of date
messages: + msg59793
2007-03-02 11:16:57fred2kcreate