精华内容
下载资源
问答
  • GitHub Linux 64位安装32位运行库(解决rk3399 make kernel.img error) AderXCoding/system/tools/ia32_install 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, ...
    CSDN GitHub
    Linux 64位安装32位运行库(解决RK3399 make kernel.img error) AderXCoding/system/tools/ia32_install


    知识共享许可协议
    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, 谢谢合作

    1 问题描述


    • make kernel.img error
      近期实验室购入了 RK-3399 的开发板的, 官方的 SDK 教程都是基于 ubuntu 的, 但本人用远程服务器做开发机, 系统安装的是 CentOS 7, 于是试着在 archlinux 上编译一下源码, 编译内核时出现以下错误 : ·make: * [kernel.img] Error 127`
    #make ARCH=arm64 rk3399-mid-818-android.img -j12
      CHK     include/config/kernel.release
      CHK     include/generated/uapi/linux/version.h
      CHK     include/generated/utsrelease.h
    make[1]: `arch/arm64/boot/dts/rockchip/rk3399-mid-818-android.dtb' is up to date.
      CHK     include/generated/timeconst.h
      CHK     include/generated/bounds.h
      CHK     include/generated/asm-offsets.h
      CALL    scripts/checksyscalls.sh
      CHK     include/generated/compile.h
      GEN     drivers/video/rockchip/screen/lcd.h
      OBJCOPY arch/arm64/boot/Image
    make: *** [kernel.img] Error 127

    kernel-img-error

    2 问题发现


    很明显内核构建的过程中 Image, 已经构建完毕, 但是在构建 kernel.img 时候出现问题,

    我们从 Makefile 中看看在生成 kernel.img 的时候具体做了什么

    #cat -n arch/arm64/Makefile | grep kernel.img
    
       143  kernel.img: Image
       144      $(Q)$(srctree)/scripts/mkkrnlimg $(objtree)/arch/arm64/boot/Image $(objtree)/kernel.img >/dev/null
       145      @echo '  Image:  kernel.img is ready'
       149  %.img: rockchip/%.dtb kernel.img $(LOGO) $(LOGO_KERNEL)

    可以看到生成 kernel.img 的规则在 Makefile 的第 143~145

    # 查看 makefile 第 142~146 行的信息
    #sed -n '142,146p' Makefile
    
    kernel.img: Image
        $(Q)$(srctree)/scripts/mkkrnlimg $(objtree)/arch/arm64/boot/Image $(objtree)/kernel.img >/dev/null
        @echo '  Image:  kernel.img is ready'

    find-error-line

    可以看到生成的规则为

    scripts/mkkrnlimg arch/arm64/boot/Image kernel.img >/dev/null

    通过脚本 mkkrnlimgImage 生成 kernel.img, 既然 kernel.img 没有生成, 那说明 mkkrnlimg 运行出现问题

    查看 mkkrnlimg 的文件属性

    #file scripts/mkkrnlimg 
    scripts/mkkrnlimg: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, stripped

    file-mkkrnlimg

    可以发现, **执行文件 mkkrnlimg 是在 32 位平台上运行的, 而我的系统是 64 位的, 问题就在于此了, 为了在 64 位系统上运行 32 位的执行文件, 一般需要安装 lib32-glibc, 于是试了一下:

    3 Linux 64 安装32位运行库


    参照What do I need to do to install and run Sourcery CodeBench on an x86 64-bit Linux host system?

    3.1 CentOS


    sudo yum install ia32-libs.i686

    或者

    sudo yum install xulrunner.i686

    PS:可以查看一下当前源库里有没有 ia32-libs : yum list|grep ia32-

    3.2 Arch Linux


    pacman -S lib32-glibc
    yaourt -S lib32-glibc

    这两个指令都找不到 lib32-glibc, 于是上官网找了一下, 还是可以找到:
    https://www.archlinux.org/packages/multilib/x86_64/lib32-glibc/

    于是,下载:lib32-glibc-2.22-3.1-x86_64.pkg.tar.xz

    安装 : pacman -U lib32-glibc-2.22-3.1-x86_64.pkg.tar.xz

    再编译即可

    3.3 Ubuntu 安装 32 位库


    • Ubuntu 13.04 or older
    apt-get install ia32-libs
    • Ubuntu 14.04 and newer

    ubuntu14.04/13.10/13.04 安装32位运行库(成熟技术)

    ubuntu 14.04 64bit安装32位运行库
    14.04 以后目前 ia-32的库已经被移除了, 但是我们仍然可以通过添加 13.04 源的方式来安装 ia-32

    sudo apt-get install libc6:i386
    sudo -i
    # 添加13.04 raring的ia-32源
    cd /etc/apt/sources.list.d
    echo "deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list
    apt-get update
    apt-get install ia32-libs
    
    # 删除raring的源防止本身的源被污染
    rm /ia32-libs-raring.list
    apt-get update
    
    exit
    
    sudo apt-get install gcc-multilib

    注:这种方法肯定能安装上ia32-libs,但由于添加的是13.04的源,所以有没有混淆暂时不清楚,网上也有很多用新立德软件包管理器这样做;够狠,你就这么干。也可以这么安装了ia32-libs后,把/etc/apt/sources.list.d目录下的ia32-libs-raring.list删掉,然后再sudo apt-get update

    Ubuntu16.04(64bit)兼容32bit程序

    Ubuntu16.04安装32位支持库

    但是其实有更好更安全的方法, 14.04 之后, 64 位系统可以直接以

    #这是第一步,让你的系统接受i386架构的安装包,这样才可以在apt-get update时下载相应的list
    dpkg --add-architecture i386
    
    #以后通过在包名后面加 :i386 下载相应的包。
    apt-get install [package name]:i386

    比如

    sudo dpkg --add-architecture i386
    sudo apt install libc6:i386

    How to run 32-bit app in Ubuntu 64-bit?

    4 验证


    运行

    scripts/mkkrnlimg arch/arm64/boot/Image kernel.img

    make-kernel-img

    或者重新编译内核

    make-kernel


    知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, 谢谢合作.

    展开全文
  • CentOS/Scientific Linux/Redhat 6 X86_64安装永中office1.下载永中office 永中office下载地址 http://www.yozosoft.com/person/ 可下载rpm包或者tar.gz包 这里用...2.安装 32位运行库 安装需要root权限,你可以用su...

    CentOS/Scientific Linux/Redhat 6 X86_64安装永中office

    1.下载永中office 永中office

    下载地址 http://www.yozosoft.com/person/ 可下载rpm包或者tar.gz包 这里用的是tar.gz的包,因为我是在linux mint上安装时下载的,后面就没有下载过了。

    2.安装 32位运行库 安装需要root权限,你可以用sudo(需要配置),也可以直接su - root切换到root用户

    $sudo yum install xulrunner.i686

    安装 libXtst 32位版

    $sudo yum install libXtst.i686

    补充一下,如果你是在debian/ubuntu/linux mint/linux deepin 下面安装32位运行库,只需要安装ia32-libs就可以了

    下面的3选一

    $sudo apt install ia32-libs

    $sudo aptitude install ia32-libs

    $sudo apt-get install ia32-libs

    3.安装永中office 进入你下载到的文件目录 如果用rpm安装

    $sudo rpm -ivh Yozo_Office_6.1.0088.131ZH.rpm 这个rmp的我没试,我是用的tar.gz包的

    $tar zxvf  Yozo_Office_6.1.0088.131ZH.tar.gz $cd 6.1.0088.131ZH

    $sudo ./setup.sh 出现图形界面,然后下一步,下一步。。。跟windows下安装差不多了

    展开全文
  • 最近搞一款博通的安全... OK, 安装ubuntu 11.04 x64版本, 编译,靠居然出现libgcc_s libc 等找不到或者不兼容的情况,对方 FAE 说是要使用32位。1.Ubuntu 11.04 x64 OS2.Sudo apt-get installlibc6-dev-i386...

    最近搞一款博通的安全芯片bcm5892, broadcom提供的sdk 4.4 只有在运行64位的系统上才OK, 老外很前列。 OK, 安装ubuntu 11.04 x64版本, 编译,靠居然出现libgcc_s libc 等找不到或者不兼容的情况,对方 FAE 说是要使用32位的库。

    1.Ubuntu 11.04 x64 OS

    2.Sudo apt-get installlibc6-dev-i386bison libglib2.0-dev aptitude

    sudo aptitude install ia32-libs  (先用 aptitude search ia32 查看是否存在32位库包)

    3.设置env44.sh

    4.进入projects/bcm589x/build/secapps; make BOARD=BCM9589x

    5.期间要修改把gstreamer中的win32/common/gstenumtypes.h文件拷贝到gst目录下覆盖原有文件。(原有文件是空内容)

    怎么样才能使32位的程序在64位的计算机上运行?

    现在,在这些64位的计算机上,您可以选择安装64位的Ubuntu。请注意:不是所有的程序都能够正常的运行在64位平台上。更多的non-free项目都是在32位平台上的,比如32位平台上的Flash插件。不过还是有一些32位应用程序可以通过使用32位运行库来实现在64位Ubuntu平台上的正常运行。你可以使用sudo和apt-get命令来安装这些运行库。

    sudo apt-get install ia32-libs*

    你也可以通过安装 Synaptic package manager 或者通过安装 chroot 来建造一个32位的环境。

    文章来自:大学生校园网-VvSchool.CN 详文参考:

    Ubuntu 64位系统安装32位运行库

    2009年09月25日 星期五 下午 02:43

    32位库:

    sudo apt-get install ia32-libs*

    安装32位包:

    安装时加 --force-architecture

    例如:sudo dpkg --force-architecture -i linuxqq_i386.deb

    反安装用 sudo dpkg -P 软件名

    例如:sudo dpkg -P linuxqq

    安装getlibs,新立得里如果没有就在这里下载:

    GetLibs的使用方法:(常用参数)

    下载和安装一个软件所需的所有libs:

    getlibs /usr/bin/skype

    通过lib名将一个32位库安装在64位系统上:(-l参数)

    getlibs -l libogg.so.0 libSDL-1.2.so.0

    通过软件包名安装32位的库:(-p参数)

    getlibs -p libqt4-core libqt4-gui

    安装一个32位lib的.deb文件:(-i参数)

    getlibs -i ~/i386_library_1.deb

    下载和安装一个32位lib文件:(-w参数)

    展开全文
  • 64位系统安装32位运行库和编译库

    64位系统安装32位运行库和编译库

    kali

    sudo dpkg --add-architecture i386
    sudo apt update
    sudo apt install lib32z1
    sudo apt install lib32ncurses5
    sudo apt install gcc-multilib
    

    lib32ncurses5 这个库已经没有了,但好像不影响32位的功能

    ubuntu

    sudo dpkg --add-architecture i386
    sudo apt update
    sudo apt install libc6:i386 libncurses5:i386 libstdc++6:i386
    sudo apt install gcc-multilib
    
    展开全文
  • CentOS/Scientific Linux/Redhat 6 X86_64安装永中office 1.下载永中office 永中office 下载地址 http://www.yozosoft.com/person/ 可下载rpm包或者tar.gz包 这里用的是...2.安装 32位运行库 安装需要root权限,...
  • linux 6.4(64位)系统安装32位运行库操作方法
  • 在嵌入式linux开发中,由于交叉编译的宿主机ubuntu是64位系统,而交叉编译器是32位的,交叉编译器要能正常运行需要安装对应的32位库。 解决方法: sudo apt update sudo apt install lib32z1-dev 然后执行arm-...
  • Ubuntu 64位安装32位运行库

    千次阅读 2018-11-01 13:19:38
    学嵌入式时安装了 Ubuntu 16.04 x64安装交叉编译工具链的时候出了问题: $ ./arm-none-linux-gnueabi-gcc -v -bash: ./arm-none-linux-gnueabi-gcc: No such file or directory 因为以前装的时候也遇到过...
  • 修复linux64位运行32位程序依赖问题: 修复/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory问题 1、在64系统里执行32位程序如果出现/lib/ld-linux.so.2:  bad ELF interpreter: No such ...
  • 我正在尝试在64位CentOS 5.3(基于RedHat ...我可以在主机上安装32位MySQL客户端吗?优选地以官方方式(即,通过存储).如果没有,那么一种hackish方式呢?此外,这是一个适合这样一个问题的地方吗?编辑:这是an ar...
  • Ubuntu12.04 64位 安装32位运行库

    千次阅读 2016-05-12 11:38:13
    使用 arm-linux-gcc -v 命令也是提示没有这个路径,这是因为交叉编译器是32位的,需要32位的运行库,以前我们可以使用命令apt-get install ia32-libs来安装32位运行库,但现在已经无法实现了,我们需要用这个命令apt...
  • Ubuntu 64位系统安装32位运行库

    千次阅读 2013-03-20 22:47:07
    Ubuntu 64位系统安装32位运行库 32位库: sudo apt-get install ia32-libs* 安装32位包: 安装时加 --force-architecture 例如:sudo dpkg --force-architecture -i linuxqq_i386.deb 反安装...
  • 记录: ------------------------------------------------------------------- centos7.x 安装了glibc:glibc-2.17-...glibc-2.17 nodeps安装,即可运行cfgm2 -------------------------------------------------
  • centos 6.5 64位系统安装32位运行库

    千次阅读 2019-06-28 01:04:10
    所不同的是,嵌入式平台采用32位linux系统,应用服务程序采用64位Linux系统。开发过程需要将两种开发环境,在同一台物理机上实现。 嵌入式开发环境构建时,安装的交叉编译环境,需要32位的开发。本文中,提供一...

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 289
精华内容 115
关键字:

linux64位安装32位运行库

linux 订阅