2.0 KiB
compilescript(1) Manual Page
NAME
compilescript - allows you to execute files from compiled languages as scripts.
SYNOPSIS
compilescript [file|--cleanup|--version] [arguments]
DESCRIPTION
compilescript allows you to execute files from compiled languages as scripts. By default it uses g++.
It compiles the source file, stores the binary in
${XDG_CACHE_HOME}/compilescript/
and executes it. If the binary in cache is
newer than the source file, the compilation is skipped.
Use #!/usr/bin/env compilescript
as shebang and write the compiler arguments
in the second line with the prefix: //compilescript:
.
The configuration file is in ${XDG_CONFIG_HOME}/compilescript.cfg
. It will be
generated on first run.
The compiler invocation looks like this: <configured compiler> <source file> <compiler arguments> -o <binary>.
OPTIONS
- --cleanup
-
Delete old cache files. You can configure the timespan after which a file is considered old with the config option clean_after_hours.
- --version
-
Print version, copyright and license.
EXAMPLES
Example script
#!/usr/bin/env compilescript
//compilescript: -Wall -pedantic -Wextra
#include <iostream>
using std::cout;
int main(int argc, char *argv[])
{
cout << "Hello world!\n";
cout << argv[1] << '\n';
}
Example config
compiler = "g++ -x c++";
clean_after_hours = 720;
cache_dir = "/home/user/.cache/compilescript";
FILES
-
Configuration file:
${XDG_CONFIG_HOME}/compilescript.cfg
-
Cache:
${XDG_CACHE_HOME}/compilescript/
${XDG_CONFIG_HOME}
is usually ~/.config
and ${XDG_CACHE_HOME}
is usually
~/.cache
.
REPORTING BUGS
E-mail: tastytea@tastytea.de