天天看點

ssh海思3531a開發闆的交叉編譯

作者: 使徒保羅

郵箱:[email protected]

聲明: 歡迎交流學習,如有任何疑問,請通過郵箱聯系本人

環境: ubuntu14.04 32位

功能: ssh 海思3531a交叉編譯,使3531a闆子支援scp協定,檔案和windows通過WinSCP工具自由

            的傳輸和拖拽

參考:   https://www.itdaan.com/tw/96d6707f3cff

1.下載下傳源碼包

openssh  http://mirror.aarnet.edu.au/pub/OpenBSD/OpenSSH/portable/ 

openssl  https://www.openssl.org/source/old/1.0.1/

zlib     http://www.zlib.net/

三個包的版本:  openssh-6.2p1  openssl-0.9.8l zlib-1.2.11

2.建立工作目錄

mkdir /work/ssh

cd /work/ssh

mkdir compressed install source 

目錄compressed用于存放源碼壓縮包

目錄install用于軟體安裝目錄

目錄source 用于源碼目錄

将下載下傳好的源碼包放到compressed目錄

ssh海思3531a開發闆的交叉編譯

并解壓到source目錄中去

ssh海思3531a開發闆的交叉編譯

3.交叉編譯zlib

cd /work/ssh/source/zlib-1.2.11

./configure --prefix=/work/ssh/install/zlib-1.2.11

修改Makefile:

CC=arm-hisiv300-linux-gcc

AR=arm-hisiv300-linux-ar

CPP =arm-hisiv300-linux-gcc -E

LDSHARED=arm-hisiv300-linux-gcc

make

make install

4.交叉編譯openssl

cd /work/ssh/source/openssl-0.9.8l

./configure --prefix=/work/ssh/install/openssl-0.9.8l  os/compiler:/opt/hisi-linux/x86-arm/arm-hisiv300-linux/target/bin/arm-hisiv300-linux-gcc

make 

make install

5.交叉編譯openssh

cd /work/ssh/source/openssh-6.2p1

./configure --host=arm-hisiv300-linux 

            --with-libs 

            --with-zlib=/work/ssh/install/zlib-1.2.11 

            --with-ssl-dir=/work/ssh/install/openssl-0.9.8l 

            --disable-etc-default-login 

            CC=/opt/hisi-linux/x86-arm/arm-hisiv300-linux/target/bin/arm-hisiv300-linux-gcc 

            AR=/opt/hisi-linux/x86-arm/arm-hisiv300-linux/target/bin/arm-hisiv300-linux-ar

make

6.将編譯好的檔案和庫放到開發闆相關的目錄

確定開發闆有一下目錄,如果沒有則建立.

/usr/local/bin/ 

/usr/local/sbin/ 

/usr/local/etc/ 

/usr/local/libexec/ 

/var/run/ 

/var/empty/

然後将交叉編譯主機/work/ssh/source/openssh-6.2p1/目錄中

scp  sftp  ssh  ssh-add  ssh-agent  ssh-keygen  ssh-keyscan拷貝到開發闆/usr/local/bin/ 

sshd 拷貝到開發闆 /usr/local/sbin/

moduli ssh_config sshd_config拷貝到開發闆/usr/local/etc/

sftp-server  ssh-keysign 拷貝到目標闆 /usr/local/libexec

然後cd交叉編譯主機/work/ssh/source/openssh-6.2p1/目錄生成key檔案

ssh-keygen -t rsa -f ssh_host_rsa_key -N ""

ssh-keygen -t dsa -f ssh_host_dsa_key -N ""

ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N ""

将生成的 ssh_host_*_key這3ge檔案copy到開發闆的 /usr/local/etc/目錄下

接着在開發闆中看看有沒有/usr/lib目錄,如果沒有就建立,将交差編譯主機的/work/ssh/install/zlib-1.2.11/lib目錄中的libz.so.1檔案拷貝到開發闆/usr/lib/目錄下

7.修改開發闆的passwd檔案

在開發闆/etc/passwd 中添加下面這一行

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

ssh海思3531a開發闆的交叉編譯

8.測試

在開發闆運作

#/usr/local/sbin/sshd

可以用ps指令檢視sshd是否在工作

ssh海思3531a開發闆的交叉編譯