473,385 Members | 1,641 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,385 software developers and data experts.

Python 2.4 and Visual C++ Express

I will soon have to write start providing Python extensions, in binary
form, for python 2.4, and I have a few questions.

I have Visual C++ 6 installed, which works great for python 2.3.

I do not have access to Visual C++ 2003, which seems to be the compiler
to be used with Python 2.4. Unless I am mistaken, the free command-line
compiler is not a solution, as it cannot produce binaries that
dynamically link the C runtime.

I have downloaded the Visual C++ 2004 "express" from the Microsoft.site.

Now my question is, will I be able to compile Python 2.4 extension if I
use the Visual C++ 2004? And since I will be distributing the extension
for both Python 2.3 and 2.4, will distutil choose the right compiler ?

Before some people mention MingW and Cygnus, I know and use them.
However, for redistributing I feel it safer to use the Microsoft compilers.

Thanks for any help,

Steve
Jul 18 '05 #1
9 1518
Steve Menard wrote:
....
I do not have access to Visual C++ 2003, which seems to be the
compiler to be used with Python 2.4. Unless I am mistaken, the free
command-line compiler is not a solution, as it cannot produce binaries
that dynamically link the C runtime.


....

See here:
http://www.vrplumber.com/programming/mstoolkit/

for details on how to use the free Toolkit compiler for building 2.4
extensions.

Have fun,
Mike

________________________________________________
Mike C. Fletcher
Designer, VR Plumber, Coder
http://www.vrplumber.com
http://blog.vrplumber.com

Jul 18 '05 #2
Are you saying that Python 2.4 will not compile under MS VC++ 6.0? That's
horrifying. Say it isn't so!!! I have just ported Python to an embedded
system using VC++ 6.0. It will always be compiled using 6.0, for two
reasons: 1) I cannot afford the manhours for changing compilers, and 2) Bill
Gates has enough money already, alright? I would hate to think that I am
now stuck at Python 2.3 for eternity.

"Steve Menard" <fo*@bar.com> wrote in message
news:XQ********************@wagner.videotron.net.. .
I will soon have to write start providing Python extensions, in binary
form, for python 2.4, and I have a few questions.

I have Visual C++ 6 installed, which works great for python 2.3.

I do not have access to Visual C++ 2003, which seems to be the compiler
to be used with Python 2.4. Unless I am mistaken, the free command-line
compiler is not a solution, as it cannot produce binaries that
dynamically link the C runtime.

I have downloaded the Visual C++ 2004 "express" from the Microsoft.site.

Now my question is, will I be able to compile Python 2.4 extension if I
use the Visual C++ 2004? And since I will be distributing the extension
for both Python 2.3 and 2.4, will distutil choose the right compiler ?

Before some people mention MingW and Cygnus, I know and use them.
However, for redistributing I feel it safer to use the Microsoft compilers.
Thanks for any help,

Steve

Jul 18 '05 #3
Jive wrote:
Are you saying that Python 2.4 will not compile under MS VC++ 6.0? That's
horrifying. Say it isn't so!!! I have just ported Python to an embedded
system using VC++ 6.0. It will always be compiled using 6.0, for two
reasons: 1) I cannot afford the manhours for changing compilers, and 2) Bill
Gates has enough money already, alright? I would hate to think that I am
now stuck at Python 2.3 for eternity.


That is not what I am saying. The "what's new in Python" claims python
2.4 will
compile with both versions 6 and 7.1 of Microsoft's compiler.

However, the standard download, that most users will have, will be
compiled using the 7.1. And so any binary packages to be installed on a
2.4 dist will also have to be compiled with 7.1.
Steve
Jul 18 '05 #4

"Steve Menard" <me*****************@gmail.nospamisaid.com> wrote in message
news:30*************@uni-berlin.de...
Jive wrote:
Are you saying that Python 2.4 will not compile under MS VC++ 6.0? That's horrifying. Say it isn't so!!! I have just ported Python to an embedded system using VC++ 6.0. It will always be compiled using 6.0, for two
reasons: 1) I cannot afford the manhours for changing compilers, and 2) Bill Gates has enough money already, alright? I would hate to think that I am now stuck at Python 2.3 for eternity.


