扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、首先以root用户登入 复制arm-linux-gcc-tgz到根目录下tmp文件夹里 解压命令tar xvzf arm-linux-gcc-2 -C / 注意以上命令必须要有-C而且是大写,后边有个空格也要注意。
专业领域包括成都网站建设、网站设计、商城网站建设、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。
2、make install-target-libgcc 如果没出错的话,这里的预编译就快搞好了,擦把汗先。
3、下载软件包 从linaro的网站下载预编译二进制包,地址:https://launchpad点虐 /linaro-toolchain-binaries/trunk/20110。注意选择的版本,要使用linux下的哦。
4、export PATH=$IDESYSTEM/gcc/bin:$PATH 将gcc/bin下的文件改一下名,arm-linux-androideabi-g++改为g++,arm-linux-androideabi-gcc则改为gcc。完成后重启IDE即可使用GCC。
1、从Memory map信息第一行可以知道静态编译的程序main-test代码段地址空间为0x8000-0xa000,而backtrace信息中0x8cdc等地址也在这个地址空间范围内(这种实际地址不用backtrace地址减去memory map地址计算偏移,然后再用addr2line命令定位)。
2、这个很早就有了,比php自带的var_dump好用多了。
3、其次要找到属于自己的so文件报错的行,这就比较简单了。
4、然后通过符号的地址,使用addr2line找到符号所在源码文件名。
5、普通的应用程序或者静动态库,如果你想用addr2line 来定位段错误出在哪一行,请记住在编译它们的时候一定加上编译选项 -g 它会生成symbols信息 在你的exe or lib 里面。
export TARGET=arm-linux export PREFIX=$PRJROOT/tools export TARGET_PREFIX=$PREFIX/$TARGET export PATH=$PREFIX/bin:$PATH 如果你不惯用环境变量的,你可以直接用绝对或相对路径。
测试。先开启一个新的终端机,输入 arm 後连续按两次 tab 键,如果跑出来一堆像下面的提示表示安装成功。
arm-linux-gcc -rdynamic -lpthread -g main.c -o main-test 如果是静态编译程序,只需要backtrace信息和addr2line工具即获取出错点。
/opt/FriendlyARM/toolschain/3 /usr/local/arm arm-linux-gcc交叉编译环境的安装 5 到这里已经基本安装好了,到为了避免每次使用arm-linux-gcc时都要输入它所在的完整路径,所以这里我们要修改一下环境变量$PATH。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流