[Cython] main-embedding problem
Robert Bradshaw
robertwb at math.washington.edu
Mon May 4 23:49:15 CEST 2009
On May 4, 2009, at 2:18 PM, Mark Lodato wrote:
> What about using something like my script?
> http://www.mail-archive.com/cython-dev@codespeak.net/msg04989.html
>
> I think this solution would be much cleaner - to create a *new* C file
> in addition to everything on the command line. That way you can
> compile all your modules to object files, and then either make them
> into shared objects or compile them with the extra C file into a
> standalone.
If you want to include many files, this is probably a more obvious
way to go. It's also nice because one can run the Cython compiler
ahead of time and use the same output for .so files.
>
> On Mon, May 4, 2009 at 4:42 PM, Stefan Behnel <stefan_ml at behnel.de>
> wrote:
>> Hi,
>>
>> I just tried to use the new main() embedding feature to compile a
>> multi-module Python program. This doesn't seem to work as
>> expected. What I
>> would like to see is that when I say
>>
>> $ cython --embed somemain.py other1.py other2.py ...
>>
>> Cython should generate a .c file for each .py file and add a main()
>> function only to the first module. This main() function should then
>> register all other modules that were compiled at the same run, so
>> that the
>> resulting main program can become self-contained by simply
>> compiling all .c
>> files into a single executable. Since this is not how it currently
>> works
>> (instead, all .c files get their own main() function), we might
>> want to at
>> least disable the --embed option for multiple compilation in
>> 0.11.2, so
>> that people do not start relying on this.
Yes, lets disable it for multiple compilation for now at least.
- Robert
More information about the Cython-dev
mailing list