Are you encountering the same error message while installing and accessing Zipalign from the official repository in the latest version of Kali Linux?
zipalign: symbol lookup error: zipalign: undefined symbol: _ZN11zip_archive6WriterD2Ev
Then, don’t worry; in this article, I’ll guide you through a solution that I’ve found and that has worked.
[Reason] Causes of Zipalign Error and Steps to Reproduce It
The aforementioned issues mainly arise when Zipalign is installed from the official repository. For instance, upon installing Zipalign in my latest Kali Linux 2023.4 using the APT command and attempting to access the
zipalign command, the previously mentioned error occurred.
$ sudo apt install zipalign
The reason for this error is unknown, but upon my inspection, the most probable cause appears to be the older version of the package in the APT repository.
If you are a little bit familiar with the workings of an APT repository, you may already know that the latest versions of any packages in the APT repository are thoroughly inspected before being made available to everyone.
And this procedure is quite lengthy, and sometimes the existing package, whose latest version is already available, depends on other packages or dependencies that are already updated to the latest version in the APT repository, creating a dependency error.
The solution I’ve discovered for Zipalign is to install its latest stable version based on your Linux distribution, indirectly indicating that this package is also affected by the dependencies error.
So, let’s keep all this aside and look at the steps to solve Zipalign issues in your Kali Linux or any other Debian-based distribution.
[Fixed] Solving the Zipalign Error in Kali Linux or Other Debian-Based Distributions
Here is a step-by-step guide to resolving the Zipalign error in Kali Linux and other Debian-based distros.
1. To resolve the Zipalign error, ensure that you first remove the existing Zipalign package from your Linux system by executing the following command:
$ sudo apt --purge remove zipalign
2. Then, visit this link, and in some rare cases, it may prompt the captcha; solve it to continue.
3. When you successfully solve the captcha, you will interact with the following screen.
Here, you need to identify the correct version of the Zipalign package based on your Linux distribution. For instance, I’m using the latest version of Kali Linux 2023.4, and the Zipalign package based on Debian 10 (Buster) worked flawlessly for me.
For other Debian-based distributions or when a new version of Kali Linux is released, it might be possible that the mentioned package won’t work. In such cases, you have to experiment with the different Zipalign packages listed on this page.
4. Let’s navigate to the “Debian 10 (Buster)” section and select “zipalign_8.1.0+r23-2_amd64 .deb” under “Debian Main amd64“—ideal for Linux x64 systems.
5. Performing the previous step will redirect you to the selected Zipalign page. There, you should scroll down, locate the “Download” table, and copy the specified “DEB package URL” from the “Binary Package” section.
6. Here, you can either paste the copied URL into a new browser tab to download it or use the wget command to download the Zipalign DEB package from the copied URL.
$ wget http://ftp.de.debian.org/debian/pool/main/a/android-platform-build/zipalign_8.1.0+r23-2_amd64.deb
7. Once the Zipalign package is downloaded, ensure it is in the current directory, and then execute the following command to initiate the Zipalign package installation process.
$ sudo apt install ./zipalign_*_amd64.deb
8. Once installation is complete, you can execute the
zipalign command to ensure that the previous error is not thrown.
Congratulation!!! You have successfully installed the Zipalign package and removed the irritating symbol lookup error.
If the error recurs in some rare cases, try checking a different version from the Zipalign pkgs page, as indicated in step 3. Then ensure to remove the existing Zipalign package and follow the steps mentioned in this article.
If you are still having some difficulties, then do let me know in the comment section.
Till then, peace!