473,574 Members | 2,304 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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 1535
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******** ************@wa gner.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.nos pamisaid.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.nos pamisaid.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.nos pamisaid.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******@roger s.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********@gma il.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
387
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 beta testing and include Visual Basic 2005 Express, Visual C# 2005 Express, Visual C++ 2005 Express, Visual C++ 2005 Express, Visual J# 2005...
4
2516
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. Does VWD Express Edition support the idea of Solutions? I coun't figure out how to create a blank solution which I usually do with VS2005...
2
3419
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
12073
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 learn how to create new extensions for a web application, and turns out that i need to use Visual Studio and IIS together to do this. One of the...
4
3030
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. Unless you are going to debug a problem in the core or you are going to create an optimized build you want to select "Release" as
4
2614
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 various packages are not compiled, eg sqlite3. 3.Pythonw compiles OK but not sqlite3. 4.Mike Fletcher suggests an approach...
145
4200
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/ , which has proven easy enough for even elementary school students, even though it is designed for scientists, mathematicians and engineers.
2
3386
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 expect of the Express editions), but apparently there are NON Express versions of Visual Web Developer. Is Visual Web Developer only built-in to...
0
7710
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
8039
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. ...
0
8092
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
6437
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
0
5296
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3738
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3745
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2230
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
1
1332
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.