On Wed, Oct 19, 2005 at 07:50:32PM +0400, Alexey Tourbin wrote: > On Wed, Oct 19, 2005 at 06:18:10PM +0400, Alexey Tourbin wrote: > > On Wed, Oct 19, 2005 at 05:56:35PM +0400, Alexey Tourbin wrote: > > > > После пересборки perl-RPM работает. > > > Сломался rpmTagTable. > > $ cat test.c > > Ну? Странно всё это: $ cvs diff -u -r rpm-4_0_4-alt51 lib/rpmlib.h [...] --- lib/rpmlib.h 29 Feb 2004 14:14:02 -0000 1.6 +++ lib/rpmlib.h 17 Oct 2005 11:49:21 -0000 [...] @@ -178,7 +196,7 @@ */ /*@-redecl@*/ /*@observer@*/ /*@unchecked@*/ -extern const struct headerTagTableEntry_s rpmTagTable[]; +extern const struct headerTagTableEntry_s * rpmTagTable; /*@=redecl@*/ /** $ cat rttest.c #include #include int main() { printf("rpmTagTableSize = %i\nrpmTagTable = %p\nrpmTagTable[0].name = %s (%p)\n", rpmTagTableSize, rpmTagTable, rpmTagTable[0].name, rpmTagTable[0].name); return 0; } alt51$ gcc -Wall -Werror -I/usr/include/rpm rttest.c -lrpm -orttest-alt51 alt51$ ./rttest-alt51 rpmTagTableSize = 125 rpmTagTable = 0x8049740 rpmTagTable[0].name = RPMTAG_HEADERIMAGE (0x16b8e4) alt52$ gcc -Wall -Werror -I/usr/include/rpm rttest.c -lrpm -orttest-alt52 alt52$ ./rttest-alt52 rpmTagTableSize = 125 rpmTagTable = 0x2b00a0 rpmTagTable[0].name = RPMTAG_HEADERIMAGE (0x2ae760) alt51$ ./rttest-alt52 ./rttest-alt52: Symbol `rpmTagTable' has different size in shared object, consider re-linking rpmTagTableSize = 125 rpmTagTable = 0x16b8e4 Segmentation fault alt52$ ./rttest-alt51 rpmTagTableSize = 125 rpmTagTable = 0x8049740 rpmTagTable[0].name = `Г* (0x2b00a0) Тут он прав, полное Г*. Ну что, придётся откатить этот backport? -- ldv