That is not what I am saying. The "what's new in Python" claims python
2.4 will
compile with both versions 6 and 7.1 of Microsoft's compiler.

However, the standard download, that most users will have, will be
compiled using the 7.1. And so any binary packages to be installed on a
2.4 dist will also have to be compiled with 7.1.
Steve


Do you mean if I install 2.4, I will have to find VC++ 7.1 versions of all
the extensions
I may be using? If so, that's still borderline horrible, but I guess
Microsoft is the culprit. Annow
for something completely the same.

Will 7.1 extensions work with a Python.exe compiled under 6.0?

In any case, I think it would be a Good Thing if the Pythonistas provided a
download of 2.4
compiled under VC++ 6.0, in addition to the 7.1 one.

I don't suppose it will do any good to rant about Microsoft. I believe it's
been done.

Jul 18 '05 #5
Jive wrote:
"Steve Menard" <me*****************@gmail.nospamisaid.com> wrote in message
news:30*************@uni-berlin.de...

....
Do you mean if I install 2.4, I will have to find VC++ 7.1 versions of all
the extensions
I may be using? If so, that's still borderline horrible, but I guess
Microsoft is the culprit. Annow
for something completely the same.

It has almost always been the case that you must download new extensions
for a new major version of Python. The difference now is that library
developers can use the Free (as-in-beer) MSToolkit compiler to build
7.1-compatible extensions, instead of needing to purchase MSVC++ 6.0.

It's not a particularly elegant process (lots of downloads and a few
setup steps), but IMO it's a *good* thing to finally have no-cost option
for providing extensions on Windows.

That said, I'm not sure this will help you with your embedded platform.
Don't know if the Toolkit compiler will work with whatever Win32
platform runs there, but for general desktops moving to MSVC 7.1 seems
to be a win. However, the Toolkit doesn't come with the ability AFAIK
to build MSVC++ project files, so there will be some pain as developers
become accustomed to exporting makefiles or the equivalent from the
project files to support the Toolkit. Still, marching in the right
direction...

Just MHO,
Mike

________________________________________________
Mike C. Fletcher
Designer, VR Plumber, Coder
http://www.vrplumber.com
http://blog.vrplumber.com

Jul 18 '05 #6
Jive wrote:
"Steve Menard" <me*****************@gmail.nospamisaid.com> wrote in message
news:30*************@uni-berlin.de...
Jive wrote:
Are you saying that Python 2.4 will not compile under MS VC++ 6.0?
That's
horrifying. Say it isn't so!!! I have just ported Python to an
embedded
system using VC++ 6.0. It will always be compiled using 6.0, for two
reasons: 1) I cannot afford the manhours for changing compilers, and 2)
Bill
Gates has enough money already, alright? I would hate to think that I
am
now stuck at Python 2.3 for eternity.


That is not what I am saying. The "what's new in Python" claims python
2.4 will
compile with both versions 6 and 7.1 of Microsoft's compiler.

However, the standard download, that most users will have, will be
compiled using the 7.1. And so any binary packages to be installed on a
2.4 dist will also have to be compiled with 7.1.
Steve

Do you mean if I install 2.4, I will have to find VC++ 7.1 versions of all
the extensions
I may be using? If so, that's still borderline horrible, but I guess
Microsoft is the culprit. Annow
for something completely the same.

Will 7.1 extensions work with a Python.exe compiled under 6.0?

In any case, I think it would be a Good Thing if the Pythonistas provided a
download of 2.4
compiled under VC++ 6.0, in addition to the 7.1 one.

I don't suppose it will do any good to rant about Microsoft. I believe it's
been done.


We can rant all we want, but let's be realistic : Version 6.0 is
ancient! It is the version I was using at work almost 8 years ago!

Would you hold that python on Linux should compile with an 8 year old
version of GCC? At one point, a break must happen ...

