Использование библиотеки C в Android NDK с внешней зависимостью

У меня есть библиотека OCR, написанная на C, которую я хочу запустить на Android с помощью Native Development Kit (NDK). Я опытный разработчик Android, но не с NDK (или C в этом отношении). Я настроил множество примеров программ Hello World, и теперь я думаю, что первый вопрос, на который мне нужно ответить:

Для библиотеки OCR требуется другая зависимость в файле makefile: libtiff, которая обеспечивает поддержку файлов изображений .TIFF. Как добавить эту зависимость в проект и представить ее в файле Android.mk? Кто-нибудь может ссылаться на какие-либо похожие примеры?

Вот некоторый код из make-файла OCR:

TIFF    = {your_tiff_path}/libtiff.a
INCLUDES= {your_tiff_path}/include
DEFS    = -DDO_USE_32BIT -DLUT_POPCNT -DTIFF_FORMAT
OPT     = -O3
CFLAGS  = $(OPT) -g $(INCLUDES) $(PROFILE) $(DEFS)
# Add -m32 to build 32bit on 64bit machine
CC      = gcc -m32
LDFLAGS = $(OPT) $(PROFILE)

OBJECTS = cputime.o BitArr.o bits.o chardat.o symbol.o page.o get_skew.o \
    ccrx.o readtiff.o label.o glyph.o loadcontrols.o loadbestfont.o \
    qsegment.o makeBnodes.o makeLnodes.o runocr.o lineocr.o extract.o \
    splitchars.o compare.o scoreit.o lm_class.o lmdp.o \
    ocrfont.o glyphsubs.o binio.o ocrmain.o unicode.o

TARGET = ccr8

$(TARGET):  $(OBJECTS)
    $(CC) $(LDFLAGS) -o $(TARGET) $(OBJECTS) $(TIFF) -lm -lc 

label.o:        label.c page.h CCR.h BitArr.h bits.h 
...
...
...

1 ответ

Решение

Используйте "автономный набор инструментов" - это инструмент для повторного использования универсальных make-файлов для Android. Это хорошо описано в документах, которые вы установили вместе с NDK.

Другие вопросы по тегам