x264之c64x+平台移植(二):arm端应用程序编译
2011-10-22 21:41
447 查看
参考codec server的html文档写app.cfg:
var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
osalGlobal.runtimeEnv = osalGlobal.LINUX;
xdc.useModule('ti.sdo.xdcruntime.linux.Settings');
xdc.useModule('ti.sdo.ce.ipc.dsplink.Ipc');
xdc.useModule('ti.sdo.ce.ipc.dsplink.Processor');//注意这行,漏掉的话会链接失败。
var Engine = xdc.useModule('ti.sdo.ce.Engine');
var myEngine = Engine.createFromServer(
"x264server", // Engine name (as referred to in the C app)
"bin/x264server.xe64P", // path to server exe, relative to its package dir
"xmu.x264server" // full server package name
);
var SCPY = xdc.useModule('ti.sdo.fc.scpy.SCPY');
var SDMA = xdc.useModule('ti.sdo.linuxutils.sdma.SDMA');
app.bld:
var GCArmv5T = xdc.useModule('gnu.targets.arm.GCArmv5T');
GCArmv5T.LONGNAME = 'bin/arm-none-linux-gnueabi-gcc';
GCArmv5T.platform = "ti.platforms.evm3530";
//GCArmv5T.rootDir = "C:\\Program Files\\CodeSourcery\\Sourcery G++ Lite";
GCArmv5T.rootDir = "/media/work/sdk/Sourcery_G++_Lite";
Build.targets = [
];
运行XDCPATH="/media/work/sdk/codec_engine_3_21_00_19/packages;/media/work/sdk/codec_engine_3_21_00_19/cetools/packages;/media/work/sdk/codec_engine_3_21_00_19/syslink_2_00_02_80/packages;/media/develop/git/x264dsp" "/media/work/sdk/codec_engine_3_21_00_19/xdctools_3_22_02_27/xs"
xdc.tools.configuro -o cfg_tmp -t gnu.targets.arm.GCArmv5T -p ti.platforms.evm3530 -b app.bld app.cfg
生成codec server的配置
删除linker.cmd的后面SECTIONS开始至文件尾部分,注意不能用-T linker.cmd编译,否则会莫名其妙地链接失败^_^
最后编译app对应的代码:
/opt/CodeSourcery/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gcc -o x264app v4l2_x264.o cfg_tmp/linker.cmd -lpthread -ldl -lrt
注意:
1、 linker.cmd与输入文件的顺序,并且不能加"-T"
2、链接时要加上-ldl -lrt。
var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
osalGlobal.runtimeEnv = osalGlobal.LINUX;
xdc.useModule('ti.sdo.xdcruntime.linux.Settings');
xdc.useModule('ti.sdo.ce.ipc.dsplink.Ipc');
xdc.useModule('ti.sdo.ce.ipc.dsplink.Processor');//注意这行,漏掉的话会链接失败。
var Engine = xdc.useModule('ti.sdo.ce.Engine');
var myEngine = Engine.createFromServer(
"x264server", // Engine name (as referred to in the C app)
"bin/x264server.xe64P", // path to server exe, relative to its package dir
"xmu.x264server" // full server package name
);
var SCPY = xdc.useModule('ti.sdo.fc.scpy.SCPY');
var SDMA = xdc.useModule('ti.sdo.linuxutils.sdma.SDMA');
app.bld:
var GCArmv5T = xdc.useModule('gnu.targets.arm.GCArmv5T');
GCArmv5T.LONGNAME = 'bin/arm-none-linux-gnueabi-gcc';
GCArmv5T.platform = "ti.platforms.evm3530";
//GCArmv5T.rootDir = "C:\\Program Files\\CodeSourcery\\Sourcery G++ Lite";
GCArmv5T.rootDir = "/media/work/sdk/Sourcery_G++_Lite";
Build.targets = [
];
运行XDCPATH="/media/work/sdk/codec_engine_3_21_00_19/packages;/media/work/sdk/codec_engine_3_21_00_19/cetools/packages;/media/work/sdk/codec_engine_3_21_00_19/syslink_2_00_02_80/packages;/media/develop/git/x264dsp" "/media/work/sdk/codec_engine_3_21_00_19/xdctools_3_22_02_27/xs"
xdc.tools.configuro -o cfg_tmp -t gnu.targets.arm.GCArmv5T -p ti.platforms.evm3530 -b app.bld app.cfg
生成codec server的配置
删除linker.cmd的后面SECTIONS开始至文件尾部分,注意不能用-T linker.cmd编译,否则会莫名其妙地链接失败^_^
最后编译app对应的代码:
/opt/CodeSourcery/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gcc -o x264app v4l2_x264.o cfg_tmp/linker.cmd -lpthread -ldl -lrt
注意:
1、 linker.cmd与输入文件的顺序,并且不能加"-T"
2、链接时要加上-ldl -lrt。
相关文章推荐
- jsoncpp linux平台编译和 arm移植
- Ubuntu下用NDK编译移植FFmpeg 2.0(配置最新版x264)到Android平台
- Ubuntu 下用NDK编译移植 ffmpeg 2.0 (配置最新版x264) 到android平台
- 利用ndk交叉编译x264到arm平台(带neon版本)
- QT环境搭建: QT玩转在linux的x86平台或者ARM平台上 - (2)交叉编译移植到ARM下
- jsoncpp linux平台编译和 arm移植
- 利用ndk交叉编译x264到arm平台(带neon版本)
- jsoncpp linux平台编译和 arm移植
- Ubuntu 下用NDK编译移植 ffmpeg 2.0 (配置最新版x264) 到android平台
- linux编译x86和arm平台的x264
- x264之c64x+平台移植
- Ubuntu 下用NDK编译移植 FFmpeg 2.0 (配置最新版x264) 到Android平台
- linux编译x86和arm平台的x264
- linux 7z命令交叉编译移植到arm linux平台
- 编译ARM平台的 QtEmbedded 的MySQL插件和移植MySQL到ARM开发板
- 将交叉编译好的OpenCV移植到ARM平台
- 移植编译bcm sdk6.4.8 过程-平台arm-linux cortex-a9双核,系xilinx soc
- ubuntu和arm平台下的ffmpeg和x264相关库的移植
- 编译ARM平台的 QtEmbedded 的MySQL插件和移植MySQL到ARM开发板
- x264之c64x+平台移植(一)