This is the source for Beej's Guide to Network Concepts. Not Beej's Guide to Network Programming in C.
If you merely wish to read the guide, please visit the Beej's Guide to Network Concepts website.
This is here so that Beej has everything in a repo and so translators can easily clone it.
- Gnu make (XCode make works, too)
- Python 3+
- Pandoc 2.7.3+
- XeLaTeX (can be found in TeX Live)
- Liberation fonts (sans, serif, mono)
Mac dependencies install (reopen terminal after doing this):
xcode-select --install # installs make
brew install python # installs Python3
brew install pandoc
brew install mactex # installs XeLaTeX
brew tap homebrew/cask-fonts
brew install font-liberation # installs Liberation fonts
You might have to add something like this to your path to find xelatex
:
PATH=$PATH:/usr/local/texlive/2021/bin/universal-darwin
This depends on an external repo to build: Beej's Guide Build System for Pandoc.
You'll want to clone that repo as a sibling to this one:
mystuff-->bggit
\-->bgbspd
The Makefiles here will look for the build system there.
You can override the bgbspd
directory before running make
like this:
export BGBSPD_BUILD_DIR=/some/path/to/bgbspd
-
Type
make all
from the top-level directory.If you have Gnu Make, it should work fine. Other makes might work as well. Windows users might want to check out Cygwin.
-
Type
make stage
to copy all the build products and website to thestage
directory. -
There is no step three.
You can also cd
to the src
directory and make
.
make clean
cleans, and make pristine
cleans to "original" state.
To embed your own fonts in the PDFs, see the src/Makefile
for examples.
The upload
target in the root Makefile
demonstrates the build steps
for a complete release. You'll need to change the UPLOADDIR
macro in
the top-level Makefile
to point to your host if you want to use that.
You're free to upload whatever versions you desire individually, as
well.
Please keep these on the scale of typo and bug fixes. That way I don't have to consider any copyright issues when merging changes.