【Linux-ARM】arm-sgmstar-gnueabihf-9.1.0-202007-gcc交叉编译openssl、curl静态库.a与动态库.so

2023-05-16

 编译环境:ubuntu 18.04

一、安装交叉编译器arm-sgmstar-gnueabihf-9.1.0-202007-gcc

1、下载交叉编译包

ARM交叉编译器的免安装解压包链接:

ARM交叉编译器:arm-sgmstar-gnueabihf-9.1.0-202007-gcc

tar -zxvf SSC357_arm-sgmstar-gnueabihf-9.1.0-202007.tar.gz

2、解压交叉编译包

进入解压后的文件夹内

cd gcc-sigmastar-9.1.0-2020.07-x86_64_arm-linux-gnueabihf

进入bin 文件夹

cd bin

查看路径名 

pwd

/usr/local/arm/gcc-sigmastar-9.1.0-2020.07-x86_64_arm-linux-gnueabihf/bin

 3、配置交叉编译环境变量

sudo vim /etc/profile

在文件最后添加新的一行,如下内容

export PATH=$PATH:/usr/local/arm/gcc-sigmastar-9.1.0-2020.07-x86_64_arm-linux-gnueabihf/bin

4、查看交叉编译器

重启reboot虚拟机Ubuntu,查看交叉编译器版本

arm-sgmstar-gnueabihf-9.1.0-202007-gcc -v

二、arm-sgmstar-gnueabihf-9.1.0-202007-gcc交叉编译openssl

参考博文

【Linux-ARM】安装 arm-linux-gnueabihf 交叉编译openssl-arm静态库与动态库

三、arm-sgmstar-gnueabihf-9.1.0-202007-gcc交叉编译curl

参考博文

【Linux-ARM】arm-linux-gnueabihf、arm-himix200-linux交叉编译curl-arm 静态库.a与动态库.so

1、配置Makefile文件

CPPFLAGS="-I/home/hanhui/krtcode/thirdparty/openssl/openssl-1.0.2t_sgmstar/  -I/home/hanhui/krtcode/thirdparty/openssl/openssl-1.0.2t_sgmstar/include" LDFLAGS="-L/home/hanhui/krtcode/lib/sgmstar/1.0.0/lib" LIBS="-ldl" ./configure --host=arm-sgmstar-gnueabihf CC=arm-sgmstar-gnueabihf-9.1.0-202007-gcc CXX=arm-sgmstar-gnueabihf-9.1.0-202007-g++ --with-ssl --enable-shared --enable-static --disable-dict --disable-ftp --disable-imap --disable-ldap --disable-ldaps --disable-pop3 --disable-proxy --disable-rtsp --disable-smtp --disable-telnet --disable-tftp --disable-zlib --without-ca-bundle --without-gnutls --without-libidn --without-librtmp --without-libssh2 --without-nss --without-zlib --prefix=/home/hanhui/local/curl/curl_sgmstar

CPPFLAGS="-I/home/hanhui/krtcode/thirdparty/openssl/openssl-1.0.2t_sgmstar/  -I/home/hanhui/krtcode/thirdparty/openssl/openssl-1.0.2t_sgmstar/include" LDFLAGS="-L/home/hanhui/krtcode/lib/sgmstar/1.0.0/lib" LIBS="-ldl" ./configure --host=arm-sgmstar-gnueabihf CC=arm-sgmstar-gnueabihf-9.1.0-202007-gcc CXX=arm-sgmstar-gnueabihf-9.1.0-202007-g++ --with-ssl --enable-shared --enable-static --disable-dict --disable-ftp --disable-imap --disable-ldap --disable-ldaps --disable-pop3 --disable-proxy --disable-rtsp --disable-smtp --disable-telnet --disable-tftp --disable-zlib --without-ca-bundle --without-gnutls --without-libidn --without-librtmp --without-libssh2 --without-nss --without-zlib --prefix=/home/hanhui/local/curl/curl_sgmstar

2、make编译

make -j 4

3、编译结果

ls lib/.libs

 4、查看是否ARM库

