There’s a maximum number 16 connections hard code in aria2 so when I want to add more connections I need to edit a line of code and recompile it
Edit max connections per server
Edit number arguments in NumberOptionHandler for MAX_CONNECTION_PER_SERVER in file “OptionHandlerFactory.cc”
from 16 to 64 the number is as you want.
OptionHandler* op(new NumberOptionHandler(PREF_MAX_CONNECTION_PER_SERVER,
TEXT_MAX_CONNECTION_PER_SERVER,
"1", 1, 64, 'x'));
Build the aria 2
Install following packages.
- libxml2-dev
- libcppunit-dev
- autoconf (gettext)
- automake
- autotools-dev
- autopoint
- libtool
You can install all of it by running this command.
brew install gettext automake autoconf libtool libxml2 cppunit
If you install LibXML with brew you also need to link it to /usr/local/include/
.
sudo ln -s /usr/local/opt/libxml2/include/libxml2/libxml /usr/local/include/libxml
Add Gettext and libxml2 to your path for me it’s ~/.zshrc
.
# gettext
export PATH=${PATH}:/usr/local/opt/gettext/bin
# libxml2
export PATH="/usr/local/opt/libxml2/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/libxml2/lib"
export CPPFLAGS="-I/usr/local/opt/libxml2/include"
Generate configs.
autoreconf -i
Run config that you just create.
./configure
I’ll just use the default configuration.
If you want more details of it you can just copy steps from the homebrew script here https://github.com/Homebrew/homebrew-core/blob/master/Formula/aria2.rb.
Use make file to compile the code
make
Test all code (you can skip this step).
make check
Run make install to generate the binary file.
make install
Then you’ll get a new aria2c binary file complied in /usr/local/bin/
directory.
You can check by the command.
ls -latr /usr/local/bin/
Test the compiled aria2 binary file
Make sure /usr/local/bin/
is in your path.
Now you can test the aria2c binary file that you just compile.
aria2c -k 1M -s 64 -x 64 http://ipv4.download.thinkbroadband.com/1GB.zip
Basic Options
-k, –min-split-size=<SIZE>
- minimum split size
-s, –split=<N>
- split file to N part
-x, –max-connection-per-server=<NUM>
- maximum number of connections to one server.
You’ll see the number of connections is 64.
Done, Now you can use the binary file and unlock the aria 2 connections limit.