交叉编译

gdb 7.7 交叉编译

此生再无相见时 提交于 2019-12-27 06:11:13
1. 下载gdb,下载地址: http://www.sourceware.org/gdb/ 2. 准备编译过程需要的依赖库 termcap,下载地址: http://ftp.gnu.org/gnu/termcap/   编译termcap:   $ mkdir /home/tom/tool/termcap     $ tar zxvf termcap-1.3.1.tar.gz   $ cd termcap-1.3.1      $ ./configure --host=arm-none-linux-gnueabi --prefix=/home/tom/tool/termcap   $ vim Makefile   更改Makefile内容(这点很重要):   CC = arm-none-linux-gnueabi-gcc   AR = arm-none-linux-gnueabi-ar   RANLIB = arm-none-linux-gnueabi-ranlib     $ make   $ make install   make install 将在 --prefix指定的目录/home/tom/tool/termcap中生成 include/termcap.h 和 lib/libtermcap.a, 编译gdb时需要指定对应的 库 和 头文件 搜索目录 3. 编译gdb  

Linux下交叉编译gdb和gdbserver

核能气质少年 提交于 2019-12-27 06:11:03
平台:tq2440 GCC: gcc version 4.3.3 (Sourcery G++ Lite 2009q1-176) 这里过程中参考了下面两篇博文: http://blog.csdn.net/hejianhua/article/details/7254836 http://blog.csdn.net/fly_qj/article/details/8272555 1、下载gdb 下载地址为: http://ftp.gnu.org/gnu/gdb/ 我们以gdb-7.9.tar.xz 这个文件为例。 2、安装软件包 textinfo 否则会提示makeinfo找不到。 安装方法: sudo apt-get install textinfo libncurses5-dev 否则会出现如下错误: configure: WARNING: no enhanced curses library found; disabling TUI checking for library containing tgetent... no configure: error: no termcap library found make[1]: *** [configure-gdb] Error 1 安装方法: 解决这个问题需要自己去新下载一套ncurses的最新代码,重新交叉编译出来

Linux下交叉编译gdb,gdbserver+gdb的使用以及通过gdb调试core文件

放肆的年华 提交于 2019-12-27 04:27:44
交叉编译gdb和gdbserver 1、下载gdb: 下载地址为: http://ftp.gnu.org/gnu/gdb/ 按照一般的想法,最新版本越好,因此下载7.2这个版本。当然,凡事无绝对。 我们以gdb-7.2.tar.bz2 这个文件为例。 2、解压缩: $ tar jxvf gdb-7.2.tar.bz2 注:小技巧:Linux下一般压缩文件后缀为.tar.bz2和.tar.gz,它们解压命令有两三个选项是一致的: xf(v),前者再加上j选项,后者再加上z选项。 3、进入该目录 $ cd gdb-7.2/ 4、配置 $./configure --target=arm-linux --program-prefix=arm-linux- --prefix=/usr/local/arm-gdb 注 :--target=arm-linux 意思是说目标平台是运行于ARM体系结构的linux内核 ;--program-prefix=arm-linux- 是指生成的可执行文件的前缀,比如arm-linux-gdb ,--prefix 是指生成的可执行文件安装在哪个目录,这个目录需要根据实际情况作选择。如果该目录不存在,会自动创建,当然,权限足够的话。 5、编译、安装 $ make $ make install 幸运的话,会在--prefix指定的目录下生成三个子目录:bin

交叉编译和交叉调试环境搭建及使用

