Need help with bgnet?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

beejjorgensen
381 Stars 77 Forks 110 Commits 2 Opened issues

Description

Beej's Guide to Network Programming source

Services available

!
?

Need anything else?

Contributors list

Beej's Guide to Network Programming

This is the source for Beej's Guide to Network Programming.

If you merely wish to read the guide, please visit the Beej's Guide to Network Programming website.

This is here so that Beej has everything in a repo and so translators can easily clone it.

Build Instructions

Dependencies

Mac dependencies install (reopen terminal after doing this):

xcode-select --install                  # installs make
brew install python                     # installs Python3
brew install pandoc
brew cask install mactex                # installs XeLaTeX
brew tap homebrew/cask-fonts
brew cask install font-liberation-sans  # installs sans, serif, and mono

Build

  1. Type
    make
    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.

  1. Type

    make stage
    to copy all the build products and website to the
    stage
    directory.
  2. 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.

Build via Docker

If you don't want to mess with a local setup, you can build via Docker.

  1. Run

    docker build -t beej-bgnet-builder .
    from the top-level directory.
  2. Run

    docker run --rm -v "$PWD":/guide -ti beej-bgnet-builder
    .

This will mount the project where the image expects it, and run

make
   pristine all stage
, leaving your
./stage
directory ready to be published.

Pull Requests

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.

TODO

Content

  • File transfer example maybe in son of data encapsulation
  • Multicast?
  • Event IO?

Bug fixes

  • When pandoc 2.8 comes up, switch all man page subheaders to h3 and supress them from the table of contents.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.