新手求助阿!ubuntu9.04编译skyeye1.2.8_rc1;没有报错,编译失败
环境:ubuntu 9.04 gcc4.3.3----都是原配的新装的系统。我的执行步骤是
1,下载skyeye-1.2.8_rc1到home/wobue-----我的家目录
2,解压:tar zxvf skyeye-1.2.8_rc1.tar.gz
3, 进入:cd skyeye-1.2.8_rc1/
4,sudo apt-get install libgtk2.0-dev pkg-config libatk1.0-dev libpango1.0-dev libfreetype6-dev libglib2.0-dev libx11-dev binutils-dev texinfo----安装完成后,又按照英文版使用说明,在新立德里面逐一检查,都装上了。
5, ./device/nandflash/nandflash_smallblock.c 第519行,
if ((nf->fdump= open(dev->dump, FILE_FLAG )) 0),改写为
if ((nf->fdump= open(dev->dump, FILE_FLAG,0777)) 0)。
4, sudo ./configure
5,sudo make
结果,没有报错,也没有提示enjoy it!
去binary目录下,只有一个readme文件,没有skyeye文件。
我可以成功编译1.2.4_rl版,但是1.2.5_rl和11.2.8_rc都是同一个毛病。
实测结果:版本:1.2.5 rl和1.2.8 rc1 均不能通过编译。----不报错,但binary目录下无法生成skyeye文件
版本:1。2。4 rl 不需要sudo ./configure直接make 编译通过。 binary目录下可以生成skyeye文件
编译信息最后一页如下:
Making all in memory/
make: 正在进入目录 `/home/wobue/skyeye-1.2.8_rc1/memory'
gcc -DMODET -DMODE32 -I. -I.. -I./ -I../arch/arm/dbct -I../arch/arm/common -I../arch/arm -I../utils/config -I../utils/config -I../utils/main -I../utils/main -I../utils -I../device -g -Wall -g -O2 -MT bank_ops.o -MD -MP -MF .deps/bank_ops.Tpo -c -o bank_ops.o bank_ops.c
bank_ops.c: 在函数‘bus_write’中:
bank_ops.c:58: 警告: 建议在用作真值的赋值语句前后加上括号
mv -f .deps/bank_ops.Tpo .deps/bank_ops.Po
gcc -DMODET -DMODE32 -I. -I.. -I./ -I../arch/arm/dbct -I../arch/arm/common -I../arch/arm -I../utils/config -I../utils/config -I../utils/main -I../utils/main -I../utils -I../device -g -Wall -g -O2 -MT io.o -MD -MP -MF .deps/io.Tpo -c -o io.o io.c
io.c: 在函数‘io_read’中:
io.c:240: 警告: 未使用的变量‘state’
io.c: 在函数‘io_write’中:
io.c:258: 警告: 未使用的变量‘state’
io.c: 在文件层:
../utils/config/skyeye_config.h:279: 警告: ‘skyeye_options’定义后未使用
mv -f .deps/io.Tpo .deps/io.Po
gcc -DMODET -DMODE32 -I. -I.. -I./ -I../arch/arm/dbct -I../arch/arm/common -I../arch/arm -I../utils/config -I../utils/config -I../utils/main -I../utils/main -I../utils -I../device-g -Wall -g -O2 -MT parse_mem.o -MD -MP -MF .deps/parse_mem.Tpo -c -o parse_mem.o parse_mem.c
parse_mem.c: 在函数‘parse_mem’中:
parse_mem.c:50: 警告: 隐式声明函数‘split_param’
parse_mem.c:62: 警告: 从不兼容的指针类型赋值
parse_mem.c:63: 警告: 从不兼容的指针类型赋值
parse_mem.c: 在文件层:
../utils/config/skyeye_config.h:279: 警告: ‘skyeye_options’定义后未使用
mv -f .deps/parse_mem.Tpo .deps/parse_mem.Po
gcc -DMODET -DMODE32 -I. -I.. -I./ -I../arch/arm/dbct -I../arch/arm/common -I../arch/arm -I../utils/config -I../utils/config -I../utils/main -I../utils/main -I../utils -I../device-g -Wall -g -O2 -MT ram.o -MD -MP -MF .deps/ram.Tpo -c -o ram.o ram.c
ram.c: 在函数‘mem_write_halfword’中:
ram.c:114: 警告: 从不兼容的指针类型赋值
ram.c: 在函数‘mem_reset’中:
ram.c:208: 警告: 对指针赋值时目标与指针符号不一致
ram.c:147: 警告: 未使用的变量‘mem’
ram.c: 在函数‘mem_read’中:
ram.c:261: 警告: 未使用的变量‘state’
ram.c: 在函数‘get_dma_addr’中:
ram.c:306: 警告: 格式‘%x’需要类型‘unsigned int’,但实参 4 的类型为‘long unsigned int’
ram.c:314: 警告: 从不兼容的指针类型赋值
ram.c: 在函数‘warn_write’中:
ram.c:320: 警告: 在有返回值的函数中,控制流程到达函数尾
ram.c: 在文件层:
../utils/config/skyeye_config.h:279: 警告: ‘skyeye_options’定义后未使用
mv -f .deps/ram.Tpo .deps/ram.Po
gcc -DMODET -DMODE32 -I. -I.. -I./ -I../arch/arm/dbct -I../arch/arm/common -I../arch/arm -I../utils/config -I../utils/config -I../utils/main -I../utils/main -I../utils -I../device-g -Wall -g -O2 -MT flash.o -MD -MP -MF .deps/flash.Tpo -c -o flash.o flash.c
../utils/config/skyeye_config.h:279: 警告: ‘skyeye_options’定义后未使用
mv -f .deps/flash.Tpo .deps/flash.Po
rm -f libmemory.a
ar cru libmemory.a bank_ops.o io.o parse_mem.o ram.o flash.o
ranlib libmemory.a
make:正在离开目录 `/home/wobue/skyeye-1.2.8_rc1/memory'
make: 正在进入目录 `/home/wobue/skyeye-1.2.8_rc1'
gcc -DMODET -g -O2 -D_FILE_OFFSET_BITS=64 -DSTANDALONE -DDEFAULT_INLINE=0-I. -I./utils/config -I./utils/main -I./utils/main -I./utils -I./device -I./utils/debugger -I./arch/arm/common -I./arch/arm -I./device/uart -I./device -I./utils/profile -I./third-party/bfd/ -I./third-party/include/ -g -O2 -MT skyeye.o -MD -MP -MF .deps/skyeye.Tpo -c -o skyeye.o `test -f 'utils/main/skyeye.c' || echo './'`utils/main/skyeye.c
utils/main/skyeye.c: 在函数‘sim_resume’中:
utils/main/skyeye.c:204: 警告: 初始化时将整数赋给指针,未作类型转换
mv -f .deps/skyeye.Tpo .deps/skyeye.Po
gcc-g -O2 -o skyeye skyeye.o ./utils/libutils.a ./arch/arm/libarm.a ./device/libdev.a ./arch/mips/libmips.a ./arch/ppc/libppc.a ./arch/bfin/libbfin.a ./arch/mips/libmips.a ./arch/coldfire/libcoldfire.a ./arch/sparc/libsparc.a ./memory/libmemory.a ./third-party/bfd/libbfd.a ./third-party/libiberty/libiberty.a -lc ./utils/libutils.a -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lgio-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lm -lc
make:正在离开目录 `/home/wobue/skyeye-1.2.8_rc1'
make:正在离开目录 `/home/wobue/skyeye-1.2.8_rc1'
wobue@wobue-desktop:~/skyeye-1.2.8_rc1$ 另外,我看别人有编译过去的,都是一样的系统,而且我最近也没干什么坏事呀,为什么就编译不过去呢?会不会跟终端有关系呢?我用的Konsole,不是系统自带的终端,是源里面下载的。我都折腾两天了,还是弄不好,谁来可怜可怜我呀! 另外再问一个,skyeye的版本需要跟skyeye-testsuite搭配么?1。2。4我sudo make,不带后缀就编译过去了,实在不行就1。2。4了。
1。2。4配合哪个版本的skyeye-testsuite最好亚?我需要用LCD。 编译不用在加sudo,普通权限就可以。
编译通过后skyeye-1.2.8_rc1/skyeye 就是目标文件。
修改.bashrc
export PATH=$PATH:/home/xxxx
重起conslole就可以使用skyeye了。
LCD需要确认安装了 libgtk+2.0-dev 库。 谢谢楼上回复!普通权限编译完成了。
本来看到skyeye-1.2.8_rc1/skyeye 了,也怀疑是不是编译成功了。只因为不在binary里面,就不敢确认了。因为拿skyeye当开发工具用,所以丝毫不敢马虎,严格按照说明书来。
说明书里说在binary,是说明书没写清楚,还是我编译的不完整?skyeye-1。2。8编译之后,在binary目录里,可能有skyeye这个文件么?如果可能有,为什么我的却在skyeye-1.2.8_rc1/。 楼主你太严谨了, 我的也是在顶层目录下的,你使用skyeye -v 什么的测试一下就知道了。Hello4skyeye那个实验很不错,用来测试挺好的。
页:
[1]