file lib/.libs/libcurl.so.4.7.0

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Linux-ARM】arm-sgmstar-gnueabihf-9.1.0-202007-gcc交叉编译openssl、curl静态库.a与动态库.so 的相关文章

  • 信号处理程序有单独的堆栈吗?

    信号处理程序是否有单独的堆栈 就像每个线程都有单独的堆栈一样 这是在 Linux C 环境中 来自 Linux 手册页signal 7 http kernel org doc man pages online pages man7 sign
  • 在 Linux 上的 Python 中使用受密码保护的 Excel 工作表

    问题很简单 我每周都会收到一堆受密码保护的 Excel 文件 我必须解析它们并使用 Python 将某些部分写入新文件 我得到了文件的密码 当在 Windows 上完成此操作时 处理起来很简单 我只需导入 win32com 并使用 clie
  • 如何更改 Ubuntu 14.04 上的 php-cli 版本?

    我是 Linux 新手 在篡改时破坏了一些 php 设置 如果我执行一个包含以下内容的 php 脚本 phpinfo 它显示 php 版本为 5 6 但通过命令行 如果我运行php v它返回 7 0 版本 我想让两个版本匹配 我怎样才能修复
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • 在Linux上编译C# + WPF以便在Windows上运行

    我有一个 C 应用程序 其中某些部分是使用 WPF 编写的 Mono 不支持 可以在 Linux 上编译这个应用程序吗 最终 该应用程序将在 Windows 上运行 但它是更大框架的一部分 并且我们的整个构建过程在 Linux 上运行 因此
  • 为什么我收到的数据包数据大小大于mss?

    我在两台 PC 上使用 ifconfig ethX mtu 300 修改了 MTU 并使用 netperf 测试网络 我用 WireShark 嗅探了 SYN 数据包中的 MSS 260 但我得到了一些大于 260 的数据包 为什么 嗅探器
  • 在 Linux 上更快地分叉大型进程?

    在现代 Linux 上达到与 Linux 相同效果的最快 最好的方法是什么 fork execve combo 从一个大的过程 我的问题是进程分叉大约 500MByte 大 并且一个简单的基准测试只能从进程中实现约 50 个分叉 秒 比较最
  • 创建 jar 文件 - 保留文件权限

    我想知道如何创建一个保留其内容的文件权限的 jar 文件 我将源代码和可执行文件打包在一个 jar 文件中 该文件将在使用前提取 人们应该能够通过运行批处理 shell 脚本文件立即运行示例和演示 然后他们应该能够修改源代码并重新编译所有内
  • Linux 中的无缓冲 I/O

    我正在写入大量的数据 这些数据数周内都不会再次读取 由于我的程序运行 机器上的可用内存量 显示为 空闲 或 顶部 很快下降 我的内存量应用程序使用量不会增加 其他进程使用的内存量也不会增加 这让我相信内存正在被文件系统缓存消耗 因为我不打算
  • 抑制 makefile 中命令调用的回显?

    我为一个作业编写了一个程序 该程序应该将其输出打印到标准输出 分配规范需要创建一个 Makefile 当调用它时make run gt outputFile应该运行该程序并将输出写入一个文件 该文件的 SHA1 指纹与规范中给出的指纹相同
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • Jenkins中找不到环境变量

    我想在詹金斯中设置很多变量 我试过把它们放进去 bashrc bash profile and profile of the jenkins用户 但 Jenkins 在构建发生时找不到它们 唯一有效的方法是将所有环境变量放入Jenkinsf
  • 如何根据 HTTP 请求使用 Python 和 Flask 执行 shell 命令并流输出?

    下列的这个帖子 https stackoverflow com questions 15092961 how to continuously display python output in a webpage 我能够tail f网页的日志
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • 大多数 Linux 系统头文件与 C++ 兼容吗?

    大多数 Linux 系统头文件 API C 兼容吗 今天我试图做这样的事情 include
  • 在哪里可以找到并安装 pygame 的依赖项?

    我对 Linux 比较陌生 正在尝试安装 python 的 pygame 开发环境 当我运行 setup py 时 它说我需要安装以下依赖项 我找到并安装了其中之一 SDL 然而 其他人则更加难以捉摸 Hunting dependencie
  • 架构armv7的重复符号

    尝试在我现有的应用程序中使用 Layar SDK 时出现以下错误 我该如何解决这个问题 Ld Users pnawale Library Developer Xcode DerivedData hub afxxzaqisdfliwbzxbi
  • 如何在数组中存储包含双引号的命令参数?

    我有一个 Bash 脚本 它生成 存储和修改数组中的值 这些值稍后用作命令的参数 对于 MCVE 我想到了任意命令bash c echo 0 0 echo 1 1 这解释了我的问题 我将用两个参数调用我的命令 option1 without
  • vector 超出范围后不清除内存

    我遇到了以下问题 我不确定我是否错了或者它是一个非常奇怪的错误 我填充了一个巨大的字符串数组 并希望在某个点将其清除 这是一个最小的例子 include

随机推荐