Command explanations patch -Np1 -i ../ncurses-&ncurses-version;-patch: This patch fixes a compile problem with GCC-3.2 because Ncurses uses constructions that are no longer valid in the new C++ standard. --with-shared: This enables the build of the shared ncurses library files. mv /lib/*.a /usr/lib : This moves all of the static ncurses library files from /lib to /usr/lib. /lib should only contain the shared files which are essential to the system when /usr may not be mounted. chmod 755 *.5.2: Shared libraries should be executable. Ncurses install routine doesn't set the permissions properly so we do it manually instead. ln -sf libncurses.a libcurses.a: Some programs try to link using -lcurses instead of -lncurses. This symlink ensures that such programs will link without errors.