The utilities in this directory are _not_ built automatically. So: cd ./configure ; make ; make install will _not_ build and install them. The make command (or some variant of it) needs to be run in this directory as outlined below. Building files in this directory depends on several files being already built in the ../lib directory. So to build files here, the ./configure needs to be executed in the parent directory followed by changing directory to the lib directory and calling 'make' there. Another way is to do a top level 'make' after the ./configure which will make the libraries followed by all the utilities in the src/ directory. To make them in FreeBSD use 'make -f Makefile.freebsd' . The utilities in this directory do not have manpages. They have relatively complete but terse help messages, typically seen by using the '--help' option one or more times. If called several times, the shorter form of the help option is more convenient, for example: '-hhh'. And of course there is the source code. Unfortunately where the code implements many different options, it can become a bit dense. There is also a large amount of error checking, as many of these utilities were used to test new features placed in the sg v4 driver in Linux. The sg_chk_asc utility decodes the SCSI additional sense code table found at https://www.t10.org/lists/asc-num.txt and checks it against the table found in sg_lib_data.c in the lib/ subdirectory. It is designed to keep the table in sg_lib_data.c in "sync" with the table at the t10.org web site. The tst_sg_lib utility exercises several functions found in sg_lib.c and related files in the 'lib' sibling directory. Use 'tst_sg_lib -h' to get more information. There are both C and C++ files in this directory, they have extensions '.c' and '.cpp' respectively. Now both are built with rules in Makefile (at least in Linux). A gcc/g++ compiler of 4.7.3 vintage or later (or a recent clang compiler) will be required. To make them in FreeBSD use 'make -f Makefile.freebsd'. The sgh_dd utility (C++) uses 'libatomic' which may not be installed on some systems. On Debian based systems 'apt install libatomic1' fixes this. Douglas Gilbert 17th September 2019