On Tue, 14 Nov 2006 13:13:42 +0100, rodmc <[EMAIL PROTECTED]>  
wrote:

>> >
>> > Traceback (most recent call last):
>> >   File "C:\Python24\Lib\site-packages\Fnorb\script\cpp.py", line 53,  
>> in
>> > -toplevel-
>> >     raise "No C/C++ pre-processor found in your PATH!"
>> > No C/C++ pre-processor found in your PATH!
>>
>> You don't say *when* this error occurs, i.e. what is the command that
>> returns the exception. Assuming it's when you try to compile an IDL file
>> with fnidl, just try:
>> fnidl --internal-cpp ...
>
> Sorry you are right I did not say, but you guessed correctly. However
> even when I try your advice I still receive the same error.

I took a look at the Fnorb sources and it appears you're right: even if  
the --internal-cpp flag is used, fnidl still tests if the MS compiler  
exists and breaks if it can't be called or if it doesn't return what fnidl  
expects. The actual test is whether the cl output contains the string  
"/link", whatever the character case. So as you said in your original post  
that cl can be run, but doesn't print anything, this seems to be the  
problem.

What you can do is the following: go to Fnorb's source directory and edit  
scripts/cpp.py; on line 53, replace the "raise ..." by:
COMMAND = None
with the same indent.

Then run fnidl again with the --internal-cpp flag. This should work and  
produce the expected files.

Note that this is a dirty hack: if you forget to specify the  
--internal-cpp flag, you'll get a nasty traceback. But it should work in  
your case.

HTH
-- 
python -c "print ''.join([chr(154 - ord(c)) for c in  
'U(17zX(%,5.zmz5(17l8(%,5.Z*(93-965$l7+-'])"
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to