当前位置: 首页 > news >正文

张槎网站开发seo网络推广公司

张槎网站开发,seo网络推广公司,制作网页的网站推荐,廊坊建手机网站初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 源码指引:github源…

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。

源码指引:github源码指引_初级代码游戏的博客-CSDN博客


        一台设备是arm64的,不能运行arm32程序。硬件是armV8理论上是兼容32位的。

折腾过程

        比如用ldd查看so,输出“not a dynamic executable”,不能识别为可执行代码。用file查看则可以识别为arm EABI5动态链接库,说明文件没错。

        编了一个测试程序,拿上去执行,当然执行不了,提示很奇怪,用readelf命令来查看:

root@ubuntu:~# readelf -a a | grep "Shared"Type:                              DYN (Shared object file)0x00000001 (NEEDED)                     Shared library: [libpthread.so.0]0x00000001 (NEEDED)                     Shared library: [libdl.so.2]0x00000001 (NEEDED)                     Shared library: [libz.so.1]0x00000001 (NEEDED)                     Shared library: [libm.so.6]0x00000001 (NEEDED)                     Shared library: [librt.so.1]0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]0x00000001 (NEEDED)                     Shared library: [libstdc++.so.6]0x00000001 (NEEDED)                     Shared library: [libc.so.6]0x00000001 (NEEDED)                     Shared library: [ld-linux-armhf.so.3]

        程序名叫“a”。

        逐个搜了一下,发现ld-linux-armhf.so 找不到,其余应该有但是是64位。

        找了另外一个交叉编译环境的ld-linux-armhf.so,复制到/lib,添加执行权限,不然执行./a提示没有权限(不是a没有权限,而是这个库没有权限)。

        再执行./a,提示
./a: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory

        这就上路了,缺的这些库同样找过来,不需要放在/lib,只要能找到就行,也不需要改权限。

        把缺失的库都补上就可以了。

结论

        arm分几个版本,v8支持64位和32程序,但是设备不一定提供了32位程序支持。

        32位程序的启动器是ld-linux-armhf.so,缺这个就不能启动32位程序。这个文件必须放在/lib并具有可执行权限。

关于armel和armhf

        这是两种不同的fpu策略,不兼容,所以下载各种包的时候要注意。

检测是armel还是armhf

        执行命令:

readelf -A /proc/self/exe | grep Tag_ABI_VFP_args

        如果返回Tag_ABI_VFP_args: VFP registers就是armhf,没有返回则是armel(或者根本不是arm)

ubuntu下载交叉编译需要的包

        用包搜索可以搜索到所有架构的包,比如搜索libc:

apt-cache search libc | grep arm

        找所有arm的,返回结果:

返回结果经过了整理
libc6-arm64-cross - GNU C Library: Shared libraries (for cross-compiling)
libc6-armhf-cross - GNU C Library: Shared libraries (for cross-compiling)
libc6-armel-cross - GNU C Library: Shared libraries (for cross-compiling)
libc6-dev-arm64-cross - GNU C Library: Development Libraries and Header Files (for cross-compiling)
libc6-dev-armhf-cross - GNU C Library: Development Libraries and Header Files (for cross-compiling)
libc6-dev-armel-cross - GNU C Library: Development Libraries and Header Files (for cross-compiling)
linux-libc-dev-arm64-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-armhf-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-armel-cross - Linux Kernel Headers for development (for cross-compiling)
libc6-dbg-arm64-cross - GNU C Library: detached debugging symbols (for cross-compiling)
libc6-dbg-armel-cross - GNU C Library: detached debugging symbols (for cross-compiling)
libc6-dbg-armhf-cross - GNU C Library: detached debugging symbols (for cross-compiling)
libc6-armel-armhf-cross - Dummy package to get libc6:armel installed
libc6-armhf-armel-cross - Dummy package to get libc6:armhf installed
libc6-dev-armel-armhf-cross - Dummy package to get libc6-dev:armel installed
libc6-dev-armhf-armel-cross - Dummy package to get libc6-dev:armhf installed

        很明显,都分为arm64、armel、armhf三种。 

        安装后的目录在/usr/arm......,找到需要的用就可以了。

        直接指定架构的安装方法:

        sudo apt install libc6:armhf libstdc++6:armhf
        这样就会有ld-linux-armhf.so这个动态库了,应该可以跑32位的程序了。


(这里是文档结束)

http://www.hkea.cn/news/982330/

相关文章:

  • 1688网站的特点全网营销系统
  • 西安做网站企业网址怎么申请
  • 专业网站建设品牌百度指数里的资讯指数是什么
  • 做网站规避什么网站制作
  • 网站开发工作方案2022拉人头最暴利的app
  • 网站建设好还是阿里巴巴好磁力猫torrent kitty
  • wordpress跨域访问前端优化网站
  • 住房和城乡建设部网站买卖合同北京中文seo
  • WordPress自己安装了插件深圳seo推广外包
  • 建立网站舆情分析报告范文
  • wordpress 空格 插件班级优化大师app
  • 成都有实力的网站建设网络培训心得
  • 中企高呈建设网站在百度怎么创建自己的网站
  • 女的和女的做那个视频网站怎么在网上做网络营销
  • 网站开发需要什么软件百度怎样发布作品
  • 专门做宠物食品的网站市场调研怎么做
  • 兰州网站建设q.479185700棒成年s8视频加密线路
  • 付费网站推广seo关键词排名优化怎么收费
  • 网站由那些组成google网页搜索
  • 对一个网站做性能测试谷歌paypal官网入口
  • 北京住房投资建设中心网站首页快速排名怎么做
  • 中国网站制作 第一个佛山网站优化
  • thinkphp做的教育网站微商引流推广
  • 做特卖网站手机版电商最好卖的十大产品
  • 怎样做网站平叿trinseo公司
  • 北京大兴最专业的网站建设公司如何推广一个项目
  • 网页设计最牛的网站建设宁波网站优化公司哪家好
  • 建设通查询如何做网站推广及优化
  • 城乡建设网站首页百度seo收录软件
  • 永久免费建个人网站培训网站建设