In /usr/bin/h5c++.openmpi line 26: exec_prefix="${prefix}" ^---------^ SC2034: exec_prefix appears unused. Verify use (or export if used externally). In /usr/bin/h5c++.openmpi line 63: prog_name="`basename $0`" ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: prog_name="$(basename "$0")" In /usr/bin/h5c++.openmpi line 145: echo " in the 'Things You Can Modify to Override...'" section of $prog_name ^--------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo " in the 'Things You Can Modify to Override...'" section of "$prog_name" In /usr/bin/h5c++.openmpi line 181: if test "`${CXX} -v 2>&1 | sed -n 2p | cut -c1-3`" = "gcc"; then ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: if test "$(${CXX} -v 2>&1 | sed -n 2p | cut -c1-3)" = "gcc"; then In /usr/bin/h5c++.openmpi line 193: for arg in $@ ; do ^-- SC2068: Double quote array expansions to avoid re-splitting elements. In /usr/bin/h5c++.openmpi line 215: dash_o="yes" ^----^ SC2034: dash_o appears unused. Verify use (or export if used externally). In /usr/bin/h5c++.openmpi line 236: prefix="`expr "$arg" : '-prefix=\(.*\)'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: prefix="$(expr "$arg" : '-prefix=\(.*\)')" In /usr/bin/h5c++.openmpi line 258: qarg="'"$arg"'" ^--^ SC2027: The surrounding quotes actually unquote this. Remove or escape them. In /usr/bin/h5c++.openmpi line 270: ext=`expr "$arg" : '.*\(\..*\)'` ^--------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: ext=$(expr "$arg" : '.*\(\..*\)') In /usr/bin/h5c++.openmpi line 271: if [ "$ext" = ".C" -o "$ext" = ".cxx" -o "$ext" = ".cpp" -o \ ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. In /usr/bin/h5c++.openmpi line 272: "$ext" = ".cc" -o "$ext" = ".c" -o "$ext" = ".CC" ] ; then ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. In /usr/bin/h5c++.openmpi line 276: fname=`basename $arg $ext` ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2086: Double quote to prevent globbing and word splitting. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: fname=$(basename "$arg" "$ext") In /usr/bin/h5c++.openmpi line 305: $SHOW $CXX -I$includedir $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CXXFLAGS $CXXFLAGS $compile_args ^--^ SC2086: Double quote to prevent globbing and word splitting. ^-------------^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2086: Double quote to prevent globbing and word splitting. ^-------------^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2086: Double quote to prevent globbing and word splitting. ^-----------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SHOW "$CXX" -I$includedir "$H5BLD_CPPFLAGS" "$CPPFLAGS" "$H5BLD_CXXFLAGS" "$CXXFLAGS" "$compile_args" In /usr/bin/h5c++.openmpi line 370: if echo $link_args | grep " $lib " > /dev/null || ^--------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if echo "$link_args" | grep " $lib " > /dev/null || In /usr/bin/h5c++.openmpi line 371: echo $link_args | grep " $lib$" > /dev/null; then ^--------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "$link_args" | grep " $lib$" > /dev/null; then In /usr/bin/h5c++.openmpi line 389: $SHOW $CXXLINKER -I$includedir $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CXXFLAGS $CXXFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args $shared_link ^--------^ SC2086: Double quote to prevent globbing and word splitting. ^-------------^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2086: Double quote to prevent globbing and word splitting. ^-------------^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2086: Double quote to prevent globbing and word splitting. ^--------^ SC2086: Double quote to prevent globbing and word splitting. ^---^ SC2086: Double quote to prevent globbing and word splitting. ^--------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SHOW "$CXXLINKER" -I$includedir "$H5BLD_CPPFLAGS" "$CPPFLAGS" "$H5BLD_CXXFLAGS" "$CXXFLAGS" "$LDFLAGS" "$clibpath" "$link_objs" "$LIBS" "$link_args" $shared_link For more information: https://www.shellcheck.net/wiki/SC2068 -- Double quote array expansions to ... https://www.shellcheck.net/wiki/SC2027 -- The surrounding quotes actually u... https://www.shellcheck.net/wiki/SC2034 -- dash_o appears unused. Verify use...