一.在移植之前需要准备做一些前期准备:

1.移植zlib库

1.1获取zlib源码

1.2解压

tar xvf zlib-1.2.11.tar.xz

1.3交叉编译

1.3.1 指定交叉编译器

export CC=arm-linux-gnueabi-gcc

export AR=arm-linux-gnueabi-ar

1.3.2指定安装路径进行配置

./configure --prefix=$PWD/_install

1.3.3编译并安装

make && make install

2.编译openssl

2.1tar xvf openssl-1.0.2l.tar.gz

2.2设置一些环境变量方便使用

export CROSS=arm-linux-gnueabi

export CC=${CROSS}-gcc

export LD=${CROSS}-ld

export AS=${CROSS}-as

export AR=${CROSS}-ar

2.3获取一个针对当前版本的补丁

wget www.linuxfromscratch.org/patches/downloads/openssl/openssl-1.0.2l-compat_versioned_symbols-1.patch

2.4打补丁

patch -Np1 -i ../openssl-1.0.2l-compat_versioned_symbols-1.patch

2.5./Configure -DOPENSSL_NO_HEARTBEATS --openssldir=/home/jello/openssl-1.0.2l/_install shared os/compiler:arm-linux-gnueabi-  //openssldir是指定安装目录

2.6make

2.7make install

2.8生成动态库

2.8.1 切换到openssl的安装目录(笔者的安装目录为/home/jello/openssl-1.0.2l/_install)

  cd /home/jello/openssl-1.0.2l/_install

2.8.2 $AR -x libcrypto.a

2.8.3 $CC -shared *.o -o libcrypto.so
2.8.4 rm *.o
2.8.5 $AR -x libssl.a

2.8.6 $CC -shared *.o -o libssl.so

2.8.7 rm *.o

二.准备已经就绪,接下来就是编译openssh了

1.获取源码

git clone git://anongit.mindrot.org/openssh.git

2.编译

2.1 autoconf

2.2 autoheader

2.3 export CFLAGS="$CFLAGS -I/home/jello/openssl-1.0.2l/_install/include/ -fPIC"

2.4 export LDFLAGS="-L/home/jello/openssl-1.0.2l/_install"

2.5. LD=arm-linux-gnueabi-gcc

2.6 ./configure --with-ssl-dir=/home/jello/openssl-1.0.2l/_install \

--with-zlib=/home/jello/zlib-1.2.11/_install --host=arm-linux-gnueabi

2.7 make -j4

3.将生成的文件都拷贝到要移植的板子上吧!!!

移植openssh到arm linux的更多相关文章

  1. 成功移植SQLite3到ARM Linux开发板

    SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...

  2. 移植vsftpd到arm linux

    vsftpd即very secure FTP daemon(非常安全的FTP进程),是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux.BSD. ...

  3. 【转】移植vsftpd到arm linux

    vsftpd即very secure FTP daemon(非常安全的FTP进程),是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux.BSD. ...

  4. arm linux 移植 x265

    背景 本来想着把 x265编译到ffmpeg里面,搞定了x265的编译:但是一直报ERROR: x265 not found using pkg-config这个错误,我按照网上的资料,查看了ffbu ...

  5. 移植ARM linux下远程连接工具dropbear

    移植ARM linux下远程连接工具dropbear 原文地址:http://www.cnblogs.com/NickQ/p/9010529.html 移植zlib 下载地址:https://gith ...

  6. Linux 安装 go 以及 arm linux 移植 go

    背景 Go是一门全新的静态类型开发语言,具有自动垃圾回收,丰富的内置类型,函数多返回值,错误处理,匿名函数,并发编程,反射等特性. 从Go1.4之后Go语言的编译器完全由Go语言编写,所以为了从源代码 ...

  7. ARM Linux Qt 5.x.x 无标题栏

    /********************************************************************************* * ARM Linux Qt 5. ...

  8. ARM Linux从Bootloader、kernel到filesystem启动流程

    转自:http://www.veryarm.com/1491.html ARM Linux启动流程大致为:bootloader ---->kernel---->root filesyste ...

  9. 009-2010网络最热的 嵌入式学习|ARM|Linux|wince|ucos|经典资料与实例分析

    前段时间做了一个关于ARM9 2440资料的汇总帖,很高兴看到21ic和CSDN等论坛朋友们的支持和鼓励.当年学单片机的时候datasheet和学习资料基本都是在论坛上找到的,也遇到很多好心的高手朋友 ...

随机推荐

  1. Java非静态内部类为什么不能有静态成员

    我们可以把InnerClass看成OuterClass的非静态成员,它的初始化必须在外部类对象创建后以后进行,要加载InnerClass必须在实例化OuterClass之后完成 ,java虚拟机要求所 ...

  2. (3.3)mysql基础深入——mysql启动深入分析

    基础:(2.1)学习笔记之mysql基本操作(启动与关闭) 0.mysql启动的 3种方式 (1)mysql.server (2)mysqld_safe (3)mysqld 1.启动分析 [1.1]概 ...

  3. host文件常用地址

    #+UPDATE_TIME 2016-02-16 19:52:05 UTC+8#+MESSAGE#################################################### ...

  4. Hadoop 之日志管理—应用在 YARN 中运行时的日志

    背景: 在写这篇博文前,自己一直没有弄明白一个问题,“在 Map 函数和 Reduce 函数中使用 System.out.print 打印日志时,输出内容在哪里显示?”.试了好多回,在 log/* 目 ...

  5. HDU1712:ACboy needs your help(分组背包模板)

    http://acm.hdu.edu.cn/showproblem.php?pid=1712 Problem Description ACboy has N courses this term, an ...

  6. ReactNative前端开发者

    ReactNative前端开发者 文档版本0.0.2 Author: Necfol 说明: 本文档用于指导前端React Native的开发,如需开发其他其他框架应用,不适用本文档 前期准备 Reac ...

  7. entity framework 新增,更新,事务

    protected void Button1_Click(object sender, EventArgs e) { yyEntities _db; _db = new yyEntities(); t ...

  8. sql 各种锁

    SELECT * FROM table WITH (HOLDLOCK) 注意: 锁定数据库的一个表的区别 SELECT * FROM table WITH (HOLDLOCK) 其他事务可以读取表,但 ...

  9. Intro to Python for Data Science Learning 6 - NumPy

    NumPy From:https://campus.datacamp.com/courses/intro-to-python-for-data-science/chapter-4-numpy?ex=1 ...

  10. linux常用命令:chmod 命令

    chmod命令用于改变linux系统文件或目录的访问权限.用它控制文件或目录的访问权限.该命令有两种用法.一种是包含字母和操作符表达式的文字设定法:另一种是包含数字的数字设定法. Linux系统中的每 ...