Files
pmt-renovated/RELEASE-TYPES.md

3.5 KiB
Raw Blame History

Release Types

This project provides four different release packages, each tailored for specific Android device architectures and usage preferences.


The Four Release Files

File Name Architecture Bitness Library Type Description
pmt-arm64-v8a.zip ARM64 (ARMv8-A) 64-bit Dynamic (.so) For 64-bit devices, uses dynamic libraries. Requires accompanying .so files (libhelper and libpartition_map).
pmt-static-arm64-v8a.zip ARM64 (ARMv8-A) 64-bit Static (.a) Fully static build for 64-bit devices. No external dependencies. Great for general use and ADB environments.
pmt-armeabi-v7a.zip ARM (ARMv7) 32-bit Dynamic (.so) For 32-bit devices, uses dynamic libraries. Requires .so files (libhelper and libpartition_map).
pmt-static-armeabi-v7a.zip ARM (ARMv7) 32-bit Static (.a) Fully static build for 32-bit devices. No external dependencies. Great for general use and ADB environments.

Architecture & Bitness Explained

  • ARM64 (arm64-v8a):
    This is a 64-bit architecture used by newer Android devices. It can handle larger amounts of memory and generally runs faster for heavy tasks.

  • ARM (armeabi-v7a):
    This is a 32-bit architecture common on older or less powerful Android devices. It has some limitations compared to 64-bit but is still widely supported.


Dynamic vs Static Libraries

The project relies on two helper libraries:

  • libhelper
  • libpartition_map

Dynamic Versions (.so files)

  • In the non-static (pmt-arm64-v8a.zip and pmt-armeabi-v7a.zip) packages, these libraries are compiled as shared objects (.so files).
  • This means that the main program (pmt) depends on these libraries being present on the device or alongside the executable to run correctly.
  • If these libraries are missing, the program will fail to start.
  • These builds are mostly for developers or users who want to customize or work closely with the libraries.

Static Versions (.a files)

  • The static packages (pmt-static-arm64-v8a.zip and pmt-static-armeabi-v7a.zip) include these libraries inside the main executable by linking them statically.
  • This means the pmt binary is completely self-contained and does not require any external .so files.
  • These versions are ideal for general users and especially convenient for ADB usage, where installing separate .so files might be cumbersome.

Which Should You Use?

  • If you want a hassle-free experience and dont want to worry about missing libraries, choose the static version matching your devices architecture.
  • If you are a developer or want to experiment with the libraries separately, or save space by sharing .so files between multiple programs, the dynamic version is the way to go.

Summary

Release Type Architecture Dependencies Best For
Static 32-bit / 64-bit None (fully standalone) General users, ADB usage
Dynamic 32-bit / 64-bit Requires .so libs Developers, advanced users

If youre unsure which one to pick, try the static version first — it works out of the box on all supported devices.