# iclm Interactive Clean Make This is an `expect` wrapper around `clm`, the [Clean][] make tool. It assumes you have a tagfile built by [`cloogletags -c`][tags] in `$CLEAN_HOME/lib/tags`. It attempts to guess which libraries must be added by looking at the compiler errors. ## Usage Simply use `iclm` instead of `clm`. If you want that arguments are stored, such that `iclm` does not have to guess every time again, use `iclm -P`. This stores arguments in `.iclmargs`. ## Example run ``` spawn clm test Compiling Data.Maybe Can't find Data.Maybe.icl --> Adding /opt/clean/lib/Platform to libraries. spawn clm -I /opt/clean/lib/Platform test Compiling GenEq Can't find GenEq.icl --> Adding /opt/clean/lib/Generics to libraries. spawn clm -I /opt/clean/lib/Platform -I /opt/clean/lib/Generics test Linking test /usr/bin/ld: /tmp/linkerXQR2I8: relocation R_X86_64_32S against `.data' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Nonrepresentable section on output collect2: error: ld returned 1 exit status --> Using -l -no-pie. spawn clm -I /opt/clean/lib/Platform -I /opt/clean/lib/Generics -l -no-pie test Linking test --> Done. ``` ## Author, copyright & license Copyright © 2017–present [Camil Staps][cs]. Licensed under MIT, see the `LICENSE` file. [Clean]: http://clean.cs.ru.nl [tags]: https://gitlab.science.ru.nl/cloogle/cloogle-tags [cs]: https://camilstaps.nl