Download, compile and install commonly used software to a custom path.
- Star the repo before clone
- File issue if it does not work
- Unstar if you feel it is unmaintained
# configure setup path, you can put them into your `.bashrc` or `.zshrc`
export ZZROOT=$HOME/app
export PATH=$ZZROOT/bin:$PATH
export LD_LIBRARY_PATH=$ZZROOT/lib:$ZZROOT/lib64:$LD_LIBRARY_PATH
# e.g. install git
sh zzgit.sh
jlinstall
is another way to install softwares.
It uses pre-built binaries so that no compilation is needed.
The default install path of jlinstall
is JLROOT=$ZZROOT/jl
.
export ZZROOT=$HOME/app
export JLROOT=$ZZROOT/jl
export PATH=$ZZROOT/bin:$JLROOT/bin:$PATH
export LD_LIBRARY_PATH=$ZZROOT/lib:$ZZROOT/lib64:$JLROOT/lib:$JLROOT/lib64:$LD_LIBRARY_PATH
NOTE:
If the download speed of the machine is too slow, you can put the git.tar.gz
(using git as an example) into $ZZROOT/downloads
before running the script.
For the download link, check the DOWNLOADURL
variable in its script; for the exact name of the software, check the NAME
variable.
NOTE2: If you compile from source, please make sure that they are compiled using the same gcc version!
Verified on Ubuntu 18.04
Updated: Dec 31, 2019
- boost (1.71.0)
- install script:
./zzboost.sh
- post install:
export BOOST_ROOT=$ZZROOT
- install script:
- gmp (6.1.2)
- install script:
./zzgmp.sh
- install script:
- mpc (1.1.0)
- depends on:
gmp
,mpfr
- install script:
./zzmpc.sh
- depends on:
- mpfr (4.0.2)
- depends on:
gmp
- install script:
./zzmpfr.sh
- depends on:
- nasm (2.14.02)
- install script:
./zznasm.sh
- install script:
- yasm (1.3.0)
- install script:
./zzyasm.sh
- install script:
- ncurses (6.1)
- install script:
./zzncurses.sh
- post install:
export TERMINFO=$ZZROOT/share/terminfo
- install script:
- freetype (2.10.1)
- install script:
./zzfreetype.sh
- install script:
- opencv (4.1.2)
- note: this config is designed for denseflow. Please modify the cmake flags for your needs.
- depends on:
ccache
,ffmpeg
- install script:
./zzopencv.sh
- post install:
export OpenCV_DIR=$ZZROOT
- openssl (1.1.1d)
- note: both
PREFIX
andOPENSSLDIR
are set to$ZZROOT/ssl
- install script:
./zzopenssl.sh
- post install: for cmake
export OPENSSL_ROOT_DIR=$ZZROOT/ssl
, and for configure--with-ssl=$ZZROOT/ssl
- note: both
- libcurl (7.67.0)
- depends on:
autoconf
,automake
,libtool
,m4
,nroff
,perl
,openssl
- install script:
./zzlibcurl.sh
- depends on:
- libevent (2.1.11)
- install script:
./zzlibevent.sh
- install script:
- libvpx (master)
- install script:
./zzlibvpx.sh
- install script:
- libx264 (master)
- install script:
./zzlibx264.sh
- install script:
- libx265 (3.2.1)
- install script:
./zzlibx265.sh
- install script:
- libz (1.2.11)
- install script:
./zzlibz.sh
- install script:
- libzstd (1.4.4)
- install script:
./zzlibzstd.sh
- install script:
- libzip (1.5.2)
- install script:
./zzlibzip.sh
- install script:
- libtool (2.4.6)
- install script:
./zzlibtool.sh
- install script:
- libjpeg (6b)
- depends on:
libtool
- install script:
./zzlibjpeg.sh
- depends on:
- libjpeg-turbo (2.0.3)
- depends on:
nasm
,yasm
- install script:
./zzlibjpeg-turbo.sh
- depends on:
- libpng (1.6.37)
- install script:
./zzlibpng.sh
- install script:
- libtiff (4.1.0)
- install script:
./zzlibtiff.sh
- install script:
- libwebp (1.0.3)
- install script:
./zzlibwebp.sh
- install script:
- giflib (5.2.1)
- install script:
./zzgiflib.sh
- install script:
- libopenjp2 (2.3.1)
- install script:
./zzlibopenjp2.sh
- install script:
- ccache (3.7.6)
- install script:
./zzccache.sh
- install script:
- cmake (3.16.0)
- install script:
./zzcmake.sh
- install script:
- anaconda3 (2019.10)
- note: anaconda is installed default on
$HOME/anaconda3
- install script:
./zzconda.sh
- post install:
export PATH=$HOME/anaconda3/bin:$PATH
- note: anaconda is installed default on
- ffmpeg (4.2.1)
- depends on:
nasm
,yasm
,libx264
,libx265
,libvpx
- install script:
./zzffmpeg.sh
- depends on:
- gcc (7.5.0)
- note: CUDA 10 support up to gcc 7, CUDA 9 support up to gcc 5.
- depends on:
gmp
,mpfr
,mpc
- install script:
./zzgcc.sh
- git (2.24.0)
- depends on:
libcurl
,libz
- install script:
./zzgit.sh
- depends on:
- hdf5 (1.10.5)
- install script:
./zzhdf5.sh
- install script:
- htop (2.2.0)
- depends on:
ncurses
- install script:
./zzhtop.sh
- depends on:
- julia (1.3.0)
- install script:
./zzjulia.sh
- install script:
- autojump (master)
- install script:
./zzautojump.sh
- post install: put lines of configs in
.zshrc
- install script:
- imagemagick (latest)
- depends on:
freetype
,libjpeg-turbo
,libpng
,perl
- install script:
./zzimagemagick.sh
- depends on:
- nmon (16j)
- depends on:
ncurses
- install script:
./zznmon.sh
- depends on:
- zsh (5.7.1)
- depends on:
ncurses
- install script:
./zzzsh.sh
- post install: to set
zsh
as default shell without root, addexec $ZZROOT/bin/zsh -l
to.bashrc
(example)
- depends on:
- ohmyzsh (latest)
- depends on:
zsh
- install script:
./zzohmyzsh.sh
- depends on:
- perl (5.30.1)
- install script:
./zzperl.sh
- install script:
- tmux (3.0a)
- depends on:
libevent
- install script:
./zztmux.sh
- depends on:
- unrar (5.8.4)
- install script:
./zzunrar.sh
- install script:
- vmtouch (1.3.1)
- install script:
./zzvmtouch.sh
- install script:
- sshpass (support 2-step verification)
- depends on:
oathtool
,autoconf
- install script:
./zzsshpass.sh
- depends on:
- denseflow (extract frames, optical flow, resize, and more!)
- depends on:
boost
,opencv
- install script:
./zzdenseflow.sh
- depends on:
- wslssh.bat (use ssh of wsl in win10, no installation,
.bat
script as is)- depends on:
sshpass
- you can set
vscode
ssh path to thiswslssh.bat
, work together withsshpass
(installed in wsl)
- depends on:
- sshkey.sh (gen an ssh key)
- run script:
./sshkey.sh
- run script:
- zshplugin.sh (completions, autosuggestions, syntax-highlighting)
- depends on:
git
- install script:
./zshplugin.sh
- post install: put lines of configs in
.zshrc
- depends on:
- nordtmux.sh (nord theme for tmux)
- depends on:
git
,tmux
- install script:
./nordtmux.sh
- depends on:
- dircolor.sh (nord theme for zsh)
- install script:
./dircolor.sh
- post install: put lines of configs in
.zshrc
- install script:
.tmux.conf
(tmux configuration).zshrc
(zsh configuration).netrc
(lftp password-less configuration).ssh/config
(suppress git clone warnings).lftp/rc
(suppress lftp ssl warning)
- opengl on remote machine
- useful Julia packages: ArgParse Glob Images FileIO StatsBase Shell UnicodePlots PyCall PyPlot Plots ImageFiltering ImageMagick Interpolations Revise OhMyREPL DataFrames ProgressMeter JLD2 Distances ImageTransformations JuMP HDF5 ImageInTerminal ImageView DataStructures JSON JuliaFormatter
- free JuMP solvers: Cbc Clp COSMO CSDP ECOS GLPK Juniper OSQP ProxSDP SCS SDPA
- good reference: http://www.linuxfromscratch.org/lfs/view/development/index.html and http://www.linuxfromscratch.org/blfs/view/svn/index.html and https://pkgs.org/
- CUDA arch and CUDA gencode list
- Good note on how to load jpeg faster. https://docs.fast.ai/performance.html
- View image in terminal: viu and tiv
-
Q: My boost segfaluts :(
A: Make sure they the boost are comipiled and linked using the same gcc/g++ version -
Q:
Cert verify failed: BADCERT_NOT_TRUSTED
:(
A: Tryexport SSL_CERT_DIR=/etc/ssl/certs
-
Q:
warning: templates not found in /workspace/destdir/share/git-core/templates
:(
A: Add the following to$HOME/.gitconfig
[init]
templatedir = $HOME/app/share/git-core/templates
- Q:
fatal: unable to find remote helper for 'https'
:(
A: Add the following to$HOME/.zshrc
(or.bashrc
of course)
export GIT_EXEC_PATH=$ZZROOT/libexec/git-core
export GIT_SSL_CAINFO=/etc/ssl/certs/ca-bundle.crt
- Q:
Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications.
:(
A: Add the following to$HOME/.zshrc
(or.bashrc
of course)
export GIO_EXTRA_MODULES=/usr/lib/x86_64-linux-gnu/gio/modules/
- Q:
import pyvips
segfault :(
A: Make suregstreamer-orc <0.4.30
,imagemagick <7.0.9
.
conda install -c conda-forge imagemagick=7.0.8
conda install -c conda-forge gstreamer-orc=0.4.29
- Q: GitError(Code:ECERTIFICATE, Class:SSL, the SSL certificate is invalid: 0x08 - The certificate is not correctly signed by the trusted CA) :(
A: Run the following
julia> import LibGit2
julia> LibGit2.set_ssl_cert_locations("/etc/ssl/certs/ca-certificates.crt")
- Q: dotnet error :(
A: Add the following to$HOME/.zshrc
(or.bashrc
of course)
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true
export MSBuildSDKsPath=$DOTNET_ROOT/sdk/3.1.102/Sdks