#
1.5 Compilation and Linkage

There are two more things to do before you can use your new extension: compiling and linking it with the Python system. If you use dynamic loading, the details depend on the style of dynamic loading your system uses; see the chapter ``Dynamic Loading'' for more information about this.

If you can't use dynamic loading, or if you want to make your module a permanent part of the Python interpreter, you will have to change the configuration setup and rebuild the interpreter. Luckily, this is very simple: just place your file ("`spammodule.c`" for example) in the "`Modules`" directory, add a line to the file "`Modules/Setup.local`" describing your file:

      spam spammodule.o

and rebuild the interpreter by running make in the toplevel directory. You can also run make in the "`Modules`" subdirectory, but then you must first rebuild "`Makefile`" there by running `make Makefile'. (This is necessary each time you change the "`Setup`" file.)

If your module requires additional libraries to link with, these can be listed on the line in the configuration file as well, for instance:

      spam spammodule.o -lX11