many points in name - rc.local.start example #!/usr/bin/cppipe description - advantages over manual compile man tips (sigaction SIGCHILD, SIG_IGN, SIG_DFL) condituonal main - redirected processes block if their output is not read make sure file descriptors are closed when no longer used cppipe compile options from tft respect CXXFLAGS LDFLAGS < PendingCmd store files we need to close ? optional exec std::string args args before src file go to compiler use exceptions (open_or_die) throw when a command couldnt be ran precompiled header cppipe.h -Wno-unused-result in install.sh file operations, lack of uniformity (C++ vs POSIX) Check all return codes and report errors uninstall improve debug (the src file shown is the .ii) no optimizations option split PendingCmd template