This directory contains the Tanuki Java Service Wrapper binaries for all supported platforms.
The wrapper version is managed via version.txt (currently 3.7.0).
The easiest way to update all wrapper binaries:
ant updateWrapper
This will:
Downloads delta pack and updates Unix binaries:
./update-wrapper.sh # Update using version.txt
./update-wrapper.sh --version 3.6.5 # Specific version
Cross-compiles Windows x64 binaries using mingw-w64.
Requirements:
sudo apt install mingw-w64
./build-wrapper-win64.sh # Build using version.txt
./build-wrapper-win64.sh --version 3.6.5 # Specific version
| Platform | Directory | File |
|---|---|---|
| FreeBSD x86-64 | freebsd64/ | libwrapper.so |
| FreeBSD ARM64 | freebsd-arm64/ | libwrapper.so |
| Linux x86-64 | linux64/ | libwrapper.so |
| Linux ARM64 | linux64-armv8/ | libwrapper.so |
| macOS Universal | macosx/ | libwrapper-macosx-universal-64.jnilib |
| macOS ARM64 | macosx-arm64/ | libwrapper-macosx-arm-64.dylib |
| Windows x86-64 | win64/ | wrapper.dll |
Tanuki ships no 64-bit Windows binaries; win64/I2Psvc.exe and win64/wrapper.dll are cross-compiled from source by
build-wrapper-win64.sh. The JNI wrapper.dll is required by WrapperManager (service integration) and must match the exe version.
| Platform | Directory | File |
|---|---|---|
| FreeBSD x86-64 | freebsd64/ | i2psvc |
| FreeBSD ARM64 | freebsd-arm64/ | i2psvc |
| Linux x86-64 | linux64/ | i2psvc |
| Linux ARM64 | linux64-armv8/ | i2psvc |
| macOS Universal | macosx/ | i2psvc-macosx-universal-64 |
| Windows x86-64 | win64/ | I2Psvc.exe |
pkg_add -r apache-ant gmake openjdk7
# 64-bit only
ant -Dbits=64 compile-c-unix
strip --strip-unneeded bin/wrapper lib/libwrapper.so
chmod 644 bin/wrapper lib/libwrapper.so
# Rename "wrapper" to "i2psvc"
See linux-armv5/README.txt for cross-compilation instructions.
# Create universal binary
lipo -create wrapper-macosx-universal-64 -output i2psvc
lipo -create libwrapper-macosx-universal-64.jnilib -output libwrapper.jnilib
strip i2psvc
ant updater).ant pkg).installer/lib/wrapper/cache/version.txt to manage the wrapper version.