Macos交叉编译android的cmix压缩算法

这个比较简单只有makefile, 修改一下使用最新的anroid的ndk r27 下的llvm/prebuilt/darwin-x86_64/bin/ 下的编译工具即可,修改如下:

LFLAGS和CC改一下,注释的是原来的内容。然后执行make就可以了。

复制代码
#CC = clang++
CC = /Volumes/data/Codes/AndroidNDK12479018.app/Contents/NDK/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android21-clang++ 
LFLAGS = -std=c++14 -Wall

#all: LFLAGS += -Ofast -march=native
LFLAGS += -Ofast
all: cmix enwik9-preproc remap

debug: LFLAGS += -ggdb
debug: cmix enwik9-preproc remap

cmix: src/coder/decoder.cpp src/coder/decoder.h src/coder/encoder.cpp src/coder/encoder.h src/context-manager.cpp src/context-manager.h src/contexts/bit-context.cpp src/contexts/bit-context.h src/contexts/bracket-context.cpp src/contexts/bracket-context.h src/contexts/combined-context.cpp src/contexts/combined-context.h src/contexts/context-hash.cpp src/contexts/context-hash.h src/contexts/context.h src/contexts/indirect-hash.cpp src/contexts/indirect-hash.h src/contexts/interval-hash.cpp src/contexts/interval-hash.h src/contexts/interval.cpp src/contexts/interval.h src/contexts/sparse.cpp src/contexts/sparse.h src/mixer/byte-mixer.cpp src/mixer/byte-mixer.h src/mixer/lstm-layer.cpp src/mixer/lstm-layer.h src/mixer/lstm.cpp src/mixer/lstm.h src/mixer/mixer-input.cpp src/mixer/mixer-input.h src/mixer/mixer.cpp src/mixer/mixer.h src/mixer/sigmoid.cpp src/mixer/sigmoid.h src/mixer/sse.cpp src/mixer/sse.h src/models/bracket.cpp src/models/bracket.h src/models/byte-model.cpp src/models/byte-model.h src/models/direct-hash.cpp src/models/direct-hash.h src/models/direct.cpp src/models/direct.h src/models/indirect.cpp src/models/indirect.h src/models/fxcmv1.cpp src/models/fxcmv1.h src/models/match.cpp src/models/match.h src/models/model.h src/models/paq8.cpp src/models/paq8.h src/models/ppmd.cpp src/models/ppmd.h src/predictor.cpp src/predictor.h src/preprocess/dictionary.cpp src/preprocess/dictionary.h src/preprocess/preprocessor.cpp src/preprocess/preprocessor.h src/runner.cpp src/states/nonstationary.cpp src/states/nonstationary.h src/states/run-map.cpp src/states/run-map.h src/states/state.h
	$(CC) $(LFLAGS) src/coder/decoder.cpp src/coder/encoder.cpp src/context-manager.cpp src/contexts/bit-context.cpp src/contexts/bracket-context.cpp src/contexts/combined-context.cpp src/contexts/context-hash.cpp src/contexts/indirect-hash.cpp src/contexts/interval-hash.cpp src/contexts/interval.cpp src/contexts/sparse.cpp src/mixer/byte-mixer.cpp src/mixer/lstm-layer.cpp src/mixer/lstm.cpp src/mixer/mixer-input.cpp src/mixer/mixer.cpp src/mixer/sigmoid.cpp src/mixer/sse.cpp src/models/bracket.cpp src/models/byte-model.cpp src/models/direct-hash.cpp src/models/direct.cpp src/models/indirect.cpp src/models/fxcmv1.cpp src/models/match.cpp src/models/paq8.cpp src/models/ppmd.cpp src/predictor.cpp src/preprocess/dictionary.cpp src/preprocess/preprocessor.cpp src/runner.cpp src/states/nonstationary.cpp src/states/run-map.cpp -o cmix

enwik9-preproc: src/enwik9-preproc/article_reorder.h src/enwik9-preproc/main.cpp src/enwik9-preproc/misc.h src/enwik9-preproc/phda9_preprocess.h
	$(CC) $(LFLAGS) src/enwik9-preproc/main.cpp -o enwik9-preproc
	
remap: src/enwik9-preproc/article_remap.cpp
	$(CC) src/enwik9-preproc/article_remap.cpp -o remap

clean:
	rm -f cmix enwik9-preproc remap
相关推荐
聚美智数2 小时前
智能结构化识别-图片结构解析-图像结构化解析-照片结构化解析
android·java·数据库
mmsx7 小时前
Android 插件化架构:40 个 Gradle 模块的拆分、通信与共存
android·kotlin
mmsx7 小时前
Android 不改一行源码:用 AspectJ 做三类拦截
android·kotlin
TST-魚爷7 小时前
易视讯会议摄像头 + 全向麦克风实操讲解稿
android·电脑·钉钉·腾讯会议·zoom会议
嘟哩DuliDuli7 小时前
AI创作工作区的项目上下文与多模态任务边界
android·人工智能·安全·ai·软件工程
imDwAaY9 小时前
MySQL 存储引擎是什么?
android·数据库·mysql
Meteors.10 小时前
Android Compose学习02:基础组件与 Modifier
android·学习
其实防守也摸鱼11 小时前
存储管理:页面置换算法学习任务(测验题要求给出置换页面顺序,缺页次数,缺页率)
android·前端·数据库·学习·oracle·自动化
mmsx13 小时前
Android 地图上绘制 KML:解析、样式与渲染
android·xml
运行时异常13 小时前
【无标题】
android