Sometimes I find myself forgetting how I configured and built particular software. This page is to remind myself of my base configuration and perhaps help others with similar issues.

### Package Manager and Environment

I usually use the brew package manager due to its apparent and rather surprising robustness. I use MacPorts on my vintage Macs such as my iMac G3 since its PowerPC packages are still maintained. But brew seems to be far less invasive than MacPorts, going so far as to not require administrative privileges to install packages. Whatever package manager is used, I suggest being consistent, brew built software tends to easily find other brew packages - same with MacPorts. It is difficult to mix and match packages from different package managers.

### Various Packages

#### GNU

Since this is the 21st and GNU really is the UNIX standard somewhat ironically - it is important to replace the deprecated BSD utils with their respective GNU coreutils. For example, sed becomes gsed, readlink becomes greadlink and so on. Just do

brew install coreutils

If you want to do any sort of useful/common software development, you'll want to install the following packages.

#### Common

brew install cmake
brew install python3
brew install pkg-config

#### Mathematics

If you like to do mathematics(which there is really no reason you shouldn't), you may wish to install the following

brew install maxima
brew install wxmaxima
pip3 install --user numpy scipy matplotlib ipython jupyter pandas sympy nose

#### FPGA Dev

brew install yosys
brew install icarus-verilog
brew install verilator

#### Embedded Dev

In case you have an MBED or Arduino lying around and don't already have enough troubles as it is.

brew tap ArmMbed/homebrew-formulae
brew install arm-none-eabi-gcc
brew tap osx-cross/avr
brew install avr-libc
• /var/www/html/container/dokuwiki-2018-04-22a/data/pages/meta/software.txt