linux编译相关(13) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

#交叉编译openssl ------
直接修改Makefile
新加这一行:
CROSS_COMPILE= arm-unknown-linux-gnueabi-
定位到以下行
CC= cc改成CC= $(CROSS_COMPILE)gcc
定位到以下行
AR=ar $(ARFLAGS) r
RANLIB= /usr/bin/ranlib
改成
AR=$(CROSS_COMPILE)ar $(ARFLAGS) r
RANLIB= $(CROSS_COMPILE)ranlib
然后修改安装的路劲,定位到以下两行
INSTALLTOP=/usr/local/ssl
OPENSSLDIR=/usr/local/ssl
改成实际安装路径,由于不是在本机运行,所以可以任意指定位置
INSTALLTOP= /someplace/openssl

OPENSSLDIR= /someplace/openssl

重点在这里!!!

以上部分都是按网上资料改的,经过测试可以生成静态库,但生成动态库的修改点却跟网上说的不一样,经过实践需要修改如下几个地方:

先执行如下脚本初步配置一下:
./config no-asm shared --prefix=/home/rebi/cross_tools/build_openssl-1.0.1c/_install
最终总结:需要先执行上面的config,然后手动修改生成的Makefile,并且找到有-m64的地方,全删之(共2处)
然后修改生成的Makefile
最开始,新加这一行:
CROSS_COMPILE= arm-unknown-linux-gnueabi-
定位到以下行
CC= cc改成CC= $(CROSS_COMPILE)gcc
定位到以下行(---这两个不改应该也可以---)
AR=ar $(ARFLAGS) r
RANLIB= /usr/bin/ranlib
改成
AR=$(CROSS_COMPILE)ar $(ARFLAGS) r
RANLIB= $(CROSS_COMPILE)ranlib

经过如上配置,就能同时生成静态和动态库了。

 
0

openssl-1.0.1c交叉编译动态库(转)的更多相关文章

  1. 修改OpenSSL默认编译出的动态库文件名称

    在 Windows 平台上调用动态链接库 dll 文件时,有两种方式:a) 隐式的加载时链接:使用 *.lib (导入库)文件,在 IDE 的链接器相关设置中加入导入库 lib 文件的名称,或在程序中 ...

  2. c/c++编译器配置(交叉编译重要参数)、交叉编译动态库与as配置、mk初步

    gcc/g++/clang,相当于javac: 了解c/c++编译器的基本使用,能够在后续移植第三方框架进行交叉编译时,清楚的了解应该传递什么参数. clang: clang 是一个C.C++.Obj ...

  3. libjpeg 交叉编译动态库和静态库

    1.下载libjpeg库,解压之     得到了jpeg6b和libtool-2.2.4两个文件夹. 2.编译安装libtool工具.   这是配置libtool,这里需要注意:configure 参 ...

  4. Windows的静态库与动态库

    Windows的静态库与动态库 1.静态库 1.1 静态库特点 运行不存在 静态库源码被链接到调用程序中 目标程序的归档 1.2 C语言静态库 C静态库的创建 创建一个静态库项目. 添加库程序,源文件 ...

  5. C/C++ 跨平台交叉编译、静态库/动态库编译、MinGW、Cygwin、CodeBlocks使用原理及链接参数选项

    目录 . 引言 . 交叉编译 . Cygwin简介 . 静态库编译及使用 . 动态库编译及使用 . MinGW简介 . CodeBlocks简介 0. 引言 UNIX是一个注册商标,是要满足一大堆条件 ...

  6. vs2008编译openssl,静态库/动态库,批处理

    ::前期准备准备工作::1,下载安装好ActivePerl,::2,下载Openssl源码::3,本机有安装vc::4,此例在vs2008(vc9),openssl-1.0.2o下完成 echo of ...

  7. openssl动态库编译

    通常Linux系统自带OpenSSL,但是其so文件由于没有debug信息,因此无法跟踪内部函数,对于学习 不太方便,需要通过源码重新安装.         我的Linux系统是CentOS7,自带的 ...

  8. Android:JNI与NDK(二)交叉编译与动态库,静态库

    欢迎关注公众号,第一时间获取最新文章: 本篇目录 一.前言 本篇主要以window开发环境为背景介绍一下NDK开发中需要掌握的交叉编译等基础知识,选window系统主要是照顾大多数读者,mac ,li ...

  9. Android 5.0 到 Android 6.0 + 的深坑之一 之 .so 动态库的适配

    (原创:http://www.cnblogs.com/linguanh) 目录: 前序 一,问题描述 二,为何会如此"无情"? 三,目前存在该问题的知名SDK 四,解决方案,1 对 ...

随机推荐

  1. python_53_函数补充

    def test1(x,y=2): print(x,y) test1(1) test1(1,3) test1(1,y=4) #默认参数特点:调用函数的时候,默认参数非必须传递,默认参数放在后边 #用途 ...

  2. 多线程中使用HttpContext.Current为null的解决办法

    HttpContext.Current.Server.MapPath(logFile)   这个是得到具体路径的方法  正常情况下是可以的 多线程情况下就为null 下边的代码原本的作用是把网站的异常 ...

  3. SyntaxHighlighter使用方法

    原名:SyntaxHighlighter,是一款用于web页面的代码着色工具,可以用来着色多种语言,可以是HTML,CSS,Javascript,还可以是C,JAVA等编程语言.最早见于Yahoo的Y ...

  4. Bzoj 1081 [Ahoi2009] chess 中国象棋

    bzoj 1081 [Ahoi2009] chess 中国象棋 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1801 状态比较难设,的确 ...

  5. nginx平滑升级的过程

    1.开始之前首先查看当前的使用版本以及编译时的参数: [root@www ~]# /usr/local/nginx/sbin/nginx -V nginx version: nginx/1.12.2 ...

  6. python 3 在工作中的应用

    Python 3在工作中的使用 安装配置Python 3 在notepad++中配置Python 3 使用sql server数据库 操作Excel 发送email python 3 使用日志   安 ...

  7. 解决Uva网站打开慢的问题

    https://blog.csdn.net/richenyunqi/article/details/80990535

  8. linux下编译openjdk8

    一.准备工作                                                           1.0 工作环境 Ubuntu 12.04,32位机 1.1.安装JD ...

  9. Beats、Filebea入门

    1. Filebeat配置简介 2. Filebeat收集nginx日志 3. packetbeat简介与演示

  10. laravel5.2总结--请求

        1 获取请求 1.1 获取请求的 URI 1>path 方法会返回请求的 URI.所以,如果接收到的请求目标是 http://domain.com/foo/bar,那么 path 方法就 ...