大家好,移植卡卡库之中遇到了一些问题,请给位帮忙!
首先介绍下JPEG2000/Software的目录结构
/bin
/Documentation
Compiling_Instruxtions.txt
Kakadu.pdf
Overview.txt
/Executables 各种平台下,已经编译好的可执行二进制文件
/Linux
Usage_Examples.txt
/Kakadu_V2.2.3 这是源代码目录
/apps 各种工程文件
/bin
/coresys 核心代码全部在这个目录
/lib
/nolib
Updates.txt
/nolib_generated
/Kdu_compress
/Kdu_expand
/static_bin 二进制可执行程序
Kdu_compress.exe
Kdu_compress.ilk
Kdu_expad.exe
Ldu_expand.ilk
/v2_generated
/compress
/debug
License.pdf
思路是这样的,在coresys目录下生成一个静态链接库libkdu.a,这个步骤没有问题。然后再利用apps文件夹下的makefile来生成可执行程序(他们会引用那个静态链接库)。由于无论是arm平台,还是pc平台,用的编译器都是一致的,应该可以排除编译器的问题吧?
1:当是用交叉编译器编译的,为的是能够在arm平台下运行。但在这一步出现了如下错误:
/opt/arm-2009q1/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.3/../../../../arm-none-linux-gnueabi/bin/ld: ../../lib/libkdu.a(analysis.o): Relocations in generic ELF (EM: 3)
../../lib/libkdu.a: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make: *** [kdu_compress] 错误 1
2:如果改成gcc(ubuntu10.04)gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1),就会出现如下错误。
/usr/bin/ld: args.o: Relocations in generic ELF (EM: 40)
/usr/bin/ld: args.o: Relocations in generic ELF (EM: 40)
/usr/bin/ld: args.o: Relocations in generic ELF (EM: 40)
/usr/bin/ld: args.o: Relocations in generic ELF (EM: 40)
args.o: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make: *** [kdu_compress] 错误 1
如论如何,感谢能给我提供意见的人!
jpeg2000,kakaku移植问题。
-
- 帖子: 2
- 注册时间: 2013-01-14 11:35
- 系统: ubuntu