aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/bzip2-static-exp.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'chapter05/bzip2-static-exp.sgml')
-rw-r--r--chapter05/bzip2-static-exp.sgml33
1 files changed, 33 insertions, 0 deletions
diff --git a/chapter05/bzip2-static-exp.sgml b/chapter05/bzip2-static-exp.sgml
new file mode 100644
index 000000000..788de4298
--- /dev/null
+++ b/chapter05/bzip2-static-exp.sgml
@@ -0,0 +1,33 @@
+<sect2>
+<title>Command explanations</title>
+
+<para>
+<userinput>sed: </userinput> The sed command here searches for the
+string "$(CC) $(CFLAGS) -o" and replaced it by "$(CC) $(CFLAGS)
+$(LDFLAGS) -o" in the Makefile file. We make that modification so it
+will be easier to link bzip2 statically.
+</para>
+
+<para>
+<userinput>...Makefile | make -f -:</userinput> Makefile
+is the last parameter of the sed command which indicates the file to
+search and replace in. sed normally sends the modified file to stdout
+(standard output) which will be your console. With the construction we
+use, sed's output will be piped to the make program. Normally when make
+is started it tries to find a number of files like Makefile. But we have
+modified the Makefile file so we don't want make to use it. The "-f -"
+parameter tells make to read it's input from another file, or from stdin
+(standard input) which the dash (-) implies. This is one way to do it.
+Another way would be to have sed write the output to a different file
+and tell make with the -f parameter to read that alternate file.
+</para>
+
+<para>
+<userinput>LDFLAGS=-static:</userinput> This is the second way we use to
+link a package statically. This is also the most common way. As you'll
+notice, the -all-static value is only used with the binutils package and
+won't be used throughout the rest of this book.
+</para>
+
+</sect2>
+