关于这个,opencore的目录下有文档quick_start.txt有简要的说明,先把那段话引用下来:
As part of the OpenCORE release, PacketVideo also provides it's internal
build system that can be used to build OpenCORE outside of Android with the
native linux toolchain.
The following are the steps involved:
NOTE 1: Assume <opencore> is the directory where you have downloaded the
OpenCORE codebase
NOTE 2: The setup scripts are meant to be used in with the bash shell.
cd <opencore>/build_config/opencore_dynamic
source setup.sh <opencore>
make -j
This will build all the required libraries in
<opencore>/build_config/opencore_dynamic/build/installed_lib/linux
and the executables in
<opencore>/build_config/opencore_dynamic/build/bin/linux.
意思很简单,就是到build_config/opencore_dynamic目录下运行setup.sh 然后运行make -j。
这里有个问题,如果在32位的操作系统上,这样做是能运行成功的,如果在64位系统上,会出现以下的错误:
“error: cast from 'OsclAny*' to int32 loses precision” 这是因为编译器是编译成了64位的,解决的办法是采用32位的编译器。
如果你是要移植到你自己的linux嵌入式设备上,那么就需要改一些内容了。
1,export ARCHITECTURE=XXXX (例如 linux_arm)。
2,在tools_v2/build/make/platforms目录下,加上XXXX.mk这里的XXXX必须和上一条的一致。然后在XXXX.mk里面加上对应的内容,主要就是交叉编译器的命令,具体的可以参考tools_v2/build/make/platforms/linux_arm.mk的内容。
3,在oscl/oscl/oscl/config/目录下,添加XXXX文件夹,然后把oscl/oscl/oscl/config/linux下的内容copy进去,然后做相应的更改。
4,然后make -j就行。
本文介绍了OpenCORE项目的编译步骤,包括使用setup.sh脚本和make-j命令进行构建的过程。针对64位系统出现的编译错误给出了解决方案,并提供了针对嵌入式设备移植所需的配置修改建议。
2334

被折叠的 条评论
为什么被折叠?



