20070627 uclinux make config 2 _IO_read_ptr
http://www.yippeesoft.com
 

初出茅庐
积 分:14
总数第:2 贴
来 自:Unknow
    perl安装问题
   摘自 中国Perl协会 用户推广组   alone  2005-07-28 11:44
http://perlchina.sun126.com/cgi-bin/ccb/index.cgi
+ TOPDIR=.
+ CC=arm-elf-gcc
+ /bin/sh extra/scripts/gen_bits_syscall_h.sh
/bin/sh: line 1: lib: command not found
CCCMD = arm-elf-gcc -DPERL_CORE -c -fno-strict-aliasing -O2 -g -fomit-frame-pointer -Dlinux -D__linux__ -Dunix -D__uClinux__ -DEMBED -I/HHARM740-R1/uClinux/lib/uClibc/include -I/HHARM740-R1/uClinux/lib/libm -I/HHARM740-R1/uClinux/lib/libcrypt_old -I/HHARM740-R1/uClinux -fno-builtin -nostartfiles -I/HHARM740-R1/uClinux/linux-2.4.x/include -O2
cc1: warning: -g with -fomit-frame-pointer may not give sensible debugging
sv.c: In function `Perl_sv_gets\’:
sv.c:4419: structure has no member named `_IO_read_end\’
sv.c:4419: structure has no member named `_IO_read_ptr\’
sv.c:4435: structure has no member named `_IO_read_ptr\’
sv.c:4473: structure has no member named `_IO_read_ptr\’
sv.c:4486: structure has no member named `_IO_read_end\’
sv.c:4486: structure has no member named `_IO_read_ptr\’
sv.c:4487: structure has no member named `_IO_read_ptr\’
sv.c:4514: structure has no member named `_IO_read_ptr\’
make[2]: *** [sv.o] Error 1
make[1]: *** [all] Error 2
make: *** [subdirs] Error 1

查看/usr/include/libio.h
struct _IO_FILE &leftsign;
  int _flags;           /* High-order word is _IO_MAGIC; rest is flags. */
#define _IO_file_flags _flags

  /* The following pointers correspond to the C++ streambuf protocol. */
  /* Note:  Tk uses the _IO_read_ptr and _IO_read_end fields directly. */
  char* _IO_read_ptr;   /* Current read pointer */
  char* _IO_read_end;   /* End of get area. */
  char* _IO_read_base;  /* Start of putback+get area. */
  char* _IO_write_base; /* Start of put area. */
  char* _IO_write_ptr;  /* Current put pointer. */
  char* _IO_write_end;  /* End of put area. */
  char* _IO_buf_base;   /* Start of reserve area. */
  char* _IO_buf_end;    /* End of reserve area. */
  /* The following fields are used to support backing up and undo. */
  char *_IO_save_base; /* Pointer to start of non-current get area. */
  char *_IO_backup_base;  /* Pointer to first valid character of backup area */
  char *_IO_save_end; /* Pointer to end of non-current get area. */

  struct _IO_marker *_markers;

  struct _IO_FILE *_chain;

so, it should be \’_flags\’

村上と申します。お世話になります。

suzaku-vのボードでperlを動作させようとしていますが、以下の
コンパイルエラーで止まってしまいます。
コンパイルを通す方法が分かれば教えていただきたいのですが?

操作手順:
1. menuconfig の"Customize Vendor/User Settings"を選択
2."Miscellaneous Applications  —>"で"[*]perl"を選択
3."make clean;make dep;make"でmake実行
4.エラーとなる。
—– 以下エラーメッセージ —-
sh  cflags libperl.a sv.o`  sv.c
          CCCMD =  powerpc-linux-gcc -DPERL_CORE -c -fno-strict-aliasing -O2 -Dl
inux -D__linux__ -Dunix -DEMBED -nostdinc -I/home/muraken/uClinux-dist/lib/uClib
c/include -I/home/muraken/uClinux-dist/lib/libcrypt_old -I/home/muraken/uClinux-
dist -idirafter /usr/lib/gcc-lib/powerpc-linux/3.3.5//include -I/home/muraken/uC
linux-dist/linux-2.4.x/include -O2
sv.c: 関数 `Perl_sv_gets\’ 内:
sv.c:4419: error: structure has no member named `_IO_read_end\’
sv.c:4419: error: structure has no member named `_IO_read_ptr\’
sv.c:4435: error: structure has no member named `_IO_read_ptr\’
sv.c:4473: error: structure has no member named `_IO_read_ptr\’
sv.c:4486: error: structure has no member named `_IO_read_end\’
sv.c:4486: error: structure has no member named `_IO_read_ptr\’
sv.c:4487: error: structure has no member named `_IO_read_ptr\’
sv.c:4514: error: structure has no member named `_IO_read_ptr\’
make[2]: *** [sv.o] エラー 1
make[2]: Leaving directory `/home/muraken/uClinux-dist/user/perl\’
make[1]: *** [all] エラー 2
make[1]: Leaving directory `/home/muraken/uClinux-dist/user\’
make: *** [subdirs] エラー 1
muraken at debian1:~/uClinux-dist$

現在の distに含まれている perl (5.6.1ベース)は、uClibcで compileするの
は難しいようです。5.8.x系の perlでは動くようですが個人的にはまだ試して
いません。

もうちょっと調べてみます。

历史博文

标签:, , , ,
三月 5, 2008 at 2:50 下午 by yippee 1,015 次
Category: Dev
Tags: , , , ,