CORBA: Fnorb Problems

Eric Brunel eric_brunel at despammed.com
Tue Nov 14 09:30:35 EST 2006


On Tue, 14 Nov 2006 13:13:42 +0100, rodmc <userprogoogle-139 at yahoo.co.uk>  
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+-'])"



More information about the Python-list mailing list