On Oct 29, 9:10 pm, Lawrence D'Oliveiro <l...@geek- central.gen.new_zealand> wrote: > In message <mailman.2297.1256863331.2807.python-l...@python.org>, Christian > > Heimes wrote: > > Lawrence D'Oliveiro schrieb: > > >> In message <mailman.2268.1256841007.2807.python-l...@python.org>, > >> Christian Heimes wrote: > > >>> On Linux and several other Unices the suffix is .so and not .pyd. > > >> Why is that? Or conversely, why isn't it .dll under Windows? > > > On Windows it used to be .dll, too. > > The suffix was changed to avoid issues with other dlls and name clashes. > > What clashes? How come other OSes don't seem prone to the same problems?
Yeah, because who ever heard of one OS having a problem that another OS didn't? Windows searches for DLLs on the executable path, which always includes the current directory. So if you have a module called system32.dll in your currently directory, you could be in big trouble. Unix doesn't automatically search the current dir, doesn't use the executable search path (libraries have their own search path, which is not used when loading shared libs by hand), and system libraries on Unix conventionally are prefixed by lib. So name collisions are rare, but even if if you have a module called libc.so in your current directory it will not conflict with /lib/libc.so. Carl Banks -- http://mail.python.org/mailman/listinfo/python-list