1. 程式人生 > >移植qrencode到ARM-Linux,實現字串生成二維碼圖片

移植qrencode到ARM-Linux,實現字串生成二維碼圖片

系統環境:Ubuntu 12.04.3 LTS
交叉編譯器:arm-none-linux-gnueabi-gcc(v4.5.2)

1、交叉編譯zlib庫
tar -xzvf zlib-1.2.3.tar.gz
export CC=arm-none-linux-gnueabi-gcc
./configure –shared
make
make install

生成:
/usr/local/include/zconf.h zlib.h
/usr/local/lib/libz.so libz.so.1 libz.so.1.2.3

2、交叉編譯libpng庫
tar -xzvf libpng-1.2.12.tar.gz
export LDFLAGS=”-L/usr/local/lib”
export CPPFLAGS=”-I/usr/local/include”
./configure –host=arm-linux

vim config.h
註釋掉#define malloc rpl_malloc

make
make install
生成:/usr/local/include/libpng12 pngconf.h png.h
/usr/local/lib/ibpng12.a libpng12.so libpng12.so.0.12.0

3、交叉編譯qrencode工具
tar -xzvf qrencode-3.4.4.tar.gz
./configure –host=arm-linux –prefix=/usr/local/qrencode-arm-linux –x-libraries=/usr/local/lib

vi Makefile
新增
LIBS = -lz

make
make install
生成:/usr/local/qrencode-arm-linux

4、移植
將/usr/local/liblibpng12.so libpng12.so.0 libpng12.so.0.12.0 和
/usr/local/qrencode-arm-linux/lib/libqrencode.la libqrencode.so libqrencode.so.3 libqrencode.so.3.4.4 ;
移植到arm板子的/usr/lib 下

將 /usr/local/qrencode-arm-linux/lib/qrencode 移植到板子的/usr/bin下

5、測試
qrencode -s 4 -o 4.png 1234567890
qrencode -s 5 -o 5.png 1234567890
qrencode -s 6 -o 6.png 1234567890

6、效果圖
 4.png

 5.png

 6.png