当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 >
将mysql库移植到arm板上
时间:2018-09-29作者:华清远见

首先更新虚拟机下载源

sudo apt-get update

在安装mysql时./configure容易出现错误error: No curses/termcap library found

原因是缺少ncurses安装包

解决方法:

sudo apt-cache search ncurses

sudo apt-get install libncurses5-dev

如果要将库移植到arm板上的话就需要下载ncurses包进行安装

下载ncurses-5.9.tar.gz

ftp://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz

先安装ncurses

tar -xzvf ncurses-5.9.tar.gz

mkdir ncurses

cd ncurses-5.9/

./configure --prefix=/home/farsight/ncurses CC=arm-none-linux-gnueabi-gcc --host=arm-none-linux-gnueabi --enable-static --enable-shared

make

make install

安装完成后,开始编译mysql库

首先下载mysql数据库源码http://download.chinaunix.net/download.php?id=34712&ResourceID=7159

将源码拷贝到虚拟机中并解压,进入源码文件

tar xzvf mysql-5.1.51.tar.gz

mkdir mysql

cd mysql-5.1.51/

修改文件中的configure配置文件(注释掉不允许交叉编译的部分)

修改配置文件:打开configure,可以使用gedit configure 分别在第26453行、 48175行、 48282行、 48485行附近有类似代码: 

        if test "$cross_compiling" = yes; then 

        { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 

        { { $as_echo "$as_me:$LINENO: error: cannot run test program while cross 

        compiling See \`config.log' for more details." >&5 

        $as_echo "$as_me: error: cannot run test program while cross compiling See \`config.log' for more details." >&2;} 

        { (exit 1); exit 1; }; }; } 

        Else 

        将这些代码改为: 

        if test "$cross_compiling" = yes;  then 

        echo “skip …..!” 

        #{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 #$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 

        #{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling See \`config.log' for more details." >&5 

        #$as_echo "$as_me: error: cannot run test program while cross compiling See \`config.log' for more details." >&2;} 

        #{ (exit 1); exit 1; }; }; } 

        Else 

        一定注意,这样的代码有4部分,要全部改掉

接下来进行库的安装

./configure --prefix=/home/farsight/mysql CC=arm-none-linux-gnueabi-gcc --host=arm-none-linux-gnueabi 

--enable-static --enable-shared预处理

make 编译(在这个过程中可能会出现一个错误,但是对库的影响不大,可忽略)

make install 下载并安装

完成后可在mysql中出现五个文件夹

需要将include文件夹下的文件考到/usr/include下进行编译

将lib文件夹下的内容拷贝到arm板的lib文件夹下

在虚拟机中进行编译时需要注意如果连接不到库可在编译时加入连接库的方式

-L//home/farsight/mysql/lib/mysql


发表评论

全国咨询电话:400-611-6270,双休日及节假日请致电值班手机:15010390966

在线咨询: 曹老师QQ(3337544669), 徐老师QQ(1462495461), 刘老师 QQ(3108687497)

企业培训洽谈专线:010-82600901,院校合作洽谈专线:010-82600350,在线咨询:QQ(248856300)

Copyright 2004-2018 华清远见教育集团 版权所有 ,京ICP备16055225号,京公海网安备11010802025203号