[ python-Bugs-1568243 ] init_types
SourceForge.net
noreply at sourceforge.net
Thu Oct 5 11:17:31 CEST 2006
Bugs item #1568243, was opened at 2006-09-30 09:34
Message generated for change (Comment added) made by krisvale
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1568243&group_id=5470
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Build
Group: Python 2.5
Status: Open
Resolution: None
Priority: 6
Submitted By: Bosko Vukov (bvukov)
Assigned to: Kristján Valur (krisvale)
Summary: init_types
Initial Comment:
I tried to build the final version of Python 2.5, and
found that function init_types in file Python-ast.c is
created as
int init_types(void) ....
but in file config.c it's declared as
extern void init_types(void);
Visual Studio 2005 didn't want to build the project
until I changed the config.c to be the same...
extern int init_types(void);
Nothing big ;)
Regards, Bosko
----------------------------------------------------------------------
>Comment By: Kristján Valur (krisvale)
Date: 2006-10-05 09:17
Message:
Logged In: YES
user_id=1262199
the pcbuild8.vcproj in the Python trunk has this fixed. I
will backport that tho 2.5 shortly.
----------------------------------------------------------------------
Comment By: Martin v. Löwis (loewis)
Date: 2006-10-03 12:11
Message:
Logged In: YES
user_id=21627
Kristijan, can you please backport your changes to the 2.5
trunk and then close this report?
----------------------------------------------------------------------
Comment By: Coatimundi (coatimundi)
Date: 2006-10-02 19:22
Message:
Logged In: YES
user_id=1611513
Thanks, loewis. I take your advice.
I see that things have changed in SVN anyway. I like the
new approach of using Visual STudio's configuration
management.
When I (try to) build PGIRelease to instrument the python
dll, I get a curious error:
1>Compiling...
1>zlibmodule.c
1>Compiling resources...
1>Linking...
1> Creating library
Win32\PGIRelease\pythoncore/python26.lib and object
Win32\PGIRelease\pythoncore/python26.exp
1>Generating code
1>c:\Documents and Settings\kferrio\My
Documents\Dev\Python-2.5\Modules\zipimport.c : fatal error
C1350: error loading dll 'pgodb80.dll': dll not found
1>LINK : fatal error LNK1257: code generation failed
1>Build log was saved at "file://c:\Documents and
Settings\kferrio\My
Documents\Dev\Python-2.5\PCbuild8\Win32\PGIRelease\pythoncore\BuildLog.htm"
1>pythoncore - 2 error(s), 2 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0
skipped ==========
I definitely do not understand this -- yet. Meanwhile, any
clues would be welcome.
Thanks.
----------------------------------------------------------------------
Comment By: Martin v. Löwis (loewis)
Date: 2006-10-02 19:08
Message:
Logged In: YES
user_id=21627
I think you should avoid building pythoncore_pgo; it's of no
use.
Or else, study all documentation you can find on Microsoft's
profile-guided-optimization for a few days, read all web
logs about the bugs in this software, and perhaps you can
succeed in building it, by deleting the right files in the
right order.
----------------------------------------------------------------------
Comment By: Coatimundi (coatimundi)
Date: 2006-10-02 18:28
Message:
Logged In: YES
user_id=1611513
I am expereincing the problem described by the original
poster. I undertand that MSVC8 is not officially supported,
and I'm trying anyway.
I downloaded the 2.5.0 final tarball and began working in
the PCbuild8 directory.
Firts off, I found that I had to build two projects before
pythoncore would build:
make_versioninfo
make_buildinfo
When I tried to build pythoncore, I got the linker error
saying that _init_types could not be found. So I added
_typesmodule.c to the pythoncore project. Finally,
pythoncore built cleanly.
Next up, I wanted to build pythoncore_pgo. So I added
_typesmodule to this project also. But try as I might,
every attempt to build pythoncore_pgo produces the link
error on _init_types. (I also did a 'clean' on pythoncore
just to be safe.)
I do not understand this. Unlike the original poster, I
have not modified any source. It seems like the definition
of pyMODINIT_FUNC as extern "C" void might be involved, but
I agree with gbrandl that the static int in Python-ast.c is
not the issue, because that is a different scope.
So the linkage problem with pythoncore_pgo remains a mystery
to me. I hope someone has more clues than me.
----------------------------------------------------------------------
Comment By: Martin v. Löwis (loewis)
Date: 2006-10-02 14:00
Message:
Logged In: YES
user_id=21627
Notice that the PCbuild8 directory isn't really supported...
In any case, the bug is that PCbuild8 does not have the
reference to _typesmodule, not that init_types in
Python-ast.c is static.
If you revert your change to Python-ast.c, and change
pythoncore.vcproj, it should build fine.
This is already fixed in r51751 in the trunk; not sure
whether backporting it is necessary.
----------------------------------------------------------------------
Comment By: Bosko Vukov (bvukov)
Date: 2006-09-30 17:50
Message:
Logged In: YES
user_id=1292849
I opened solution file from folder PCbuild8, and inside
project file pythoncore.vcproj there is no reference to
_typesmodule.c. It exists in pythoncore.vcproj in the
PBbuild folder ( for older version's ). I added the missing
_typesmodule.c inside, and returned back the changes I made,
and aft er that linker reported 'Python-ast.obj : error
LNK2005: _init_types already defined in _typesmodule.obj'
----------------------------------------------------------------------
Comment By: Georg Brandl (gbrandl)
Date: 2006-09-30 11:27
Message:
Logged In: YES
user_id=849994
The problem is another one: The config.c init_types function
belongs to the _types module, while the Python-ast.c
init_types is an internal function. They shouldn't clash.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1568243&group_id=5470
More information about the Python-bugs-list
mailing list