我们两清 提交于 2019-12-27 04:24:36
交叉编译和交叉调试环境搭建及使用 1. 交叉编译器 1.1 交叉编译器介绍 在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另一个平台上的可执行代码,而这种工具就是交叉编译器(cross compiler)。 1.2 搭建交叉编译环境 1.2.1 实验环境 交叉编译工具:arm-linux- 4.2.2 编译平台:ubuntu10.10 开发板类型:UT-S3C6410 1.2.2 搭建步骤 1) 在/usr/local/下建立交叉编译器的安装目录arm: sudo mkdir /usr/local/arm 2)将下载的交叉编译器包解压到/usr/local/arm目录下: sudo tar jxvf cross-4.2.2-eabi.tar.bz2 -C /usr/local/arm/ 3)解压成功后,修改PATH环境变量: sudo vim /etc/profile 在文件为加入交叉编译器arm-linux-所在的路径: export PATH=$PATH:/usr/local/arm/4.2.2-eabi/usr/bin 然后退出vim。 4) 更新一下配置文件/etc/profile: source /etc/profile 5)检测是否安装成功:

构建NDK交叉编译链

风流意气都作罢 提交于 2019-12-26 23:58:04
有时我们需要单独编译个c文件,生成一个ELF在Android上面跑,NDK提供了一个 make-standalone-toolchain.sh 脚本,用于生成一套特定平台的交叉编译工具链 使用方法如下: kiiim@ubuntu :~/aosp/android-ndk-r10d$ ./build/tools/make-standalone-toolchain.sh --arch=arm --platform=android-21 --install-dir=~/ndk_arm_android21 --toolchain=arm-linux-androideabi-4.9 --system=linux-x86_64 Copying prebuilt binaries... Copying sysroot headers and libraries... Copying c++ runtime headers and libraries... Copying files to: ~/ndk_arm_android21 Cleaning up... Done. 简记一下参数设置: –arch 选择目标平台,除了arm还有下面几种: Toolchain Value mips64 compiler --arch=mips64 mips GCC 4.8 compiler --arch=mips

Python 交叉编译

为君一笑 提交于 2019-12-22 11:05:16
Python 交叉编译 情况说明 自己想要在Windows 虚拟机Ubuntu18.04 中编译python解释器,以移植到ARM平台上执行,主要目标是在ARM QEMU中进行执行。 编译环境:Ubuntu 18.04 编译器:gcc, arm-linux-gnueabi Python版本:2.7.3 和 3.5.5 整个过程分为三个步骤 编译生成当前平台该版本的python 给低版本python2.7.3 打上交叉编译的补丁,其中高版本python没有交叉编译的补丁(忘记在哪篇文章看到过这句话,囧) 交叉编译生成目标机ARM上的python 参考链接 https://www.cnblogs.com/tolimit/p/4519838.html http://idiip.jiinii.com/cross-compile-python-3.html 详情 步骤一: 进入python源码目录,执行 ./configure 编译当前平台该python版本对应的python和Parser/pgen ( 源码根目录下生成 python 可执行文件, Parser/目录下生成pgen 可执行文件) make python Parser/pgen 将当前平台对应的python 可执行文件备份为python_for_build mv python python_for_build

ubuntu交叉编译环境

纵然是瞬间 提交于 2019-12-18 04:50:34
1. 安装标准的C开发环境,由于Linux安装默认是不安装的,所以需要先安装一下(如果已   经安装好的话,就可以免去这一步了):   #sudo apt-get install gcc g++ libgcc1 libg++ make gdb 2. 下载arm-linux-gcc-3.4.1.tar.bz2到任意的目录下,我把它下载到了我的个人文件夹   里 /home/wrq   arm-linux-gcc-3.4.1.tar.bz2 的下载地址如下: http://www.handhelds.org/download/projects/toolchain/arm-linux-gcc-3.4.1.tar.bz2 3. 解压 arm-linux-gcc-3.4.1.tar.bz2   #tar -jxvf arm-linux-gcc-3.4.1.tar.bz2   解压过程需要一段时间,解压后的文件形成了 usr/local/ 文件夹,进入该文件夹,将   arm文件夹拷贝到/usr/local/下   # cd usr/local/   #cp -rv arm /usr/local/   现在交叉编译程序集都在/usr/local/arm/3.4.1/bin下面了 4.  修改环境变量,把交叉编译器的路径加入到PATH。(有三种方法,强烈推荐使用方法一)   方法一:修改/etc

