Skip to Content

session 6

linuxawy's picture

This is a very draft draft for what happened in session 6 written while the session is running.

Review of what we are doing:

now we have made libIPC which is a shared library. meant to handle InterProcess Communications.

the library should be pluggable, currently we should implement FileIO which can be a shared library too. later we should implement SharedMem , Sockets, .. etc

we will use function pointers to handle multiple instances of the same function.

there was a rough review about the requirements of the design that we agreed on the last session. more details is to be added here

MakeFiles

normally when we install a new package, the normal way is to ./configure, make, make install when you ./configure, you are actually building the MakeFile... this is done by certain instructions in a file targeted for automake to create the make file. the value of this is portability, pass a parameter to the builder, ... etc.

talk about what does libtool , autoconf, automake do here

when we start making automake you start by making configure.ac

SUBDIRS: <== this is to show where the code is, if it's not in the root of the project

bin_PROGRAMS=hello

hello_SOURCES=main.c <= this is to override the default which is hello.c

  • showcase of configure.ac implementation in sysfsutils-2.1.0

when you want to know what configure flags just type ./configure --help and it will give standard configure flags + optional flags (package specific).

to know all vriables/directives that you can put in configure.ac file just type info automake at the bash prompt.

overview of datastructures:

  • example of sorting a one dimentional array.
  • tree structure (AVL trees, Red-Black Trees): we should choose one to talk about the coming session.
  • hash tables.

Next session is to be C++ and we'll continue with automake



Dr. Radut | book