9671
- 收藏
- 点赞
- 分享
- 举报
live555移植笔记四 hi3531上面的移植
本帖最后由 microcreat 于 2013-1-7 09:32 编辑
linux就是这点好,可以直接用pc机来验证后,然后移植到嵌入式平台,有了前面的验证,现在可以直接把live555移植到海思的hi3531平台上面了.
一,配置交叉编译工具,这个我直接写了个脚本,每次运行的时候都运行这个脚本,这样交叉编译工具也就配置好了,当然这个脚本还可以配置其它的东西:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010# cat setenv
#!/bin/sbin/
echo "set the environment for hi3531.....!"
export SDK_PATH=$PWD
crosstools_dir="./toolchain/arm-hisiv100nptl-linux/arm-hisiv100-linux/bin"
if [ ! -d "$crosstools_dir" ]; then
tar -jxvf toolchain/arm-hisiv100nptl-linux/arm-hisiv100-linux.tar.bz2 -C toolchain/arm-hisiv100nptl-linux/
fi
CROSSTOOL_UBOOT=$PWD/uboot/u-boot-2010.06/tools
CROSSTOOL_KERNEL=$PWD/toolchain/arm-hisiv100nptl-linux/arm-hisiv100-linux/bin
IMAGETOOL_PC=$PWD/tools
export PATH=$CROSSTOOL_KERNEL:$PATH
export PATH=$CROSSTOOL_UBOOT:$PATH
export PATH=$IMAGETOOL_PC:$PATH
arm-hisiv100-linux-uclibcgnueabi-gcc
二,先运行这个脚本,配置开发环境:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010# . setenv
set the environment for hi3531.....!
Using built-in specs.
Target: arm-hisiv100-linux-uclibcgnueabi
Configured with: ../gcc-4.4-2010q1/configure --host=i486-linux-gnu --build=i486-linux-gnu --target=arm-hisiv100-linux-uclibcgnueabi --prefix=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/arm-hisiv100-linux --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-arch=armv5te --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shared --enable-lto --enable-symvers=gnu --enable-__cxa_atexit --disable-nls --enable-extra-hisi-multilibs --with-sysroot=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/arm-hisiv100-linux/target --with-build-sysroot=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/arm-hisiv100-linux/target --with-gmp=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-mpfr=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-ppl=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-cloog=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-libelf=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bstatic -lm' --enable-libgomp --enable-poison-system-directories --with-libelf=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-pkgversion='Hisilicon_v100(gcc4.4-290+uclibc_0.9.32.1+eabi+linuxpthread)' --with-bugurl=http://www.hisilicon.com/cn/service/claim.html
Thread model: posix
gcc version 4.4.1 (Hisilicon_v100(gcc4.4-290+uclibc_0.9.32.1+eabi+linuxpthread))
可以看到交叉编译的工具以及配置好了。
三,我们来配置live555的环境
首先进入该源码根目录:我们首先根据一个demo来修改hi3531的配置文件:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# cp config.armlinux config.hi3531
然后按照下面的修改:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# cat config.hi3531
CROSS_COMPILE?= arm-hisiv100-linux-uclibcgnueabi-
COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64
C = c
C_COMPILER = $(CROSS_COMPILE)gcc
C_FLAGS = $(COMPILE_OPTS)
CPP = cpp
CPLUSPLUS_COMPILER = $(CROSS_COMPILE)g++
CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 -DLOCALE_NOT_USED
OBJ = o
LINK = $(CROSS_COMPILE)g++ -o
LINK_OPTS =
CONSOLE_LINK_OPTS = $(LINK_OPTS)
LIBRARY_LINK = $(CROSS_COMPILE)ar cr
LIBRARY_LINK_OPTS = $(LINK_OPTS)
LIB_SUFFIX = a
LIBS_FOR_CONSOLE_APPLICATION =
LIBS_FOR_GUI_APPLICATION =
EXE =
修改后,我们先运行脚本自动生成makefile
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# ./genMakefiles hi3531
编译:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# make
这样就完成了交叉编译.
linux就是这点好,可以直接用pc机来验证后,然后移植到嵌入式平台,有了前面的验证,现在可以直接把live555移植到海思的hi3531平台上面了.
一,配置交叉编译工具,这个我直接写了个脚本,每次运行的时候都运行这个脚本,这样交叉编译工具也就配置好了,当然这个脚本还可以配置其它的东西:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010# cat setenv
#!/bin/sbin/
echo "set the environment for hi3531.....!"
export SDK_PATH=$PWD
crosstools_dir="./toolchain/arm-hisiv100nptl-linux/arm-hisiv100-linux/bin"
if [ ! -d "$crosstools_dir" ]; then
tar -jxvf toolchain/arm-hisiv100nptl-linux/arm-hisiv100-linux.tar.bz2 -C toolchain/arm-hisiv100nptl-linux/
fi
CROSSTOOL_UBOOT=$PWD/uboot/u-boot-2010.06/tools
CROSSTOOL_KERNEL=$PWD/toolchain/arm-hisiv100nptl-linux/arm-hisiv100-linux/bin
IMAGETOOL_PC=$PWD/tools
export PATH=$CROSSTOOL_KERNEL:$PATH
export PATH=$CROSSTOOL_UBOOT:$PATH
export PATH=$IMAGETOOL_PC:$PATH
arm-hisiv100-linux-uclibcgnueabi-gcc
二,先运行这个脚本,配置开发环境:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010# . setenv
set the environment for hi3531.....!
Using built-in specs.
Target: arm-hisiv100-linux-uclibcgnueabi
Configured with: ../gcc-4.4-2010q1/configure --host=i486-linux-gnu --build=i486-linux-gnu --target=arm-hisiv100-linux-uclibcgnueabi --prefix=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/arm-hisiv100-linux --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-arch=armv5te --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shared --enable-lto --enable-symvers=gnu --enable-__cxa_atexit --disable-nls --enable-extra-hisi-multilibs --with-sysroot=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/arm-hisiv100-linux/target --with-build-sysroot=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/arm-hisiv100-linux/target --with-gmp=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-mpfr=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-ppl=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-cloog=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-libelf=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bstatic -lm' --enable-libgomp --enable-poison-system-directories --with-libelf=/home/sying/uclibc_h3/hisiv100_finalnptl_src/hisiv100_src/install/host_lib --with-pkgversion='Hisilicon_v100(gcc4.4-290+uclibc_0.9.32.1+eabi+linuxpthread)' --with-bugurl=http://www.hisilicon.com/cn/service/claim.html
Thread model: posix
gcc version 4.4.1 (Hisilicon_v100(gcc4.4-290+uclibc_0.9.32.1+eabi+linuxpthread))
可以看到交叉编译的工具以及配置好了。
三,我们来配置live555的环境
首先进入该源码根目录:我们首先根据一个demo来修改hi3531的配置文件:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# cp config.armlinux config.hi3531
然后按照下面的修改:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# cat config.hi3531
CROSS_COMPILE?= arm-hisiv100-linux-uclibcgnueabi-
COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64
C = c
C_COMPILER = $(CROSS_COMPILE)gcc
C_FLAGS = $(COMPILE_OPTS)
CPP = cpp
CPLUSPLUS_COMPILER = $(CROSS_COMPILE)g++
CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 -DLOCALE_NOT_USED
OBJ = o
LINK = $(CROSS_COMPILE)g++ -o
LINK_OPTS =
CONSOLE_LINK_OPTS = $(LINK_OPTS)
LIBRARY_LINK = $(CROSS_COMPILE)ar cr
LIBRARY_LINK_OPTS = $(LINK_OPTS)
LIB_SUFFIX = a
LIBS_FOR_CONSOLE_APPLICATION =
LIBS_FOR_GUI_APPLICATION =
EXE =
修改后,我们先运行脚本自动生成makefile
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# ./genMakefiles hi3531
编译:
root@microcreat:/workdir/private/Hi3531_SDK_V1.0.7.3_B010/app/live.2012.12.24# make
这样就完成了交叉编译.
我来回答
回答3个
时间排序
认可量排序
认可0
认可0
认可0
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2020-07-16 16:28:29
-
2014-12-15 09:29:44
-
2015-04-30 17:17:11
-
2013-01-07 09:15:13
-
2013-01-07 08:59:41
-
2013-01-07 09:03:33
-
2018-12-18 15:00:38
-
2018-04-10 18:33:21
-
2018-11-25 11:08:57
-
2016-07-25 12:54:51
-
2023-11-08 18:03:13
-
2013-07-23 17:49:36
-
2014-10-06 16:53:23
-
2013-08-23 10:55:38
-
2017-08-29 11:12:48
-
2013-06-26 13:05:05
-
2014-03-17 19:10:39
-
2015-05-06 15:25:55
-
2013-01-07 22:49:04
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
5Hi3516CV610 如何使用SD卡升级固件
-
5cat /dev/logmpp 报错 <3>[ vi] [func]:vi_send_frame_node [line]:99 [info]:vi pic queue is full!
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认