arm-linux-gcc交叉编译环境安装

 ̄綄美尐妖づ 提交于 2019-12-18 04:49:12
1. 安装标准的C开发环境,由于Linux安装默认是不安装的,所以需要先安装一下(如果已   经安装好的话,就可以免去这一步了):   #sudo apt-get install gcc g++ libgcc1 libg++ make gdb 2. 下载arm-linux-gcc-3.4.1.tar.bz2到任意的目录下,我把它下载到了我的个人文件夹   里 /home/wrq   arm-linux-gcc-3.4.1.tar.bz2 的下载地址如下: http://www.handhelds.org/download/projects/toolchain/arm-linux-gcc-3.4.1.tar.bz2 3. 解压 arm-linux-gcc-3.4.1.tar.bz2   #tar -jxvf arm-linux-gcc-3.4.1.tar.bz2   解压过程需要一段时间,解压后的文件形成了 usr/local/ 文件夹,进入该文件夹,将   arm文件夹拷贝到/usr/local/下   # cd usr/local/   #cp -rv arm /usr/local/   现在交叉编译程序集都在/usr/local/arm/3.4.1/bin下面了 4.  修改环境变量, 把交叉编译 器的路径加入到PATH。(有三种方法,强烈推荐使用方法一)   方法一:修改

ARM服务器编译安装ClickHouse

蓝咒 提交于 2019-12-17 17:13:51
目录 一、编译安装ClickHouse背景 二、编译安装ClickHouse方法 三、编译安装ClickHouse环境 四、编译安装ClickHouse步骤 1,安装依赖项 2,编译安装cmake 3.,编译安装GCC编译器 4,编译安装clang编译器 AArch64架构需要使用Clang编译器,X86架构可直接使用GCC编译器,不必做这步 5,编译安装ClickHouse 6,测试验证ClickHouse 7,编译过程遇到的问题 一、编译安装ClickHouse背景 因公司需要在华为泰山服务器验证开源软件安装及功能测试,AARCH64 (ARM64) 架构服务器,不支持SSE 4.2 指令集,在以前是试验性支持的,刚好ClickHouse release v19.17.4.11, 2019-11-22 新版本已经正式支持ARM64服务器,目前没有预编译好的版本,需要进行编译安装。 二、编译安装ClickHouse方法 * 先介绍下X86架构ClickHouse编译,我们常用的电脑都是X86处理器,不必搭建交叉编译环境,直接在本地虚拟机,并且可使用GCC编译ClickHouse。 * 编译方法1:为AArch64 CPU进行构建ClickHouse,可搭建aarch64交叉编译环境:在x86架构服务器,构建出能在AARCH64 CPU 体系架构的Linux上运行的二进制程序

2018-2019-1 20175304 20175303 20175327 20175335 实验一 开发环境的熟悉

冷暖自知 提交于 2019-12-17 10:31:42
2018-2019-1 20175304 20175303 20175327 20175335 实验一 开发环境的熟悉 实验目的: 熟悉Linux开发环境;学会Linux开发环境的配置和使用;使用Linux的arm编译。 实验过程: 实验一-1-交叉编译环境-(使用自己笔记本电脑) 1.安装老师提供的software目录中的“VMware-workstation-full-10.0.1-1379776.exe” 2.解压老师提供的software目录中的“Ubuntu1204.rar” 3.用VMWare打开Ubuntu,用户名:linux,口令:1 4.建立实验目录"mkdir linux_20175304_20175303_20175327_20175335" 5.在实验目录中编写“hello word”程序,另外补充几行打印所有组员的学号姓名 #include <stdio.h> int main(){ printf("HelloWorld!\n"); printf("20175304_20175303_20175327_20175335\n"); return 0; } 1.考bocsd目录中的脚本armc.sh, 分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c,用gcc编译的可执行文件命名linuxhello:gcc