At least there seems a way to use MS's free 7.1 toolkit to compile,
something that was'nt possible with version 6.

Lastly, about existing extensions. Extension are python version
specific. An extension compiled for python 2.3 will NOT work with python
2.4, no matter what. My guess is that soon after the release of Python
2.4, maintainers of existing packages will distribute them in 2.3 and
2.4 forms. My hope is that distuil will be intelligent enough to chose
the right compiler when both will be present. I am one of those
maintainers, and I do not want to have to jump through hoops to get my
modules to compile ...
Steve
Jul 18 '05 #7
"Mike C. Fletcher" <mc******@rogers.com> writes:
It has almost always been the case that you must download new extensions
for a new major version of Python. The difference now is that library
developers can use the Free (as-in-beer) MSToolkit compiler to build
7.1-compatible extensions, instead of needing to purchase MSVC++ 6.0.


One thing that does nag at me (and I've had no joy getting answers
from the mod_python list so far) is whether a 2.4-compatible version
of mod_python will be possible.

Python 2.4 will be built with the MSVC 7.1 compiler/CRT, but (AFAIK)
Apache is still distributed in binaries built with the MSVC6
compiler/CRT. So it's not clear to me which CRT mod_python should be
built against...

Hoping-it's-all-going-to-just-work-ly y'rs
Paul.
--
Accomplishing the impossible means only that the boss will add it to
your regular duties. -- Doug Larson
Jul 18 '05 #8
[Jive]
....
In any case, I think it would be a Good Thing if the Pythonistas
provided a download of 2.4 compiled under VC++ 6.0, in addition to
the 7.1 one.


That requires someone who cares enough to volunteer the work, or to
fund the work (presuming someone exists who could be convinced to do
the work for pay). For various reasons I, and later Raymond
Hettinger, cared enough to keep the MSVC 6 project files working with
Python 2.4, but nobody voluntered to produce a Windows installer for
2.4 based on MSVC 6. There's no policy against that, but Pythons
don't grow on trees.
Jul 18 '05 #9
Tim Peters <ti********@gmail.com> writes:
2.4 based on MSVC 6. There's no policy against that, but Pythons ^^^^^^^ don't grow on trees.

^^^^^^^^^^^^^^^^^^^

Sorry, but I couldn't resist the joke :-) :

http://www.whozoo.org/Intro98/jennglaz/jennglaz21.htm
Be seeing you,
--
Godoy. <go***@ieee.org>
Jul 18 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Bootstrap Bill | last post by:
A new Google group has been formed for the purpose of discussing the new Visual Studio Express products. http://groups-beta.google.com/group/Visual-Studio-Express The products are currently in...
4
by: Andrew Robinson | last post by:
My main dev machine has WinXp and VS2005 (pro). 1. I need to install VWD Express Edition so that I can do some instruction on this. Any issues with both on the same machine. Installation order?...
2
by: Progman | last post by:
I have Visual Studio 2005 Standard edition. Is ti the same thing as the Express edition or Standard is more?
2
by: terry.trent | last post by:
I'm new to c# and Visual C# Express, and to normal programming in general (some background in web programming), and i have a question vital to my current project. Basically, i have been asked to...
4
by: Colin J. Williams | last post by:
The readme.txt has: All you need to do is open the workspace "pcbuild.sln" in Visual Studio, select the desired combination of configuration and platform and eventually build the solution....
4
by: Colin J. Williams | last post by:
1.I have both 2.5 and 2.6 but both appear, under Recent Projects, as pcbuild. It would be helpful if the Python Version could be indicated. 2.With 2.6, Python compiles and executes OK but...
145
by: Dave Parker | last post by:
I've read that one of the design goals of Python was to create an easy- to-use English-like language. That's also one of the design goals of Flaming Thunder at http://www.flamingthunder.com/ ,...
2
by: Cramer | last post by:
So, what is the relationship between Visual Studio and Visual Web Developer. I find a lot of documentation on MSDN that presents Visual Web Developer as it's own stand-alone product (which I'd...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.