Skip to content
jonalvarado edited this page May 28, 2017 · 27 revisions

Building SC-IM

Try building SC-IM linking to ncursesw library rather than ncurses library and setting the USELOCALE flag.

This will prevent to have problems with special characters (extended ascii chars), whatever encoding you use.

Build instructions for NetBSD

  • Use gmake and bison.
  • Make sure to have ncurses library or a symlink to it in the library directory.
  • If you have problems not finding ncurses library, replace -lncurses with -lcurses in Makefile.

Build instructions for FreeBSD

  • Use gmake and bison for building.
  • See this wiki for more details.

Build instructions for OSX

  • get brew installed if its not already set up:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install homebrew/dupes/ncurses
git clone https://github.com/andmarti1424/sc-im
brew link --force ncurses

You should see now a bunch of /usr/local/lib/libncursesw* file links needed by SC-IM.

make

If you want to build with xlsx import and export on OSX.

# necessary for xlsx import
brew install libzip 
# necessary for xlsx import
brew install libxml2 

# sets up scim Makefile to find libxml2 library
export PKG_CONFIG_PATH=/usr/local/opt/libxml2/lib/pkgconfig

# this has no brew install formula
git clone https://github.com/jmcnamara/libxlsxwriter.git
cd libxlsxwriter
make

# links into /usr/include where the scim Makefile is looking to determine presence of xlsxwriter library
sudo ln -s `pwd`/include/xlsxwriter.h  /usr/include/
sudo ln -s `pwd`/include/xlsxwriter /usr/include/

sudo ln -s `pwd`/lib/libxlsxwriter.a /usr/lib/
sudo ln -s `pwd`/lib/libxlsxwriter.dylib /usr/lib/

then go into sc-im/src folder and make.

Build instructions for ArchLinux

You might need to create some symlinks for ncursesw headers be found by SC-IM

NOTE: This was not needed in my Arch installation.

if [[ `whereis ncursesw` == "ncursesw: /usr/include/ncursesw" ]]; then
    mkdir /usr/include/ncursesw
    cd /usr/include/ncursesw
    ln -s ../{cursesapp.h,cursesf.h,curses.h,cursesm.h,cursesp.h,cursesw.h,cursslk.h,eti.h,etip.h,form.h,menu.h,nc_tparm.h,ncurses_dll.h,ncurses.h,panel.h,termcap.h,term_entry.h,term.h,tic.h,unctrl.h} ./
fi