计算机系菜鸟一个..  初次开独立博客,请多多指教!


http://pan.baidu.com/s/1s0yho

to friends on xda-developers:
You can download the zipalign binary form here:https://drive.google.com/file/d/0B80avtrsR4-rcENWQ3RiLWF4ejg/edit?usp=sharing

玩odex的时候zipalign(安卓上运行的版本)不管用了。提示“cannot locate symbol ‘_ZN7android10VectorImpl19reservedVectorImpl6Ev’”
应该是谷歌在4.4改了一些标志。网上一搜还害得其他很多应用不能正常用了。
只好自己编译
由于不知道如何单独编译一个文件,只好在编译包的时候顺便编译一个出来了,修改zipalign的编译文件增加编译安卓版本的脚本:

oubeichen@Ubuntu:~/Mokee_43/build$ git diff
diff --git a/tools/zipalign/Android.mk b/tools/zipalign/Android.mk
index 708c8bf..f6656af 100644
--- a/tools/zipalign/Android.mk
+++ b/tools/zipalign/Android.mk
@@ -5,6 +5,31 @@
 #
 
 LOCAL_PATH:= $(call my-dir)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := zipalign
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
+LOCAL_SRC_FILES := \
+       ZipAlign.cpp \
+       ZipEntry.cpp \
+       ZipFile.cpp
+
+LOCAL_C_INCLUDES += \
+        external/zlib
+LOCAL_SHARED_LIBRARIES := \
+        libandroidfw libz
+LOCAL_STATIC_LIBRARIES := \
+       libutils \
+       libcutils \
+       liblog \
+
+ifeq ($(HOST_OS),linux)
+LOCAL_LDLIBS += -lrt
+endif
+
+include $(BUILD_EXECUTABLE)#build target
+
 include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES := \

然后在device的编译配置文件中加一句:
(add a line to the device tree, device.mk or BoardConfig.mk etc.)

PRODUCT_PACKAGES += zipalign

就可以在/system/xbin里面找到了。