Хочу собрать reiser4progs

Cent OS, Scientific Linux

Модератор: Модераторы разделов

Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Хочу собрать reiser4progs

Сообщение technotrance »

Здравствуйте!
Федора 12. Ядро PAE. Скачал исходники libaal и reiser4progs
Сначала установил libaal. На этом этапе я ругани не встретил.
Дальше пытаюсь поставить reiser4progs. И застрял вот на чём:

Код:

# ./configure checking build system type... i686-pc-linux checking host system type... i686-pc-linux checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether to enable maintainer-specific portions of Makefiles... no checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking for uuid_generate in -luuid... no configure: WARNING: libuuid could not be found which is required for the --with-uuid checking for readline in -lreadline... no configure: WARNING: GNU Readline could not be found which is required for the --with-readline checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking dependency style of gcc... (cached) gcc3 checking how to run the C preprocessor... gcc -E checking for a BSD-compatible install... /usr/bin/install -c checking whether ln -s works... yes checking whether make sets $(MAKE)... (cached) yes checking for ranlib... ranlib checking for gawk... (cached) gawk checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for /usr/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/nm -B checking how to recognize dependent libraries... pass_all checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking how to run the C++ preprocessor... g++ -E checking for g77... no checking for xlf... no checking for f77... no checking for frt... no checking for pgf77... no checking for cf77... no checking for fort77... no checking for fl32... no checking for af77... no checking for xlf90... no checking for f90... no checking for pgf90... no checking for pghpf... no checking for epcf90... no checking for gfortran... no checking for g95... no checking for xlf95... no checking for f95... no checking for fort... no checking for ifort... no checking for ifc... no checking for efc... no checking for pgf95... no checking for lf95... no checking for ftn... no checking whether we are using the GNU Fortran 77 compiler... no checking whether accepts -g... no checking the maximum length of command line arguments... 1966080 checking command to parse /usr/bin/nm -B output from gcc object... ok checking for objdir... .libs checking for ar... ar checking for ranlib... (cached) ranlib checking for strip... strip checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by g++... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC checking if g++ PIC flag -fPIC works... yes checking if g++ static flag -static works... no checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate appending configuration tag "F77" to libtool checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking printf.h usability... yes checking printf.h presence... yes checking for printf.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking mntent.h usability... yes checking mntent.h presence... yes checking for mntent.h... yes checking for stdint.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/mount.h usability... yes checking sys/mount.h presence... yes checking for sys/mount.h... yes checking sys/vfs.h usability... yes checking sys/vfs.h presence... yes checking for sys/vfs.h... yes checking for unistd.h... (cached) yes checking whether byte ordering is bigendian... no checking for an ANSI C-conforming const... yes checking for inline... inline checking for size_t... yes checking for struct stat.st_rdev... yes checking whether gcc needs -traditional... no checking whether lstat dereferences a symlink specified with a trailing slash... yes checking whether stat accepts an empty string... no checking for register_printf_function... yes checking for statfs... yes checking for getmntent... yes checking for hasmntopt... yes checking for memset... yes checking for strerror... yes checking for strtol... yes checking for time... yes checking for uname... yes checking for sysconf... yes checking whether -falign-loops works... yes checking whether -Wuninitialized works... yes checking whether -Wno-unused-parameter works... yes checking whether -Wredundant-decls works... yes checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... 64 checking for off_t... yes checking size of off_t... 8 checking for aal_device_open in -laal... yes checking aal/libaal.h usability... yes checking aal/libaal.h presence... yes checking for aal/libaal.h... yes checking for libaal version = 1.0.5... no

Версия то libaal как раз 1.0.5. Почему он думает иначе?

А вобще, если у кого есть src.rpm-ки libaal и reiser4progs, то поделитесь, пожалуйста. Я б их пересобрал просто...
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: Хочу собрать reiser4progs

Сообщение Ali1 »

Попробуйте переделать http://rpm.pbone.net/index.php3/stat/26/di...1.0.5-3.src.rpm
http://rpm.pbone.net/index.php3/stat/3/sro...1.0.6-1.src.rpm
Это PLD.
UPD
В SuSe есть reiser4progs-1.0.7
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Переделать, это значит, выполнить команду rpmbuild --rebuild packetname.src.rpm, правильно?
Попробовал проделать это с libaal-1.0.5-3.src.rpm. Сама сборка, я так понял, прошла нормально. Не получилось сделать из неё пакет:

Код: Выделить всё

# rpmbuild --rebuild libaal-1.0.5-3.src.rpm
            ...................................
Making all in aal
make[3]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include/aal'
make[3]: Цель `all' не требует выполнения команд.
make[3]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include/aal'
make[3]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[3]: Цель `all-am' не требует выполнения команд.
make[3]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[2]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[2]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5'
make[2]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5'
make[1]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5'
+ exit 0
Выполняется(%install): /bin/sh -e /var/tmp/rpm-tmp.Kz9EUo
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd libaal-1.0.5
+ rm -rf /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386
+ /usr/bin/make install DESTDIR=/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386
Making install in src
make[1]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/src'
make[2]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/src'
test -z "/usr/lib" || /bin/mkdir -p "/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib"
 /bin/sh ../libtool   --mode=install /usr/bin/install -c   libaal.la libaal-minimal.la '/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib'
libtool: install: /usr/bin/install -c .libs/libaal-1.0.so.5.0.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-1.0.so.5.0.0
libtool: install: (cd /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib && { ln -s -f libaal-1.0.so.5.0.0 libaal-1.0.so.5 || { rm -f libaal-1.0.so.5 && ln -s libaal-1.0.so.5.0.0 libaal-1.0.so.5; }; })
libtool: install: (cd /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib && { ln -s -f libaal-1.0.so.5.0.0 libaal.so || { rm -f libaal.so && ln -s libaal-1.0.so.5.0.0 libaal.so; }; })
libtool: install: /usr/bin/install -c .libs/libaal.lai /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal.la
libtool: install: /usr/bin/install -c .libs/libaal-minimal.so.0.0.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.so.0.0.0
libtool: install: (cd /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib && { ln -s -f libaal-minimal.so.0.0.0 libaal-minimal.so.0 || { rm -f libaal-minimal.so.0 && ln -s libaal-minimal.so.0.0.0 libaal-minimal.so.0; }; })
libtool: install: (cd /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib && { ln -s -f libaal-minimal.so.0.0.0 libaal-minimal.so || { rm -f libaal-minimal.so && ln -s libaal-minimal.so.0.0.0 libaal-minimal.so; }; })
libtool: install: /usr/bin/install -c .libs/libaal-minimal.lai /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.la
libtool: install: /usr/bin/install -c .libs/libaal.a /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal.a
libtool: install: chmod 644 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal.a
libtool: install: ranlib /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal.a
libtool: install: /usr/bin/install -c .libs/libaal-minimal.a /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.a
libtool: install: chmod 644 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.a
libtool: install: ranlib /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.a
libtool: install: warning: remember to run `libtool --finish /usr/lib'
make[2]: Цель `install-data-am' не требует выполнения команд.
make[2]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/src'
make[1]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/src'
Making install in include
make[1]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
Making install in aal
make[2]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include/aal'
make[3]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include/aal'
make[3]: Цель `install-exec-am' не требует выполнения команд.
test -z "/usr/include/aal" || /bin/mkdir -p "/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/include/aal"
 /usr/bin/install -c -m 644 libaal.h device.h file.h exception.h list.h malloc.h print.h string.h math.h endian.h debug.h bitops.h gauge.h block.h ui.h stream.h hash.h types.h unaligned.h '/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/include/aal'
make[3]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include/aal'
make[2]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include/aal'
make[2]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[3]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[3]: Цель `install-exec-am' не требует выполнения команд.
make[3]: Цель `install-data-am' не требует выполнения команд.
make[3]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[2]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[1]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5/include'
make[1]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5'
make[2]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5'
/usr/bin/make  install-exec-hook
make[3]: Entering directory `/root/rpmbuild/BUILD/libaal-1.0.5'
./run-ldconfig /usr/lib

Running /sbin/ldconfig

make[3]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5'
test -z "/usr/share/aclocal" || /bin/mkdir -p "/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/share/aclocal"
 /usr/bin/install -c -m 644 libaal.m4 '/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/share/aclocal'
make[2]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5'
make[1]: Leaving directory `/root/rpmbuild/BUILD/libaal-1.0.5'
+ install -d /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/lib
+ mv -f /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-1.0.so.5 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-1.0.so.5.0.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.so.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.so.0.0.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/lib
++ cd /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/lib
++ echo libaal-1.0.so.5.0.0
+ ln -sf /lib/libaal-1.0.so.5.0.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal.so
++ cd /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/lib
++ echo libaal-minimal.so.0.0.0
+ ln -sf /lib/libaal-minimal.so.0.0.0 /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/lib/libaal-minimal.so
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/brp-strip
+ /usr/lib/rpm/brp-strip-static-archive
+ /usr/lib/rpm/brp-strip-comment-note
Processing files: libaal-1.0.5-3.i386
Выполняется(%doc): /bin/sh -e /var/tmp/rpm-tmp.DveeFG
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd libaal-1.0.5
+ DOCDIR=/root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/share/doc/libaal-1.0.5
+ export DOCDIR
+ rm -rf /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/share/doc/libaal-1.0.5
+ /bin/mkdir -p /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/share/doc/libaal-1.0.5
+ cp -pr AUTHORS BUGS COPYING CREDITS ChangeLog README THANKS TODO /root/rpmbuild/BUILDROOT/libaal-1.0.5-3.i386/usr/share/doc/libaal-1.0.5
+ exit 0
Provides: libaal-1.0.so.5 libaal-minimal.so.0
Requires(interp): /sbin/ldconfig /sbin/ldconfig
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig
Requires: libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.1.1) libc.so.6(GLIBC_2.1.3) rtld(GNU_HASH)
Processing files: libaal-devel-1.0.5-3.i386
ошибка: Файл должен начинаться с "/": %{_aclocaldir}/libaal.m4


Ошибки сборки пакетов:
    пользователь builder не существует - используется root
    пользователь builder не существует - используется root
    пользователь builder не существует - используется root
    Файл должен начинаться с "/": %{_aclocaldir}/libaal.m4

Это нужно что-то в спеке поправить? Или я слишком глубоко рою?
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Получилось пересобрать пакет от сюзы libaal-1_0-5-1.0.5-78.3.src.rpm. Затем установил полученные rpm-ки.
Однако, когда попробовал пересобрать reiser4progs-1.0.7-2.7.src.rpm (тоже сюзовская) то уткнулся всё в ту же ошибку, которая была в первом посте:

Код: Выделить всё

# rpmbuild --rebuild reiser4progs-1.0.7-2.7.src.rpm
Устанавливается reiser4progs-1.0.7-2.7.src.rpm
предупреждение: InstallSourcePackage at: psm.c:232: Заголовок V3 DSA signature: NOKEY, key ID 713600e4
Выполняется(%prep): /bin/sh -e /var/tmp/rpm-tmp.HnQoq2
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd /root/rpmbuild/BUILD
+ rm -rf reiser4progs-1.0.7
+ /usr/bin/bzip2 -dc /root/rpmbuild/SOURCES/reiser4progs-1.0.7.tar.bz2
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd reiser4progs-1.0.7
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Выполняется(%build): /bin/sh -e /var/tmp/rpm-tmp.y1IHyR
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd reiser4progs-1.0.7
+ aclocal --force
configure.in:362: warning: AC_CACHE_VAL(falign_loop_flag, ...): suspicious cache-id, must contain _cv_ to be cached
../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from...
configure.in:362: the top level
configure.in:370: warning: AC_CACHE_VAL(uninitialized, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:370: the top level
configure.in:377: warning: AC_CACHE_VAL(no_unused_parameter, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:377: the top level
configure.in:384: warning: AC_CACHE_VAL(redundant_decls, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:384: the top level
+ libtoolize --force
libtoolize: putting auxiliary files in `.'.
libtoolize: linking file `./ltmain.sh'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.in and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
libtoolize: `AC_PROG_RANLIB' is rendered obsolete by `LT_INIT'
+ autoconf --force
configure.in:362: warning: AC_CACHE_VAL(falign_loop_flag, ...): suspicious cache-id, must contain _cv_ to be cached
../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from...
configure.in:362: the top level
configure.in:370: warning: AC_CACHE_VAL(uninitialized, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:370: the top level
configure.in:377: warning: AC_CACHE_VAL(no_unused_parameter, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:377: the top level
configure.in:384: warning: AC_CACHE_VAL(redundant_decls, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:384: the top level
+ autoheader --force
configure.in:362: warning: AC_CACHE_VAL(falign_loop_flag, ...): suspicious cache-id, must contain _cv_ to be cached
../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from...
configure.in:362: the top level
configure.in:370: warning: AC_CACHE_VAL(uninitialized, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:370: the top level
configure.in:377: warning: AC_CACHE_VAL(no_unused_parameter, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:377: the top level
configure.in:384: warning: AC_CACHE_VAL(redundant_decls, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:384: the top level
+ automake -afc
configure.in:362: warning: AC_CACHE_VAL(falign_loop_flag, ...): suspicious cache-id, must contain _cv_ to be cached
../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from...
../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from...
configure.in:362: the top level
configure.in:370: warning: AC_CACHE_VAL(uninitialized, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:370: the top level
configure.in:377: warning: AC_CACHE_VAL(no_unused_parameter, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:377: the top level
configure.in:384: warning: AC_CACHE_VAL(redundant_decls, ...): suspicious cache-id, must contain _cv_ to be cached
configure.in:384: the top level
demos/Makefile.am:7: compiling `misc.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.in'
include/Makefile.am:1: name `aux' is reserved on W32 and DOS platforms
Makefile.am:16: all-sources: non-POSIX variable name
Makefile.am:19: all-sources: non-POSIX variable name
+ CFLAGS='-O2 -g -march=i386 -mtune=i686 -Wall -Wno-unused'
+ ./configure --prefix=/usr --libdir=/usr/lib --bindir=/usr/bin --includedir=/usr/include --sysconfdir=/etc --mandir=/usr/share/man
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for uuid_generate in -luuid... no
configure: WARNING: libuuid could not be found which is required for the --with-uuid

checking for readline in -lreadline... yes
checking for library containing tgetent... -lncurses
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether make sets $(MAKE)... (cached) yes
checking for ranlib... ranlib
checking for gawk... (cached) gawk
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking the maximum length of command line arguments... 1966080
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... (cached) ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking readline/readline.h usability... yes
checking readline/readline.h presence... yes
checking for readline/readline.h... yes
checking readline/history.h usability... yes
checking readline/history.h presence... yes
checking for readline/history.h... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for ANSI C header files... (cached) yes
checking printf.h usability... yes
checking printf.h presence... yes
checking for printf.h... yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking mntent.h usability... yes
checking mntent.h presence... yes
checking for mntent.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/mount.h usability... yes
checking sys/mount.h presence... yes
checking for sys/mount.h... yes
checking sys/vfs.h usability... yes
checking sys/vfs.h presence... yes
checking for sys/vfs.h... yes
checking for unistd.h... (cached) yes
checking whether byte ordering is bigendian... no
checking for rl_completion_matches... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for size_t... yes
checking for struct stat.st_rdev... yes
checking whether gcc needs -traditional... no
checking whether lstat dereferences a symlink specified with a trailing slash... yes
checking whether stat accepts an empty string... no
checking for register_printf_function... yes
checking for statfs... yes
checking for getmntent... yes
checking for hasmntopt... yes
checking for memset... yes
checking for strerror... yes
checking for strtol... yes
checking for time... yes
checking for uname... yes
checking for sysconf... yes
checking whether -falign-loops works... yes
checking whether -Wuninitialized works... yes
checking whether -Wno-unused-parameter works... yes
checking whether -Wredundant-decls works... yes
checking whether -Wredundant-decls works with readline.h... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking size of off_t... 8
checking for aal_device_open in -laal... yes
checking aal/libaal.h usability... yes
checking aal/libaal.h presence... yes
checking for aal/libaal.h... yes
checking for libaal version = 1.0.5... no
+ make 'CFLAGS=-O2 -g -march=i386 -mtune=i686 -Wall -Wno-unused'
make: *** Не заданы цели и не найден make-файл.  Останов.
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.y1IHyR (%build)


Ошибки сборки пакетов:
    InstallSourcePackage at: psm.c:232: Заголовок V3 DSA signature: NOKEY, key ID 713600e4
    Неверный код возврата из /var/tmp/rpm-tmp.y1IHyR (%build)


Я в ступоре... Как его победить?
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

Есть кое-что: http://kerneltrap.org/mailarchive/reiserfs.../6509123/thread - может помочь установка glibc-static. Если нет, то в корне сборки должен быть файл config.log - покажите его содержимое, пожалуйста.
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Да, вы абсолютно правы! Дело было именно в этом пакете :)
Мне помогли разобраться тут:
http://www.fedoralinux.ru/forum/viewtopic....id=14062#p14062

Но теперь возник другой вопрос. Уже после сборки:

Код: Выделить всё

# mkfs.reiser4 -L newlabel /dev/sdb1
mkfs.reiser4 1.0.7
Copyright (C) 2001-2005 by Hans Reiser, licensing governed by reiser4progs/COPYING.

Block size 4096 will be used.
Linux 2.6.32.21-168.fc12.i686.PAE is detected.
Reiser4 is going to be created on /dev/sdb1.
(Yes/No): yes
Creating reiser4 on /dev/sdb1 ... done

Код: Выделить всё

# mount /dev/sdb1 /home/shares
mount: неизвестный тип файловой системы 'reiser4'

Что ей для монтирования не хватает?
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

technotrance писал(а):
24.09.2010 17:42
Что ей для монтирования не хватает?

Ядра с поддержкой Reiser4.
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Такс... Чёт я тогда вобще ничего не понимаю...
Перед тем, как решиться попробовать reiser4, я почитал тут, что:
"Я хочу попробовать эту ФС. С чего мне начать?
reiser4progs

Если вы не собираетесь использовать reiser4 как ФС для корневого раздела, то можете просто установить reiser4progs из репозитариев вашего дистрибутива и пропустить этот подраздел."

Т.е., всё-таки, можно или нельзя пользоваться rieser4 без пересборки и патчинья ядра?
Я просто хотел общую шару сделать на rieser4.
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

technotrance писал(а):
24.09.2010 19:29
Т.е., всё-таки, можно или нельзя пользоваться rieser4 без пересборки и патчинья ядра или нельзя?

Создавать и модифицировать стандартными программами - можно. Монтировать - нельзя, нужна поддержка в ядре.
Дочитайте немного дальше по приведённой вами же ссылке.
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Понятно...
Мне ещё ни разу не приходилось ни пересобрать ядро, ни патчить... В приведённой мной ссылке рассматривается ядро Генту.
Для федоры это также делается или есть какие-то тонкости?
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: Хочу собрать reiser4progs

Сообщение Ali1 »

technotrance писал(а):
27.09.2010 08:15
Мне ещё ни разу не приходилось ни пересобрать ядро, ни патчить... В приведённой мной ссылке рассматривается ядро Генту.
Для федоры это также делается или есть какие-то тонкости?

Тонкости есть.
По уму нужно делать пакет. http://fedoraproject.org/wiki/Docs/CustomKernel
Несколько(Весьма :)) устаревшее руководство -- Создание ядра из src.rpm в fedora7.
Или более простой но не очень верный путь -- Сборка ядра в Fedora Core 6
Посмотрите:
http://fedoraproject.org/wiki/User:Viji#Fe...reiser4_support
https://www.centos.org/modules/newbb/viewto...26&forum=37

UPD
Возможно где то в сети есть готовый модуль, который можно собрать, используя только kernel-dev (Building_Only_Kernel_Modules).
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Делал всё, как написано в первой ссылке. На шаге "Copy the Source Tree and Generate a Patch" пропатчил ядро командой gunzip -c reiser4-for-2.6.32.patch.gz | patch -p1
После, также действовал по инструкции.
Примерно сразу же вначале сборки получил ошибку:

Код: Выделить всё

++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-x86_64-debug.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-x86_64-debug.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-x86_64.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-x86_64.config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-PAE.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-PAEdebug.config .config
++ cut -b 3-
++ head -1 .config
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-debug.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
CONFIG_REISER4_FS
make[1]: *** [nonint_oldconfig] Error 1
make: *** [nonint_oldconfig] Error 2
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.VkjThA (%prep)
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

Это значит, что в конфигурационном файле ядра отсутствуют параметры, добавленные патчем. Вы настройку ядра проводили?
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Настройка ядра, это имеете виду вот это:
Run the following command:
make oldconfig
Then run the following command, selecting and saving the desired kernel options from the text-based UI:
make menuconfig

?
Когда я запустил первую команду, то она меня спросила, включить или нет поддержку reiser4 и reiser4 в дебаггрежиме(как-то так)
Поддержку reiser4 включил в режиме ядра, от второго отказался.
Когда же ввёл make menuconfig, то ничего менять не стал, т.к. возле reiser4 уже стоял крыж.
Или это не то, про что Вы говорите?
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

Приведите точную команду, которой собираете.
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: Хочу собрать reiser4progs

Сообщение Ali1 »

Add a new line to the top of the config file that contains the hardware platform the kernel is built for (the output of uname -i). The line is preceded by a # sign. For example, an x86_64 machine would have the following line added to the top of the config file:

http://fedoraproject.org/wiki/Docs/CustomKernel
Прим Проверяем .config. Он должен начинаться со строки
# i386
Если нет - добавьте ее в самое начало файла. Без этой строки ядро не соберется.

Не оно?
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Не, как раз на это я с самой первой попытки обратил внимание и перепроверил перед сборкой.
Щас тогда давайте я попробую всё сделать заново и буду записывать каждый свой шаг. И попозже сюда это напишу.
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Итак, поехали, описываю шаги, которые я делал, следую документации:
Get the Source
1.Подготавливаю среду:

Код: Выделить всё

[911@samba ~]$ rpmdev-setuptree

2.Скачиваю федоровское ядро:

Код: Выделить всё

[911@samba ~]$ yumdownloader --source kernel
Enabling updates-source repository
Enabling fedora-source repository
kernel-2.6.32.21-168.fc12.src.rpm     |  64 MB     04:35

3.Ставлю зависимости (правда, они уже стоят)

Код: Выделить всё

[911@samba ~]$ su -c 'yum-builddep kernel-2.6.32.21-168.fc12.src.rpm'
Пароль:
Getting requirements for kernel-2.6.32.21-168.fc12.src
 --> Already installed : module-init-tools-3.9-4.fc12.i686
 --> Already installed : patch-2.6.1-4.fc12.i686
 --> Already installed : bash-4.0.38-1.fc12.i686
 --> Already installed : coreutils-7.6-11.fc12.i686
 --> Already installed : 2:tar-1.22-13.fc12.i686
 --> Already installed : bzip2-1.0.5-6.fc12.i686
 --> Already installed : 1:findutils-4.4.2-8.fc12.i686
 --> Already installed : gzip-1.3.12-15.fc12.i686
 --> Already installed : m4-1.4.13-4.fc12.i686
 --> Already installed : 4:perl-5.10.0-91.fc12.i686
 --> Already installed : 1:make-3.81-18.fc12.i686
 --> Already installed : diffutils-2.8.1-25.fc12.i686
 --> Already installed : gawk-3.1.7-3.fc12.i686
 --> Already installed : gcc-4.4.4-10.fc12.i686
 --> Already installed : binutils-2.19.51.0.14-37.fc12.i686
 --> Already installed : redhat-rpm-config-9.0.3-18.fc12.noarch
 --> Already installed : net-tools-1.60-100.fc12.i686
 --> Already installed : xmlto-0.0.23-2.fc12.i686
 --> Already installed : asciidoc-8.4.5-4.fc12.noarch
 --> Already installed : elfutils-libelf-devel-0.148-1.fc12.i686
 --> Already installed : zlib-devel-1.2.3-23.fc12.i686
 --> Already installed : binutils-devel-2.19.51.0.14-37.fc12.i686
 --> Already installed : rpm-build-4.7.2-2.fc12.i686
No uninstalled build requires

4.Устанавливаю RPM-ку:

Код: Выделить всё

[911@samba ~]$ rpm -Uvh kernel-2.6.32.21-168.fc12.src.rpm
   1:kernel                 предупреждение: пользователь mockbuild не существует - используется root
предупреждение: группа mockbuild не существует - используется root
предупреждение: пользователь mockbuild не существует - используется root
                 .................................
предупреждение: пользователь mockbuild не существует - используется root
предупреждение: группа mockbuild не существует - используется root
предупреждение: пользователь mockbuild не существует - используется root
предупреждение: группа mockbuild не существует - используется root
########################################### [100%]
предупреждение: пользователь mockbuild не существует - используется root
предупреждение: группа mockbuild не существует - используется root
             ................................
предупреждение: пользователь mockbuild не существует - используется root
предупреждение: группа mockbuild не существует - используется root


Prepare the Kernel Source Tree
1.Готовим ядро:

Код: Выделить всё

[911@samba SPECS]$ rpmbuild -bp --target=`uname -m` kernel.spec
         ................................
++ grep -c kernel-2.6.32.21-ppc64.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-ppc64.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-s390x.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-s390x.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-sparc64.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-sparc64.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-x86_64-debug.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-x86_64-debug.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-x86_64.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-x86_64.config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-PAE.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-PAEdebug.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-debug.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ find . '(' -name '*.orig' -o -name '*~' ')' -exec rm -f '{}' ';'
+ cd ..
+ exit 0

Перехожу в каталог ~/rpmbuild/BUILD/kernel-2.6.32.fc12, в котором вижу каталоги linux-2.6.32.i686 и vanilla-2.6.32.
И прямо в нём же делаю копию кталога linux-2.6.32.i686 под названием linux-2.6.32.i686.orig.
Затем перехожу в каталог linux-2.6.32.i686 и копирую туда файл reiser4-for-2.6.32.patch.gz.
Патчу ядро:

Код: Выделить всё

[911@samba linux-2.6.32.i686]$ gunzip -c reiser4-for-2.6.32.patch.gz | patch -p1
patching file Documentation/Changes
patching file Documentation/filesystems/reiser4.txt
patching file fs/fs-writeback.c
Hunk #5 succeeded at 1348 (offset 27 lines).
patching file fs/inode.c
patching file fs/Kconfig
patching file fs/Makefile
patching file fs/reiser4/as_ops.c
patching file fs/reiser4/block_alloc.c
patching file fs/reiser4/block_alloc.h
patching file fs/reiser4/blocknrset.c
patching file fs/reiser4/carry.c
patching file fs/reiser4/carry.h
patching file fs/reiser4/carry_ops.c
patching file fs/reiser4/carry_ops.h
patching file fs/reiser4/context.c
patching file fs/reiser4/context.h
patching file fs/reiser4/coord.c
patching file fs/reiser4/coord.h
patching file fs/reiser4/debug.c
patching file fs/reiser4/debug.h
patching file fs/reiser4/dformat.h
patching file fs/reiser4/dscale.c
patching file fs/reiser4/dscale.h
patching file fs/reiser4/entd.c
patching file fs/reiser4/entd.h
patching file fs/reiser4/eottl.c
patching file fs/reiser4/estimate.c
patching file fs/reiser4/export_ops.c
patching file fs/reiser4/flush.c
patching file fs/reiser4/flush.h
patching file fs/reiser4/flush_queue.c
patching file fs/reiser4/forward.h
patching file fs/reiser4/fsdata.c
patching file fs/reiser4/fsdata.h
patching file fs/reiser4/init_super.c
patching file fs/reiser4/inode.c
patching file fs/reiser4/inode.h
patching file fs/reiser4/ioctl.h
patching file fs/reiser4/jnode.c
patching file fs/reiser4/jnode.h
patching file fs/reiser4/kassign.c
patching file fs/reiser4/kassign.h
patching file fs/reiser4/Kconfig
patching file fs/reiser4/key.c
patching file fs/reiser4/key.h
patching file fs/reiser4/ktxnmgrd.c
patching file fs/reiser4/ktxnmgrd.h
patching file fs/reiser4/lock.c
patching file fs/reiser4/lock.h
patching file fs/reiser4/Makefile
patching file fs/reiser4/oid.c
patching file fs/reiser4/page_cache.c
patching file fs/reiser4/page_cache.h
patching file fs/reiser4/plugin/cluster.c
patching file fs/reiser4/plugin/cluster.h
patching file fs/reiser4/plugin/compress/compress.c
patching file fs/reiser4/plugin/compress/compress.h
patching file fs/reiser4/plugin/compress/compress_mode.c
patching file fs/reiser4/plugin/compress/Makefile
patching file fs/reiser4/plugin/crypto/cipher.c
patching file fs/reiser4/plugin/crypto/cipher.h
patching file fs/reiser4/plugin/crypto/digest.c
patching file fs/reiser4/plugin/dir/dir.h
patching file fs/reiser4/plugin/dir/hashed_dir.c
patching file fs/reiser4/plugin/dir/Makefile
patching file fs/reiser4/plugin/dir/seekable_dir.c
patching file fs/reiser4/plugin/dir_plugin_common.c
patching file fs/reiser4/plugin/disk_format/disk_format40.c
patching file fs/reiser4/plugin/disk_format/disk_format40.h
patching file fs/reiser4/plugin/disk_format/disk_format.c
patching file fs/reiser4/plugin/disk_format/disk_format.h
patching file fs/reiser4/plugin/disk_format/Makefile
patching file fs/reiser4/plugin/fibration.c
patching file fs/reiser4/plugin/fibration.h
patching file fs/reiser4/plugin/file/cryptcompress.c
patching file fs/reiser4/plugin/file/cryptcompress.h
patching file fs/reiser4/plugin/file/file.c
patching file fs/reiser4/plugin/file/file_conversion.c
patching file fs/reiser4/plugin/file/file.h
patching file fs/reiser4/plugin/file/Makefile
patching file fs/reiser4/plugin/file/symfile.c
patching file fs/reiser4/plugin/file/symlink.c
patching file fs/reiser4/plugin/file/tail_conversion.c
patching file fs/reiser4/plugin/file_ops.c
patching file fs/reiser4/plugin/file_ops_readdir.c
patching file fs/reiser4/plugin/file_plugin_common.c
patching file fs/reiser4/plugin/hash.c
patching file fs/reiser4/plugin/inode_ops.c
patching file fs/reiser4/plugin/inode_ops_rename.c
patching file fs/reiser4/plugin/item/acl.h
patching file fs/reiser4/plugin/item/blackbox.c
patching file fs/reiser4/plugin/item/blackbox.h
patching file fs/reiser4/plugin/item/cde.c
patching file fs/reiser4/plugin/item/cde.h
patching file fs/reiser4/plugin/item/ctail.c
patching file fs/reiser4/plugin/item/ctail.h
patching file fs/reiser4/plugin/item/extent.c
patching file fs/reiser4/plugin/item/extent_file_ops.c
patching file fs/reiser4/plugin/item/extent_flush_ops.c
patching file fs/reiser4/plugin/item/extent.h
patching file fs/reiser4/plugin/item/extent_item_ops.c
patching file fs/reiser4/plugin/item/internal.c
patching file fs/reiser4/plugin/item/internal.h
patching file fs/reiser4/plugin/item/item.c
patching file fs/reiser4/plugin/item/item.h
patching file fs/reiser4/plugin/item/Makefile
patching file fs/reiser4/plugin/item/sde.c
patching file fs/reiser4/plugin/item/sde.h
patching file fs/reiser4/plugin/item/static_stat.c
patching file fs/reiser4/plugin/item/static_stat.h
patching file fs/reiser4/plugin/item/tail.c
patching file fs/reiser4/plugin/item/tail.h
patching file fs/reiser4/plugin/Makefile
patching file fs/reiser4/plugin/node/Makefile
patching file fs/reiser4/plugin/node/node40.c
patching file fs/reiser4/plugin/node/node40.h
patching file fs/reiser4/plugin/node/node.c
patching file fs/reiser4/plugin/node/node.h
patching file fs/reiser4/plugin/object.c
patching file fs/reiser4/plugin/object.h
patching file fs/reiser4/plugin/plugin.c
patching file fs/reiser4/plugin/plugin.h
patching file fs/reiser4/plugin/plugin_header.h
patching file fs/reiser4/plugin/plugin_set.c
patching file fs/reiser4/plugin/plugin_set.h
patching file fs/reiser4/plugin/security/Makefile
patching file fs/reiser4/plugin/security/perm.c
patching file fs/reiser4/plugin/security/perm.h
patching file fs/reiser4/plugin/space/bitmap.c
patching file fs/reiser4/plugin/space/bitmap.h
patching file fs/reiser4/plugin/space/Makefile
patching file fs/reiser4/plugin/space/space_allocator.h
patching file fs/reiser4/plugin/tail_policy.c
patching file fs/reiser4/pool.c
patching file fs/reiser4/pool.h
patching file fs/reiser4/readahead.c
patching file fs/reiser4/readahead.h
patching file fs/reiser4/README
patching file fs/reiser4/reiser4.h
patching file fs/reiser4/safe_link.c
patching file fs/reiser4/safe_link.h
patching file fs/reiser4/seal.c
patching file fs/reiser4/seal.h
patching file fs/reiser4/search.c
patching file fs/reiser4/status_flags.c
patching file fs/reiser4/status_flags.h
patching file fs/reiser4/super.c
patching file fs/reiser4/super.h
patching file fs/reiser4/super_ops.c
patching file fs/reiser4/tap.c
patching file fs/reiser4/tap.h
patching file fs/reiser4/tree.c
patching file fs/reiser4/tree.h
patching file fs/reiser4/tree_mod.c
patching file fs/reiser4/tree_mod.h
patching file fs/reiser4/tree_walk.c
patching file fs/reiser4/tree_walk.h
patching file fs/reiser4/txnmgr.c
patching file fs/reiser4/txnmgr.h
patching file fs/reiser4/type_safe_hash.h
patching file fs/reiser4/vfs_ops.c
patching file fs/reiser4/vfs_ops.h
patching file fs/reiser4/wander.c
patching file fs/reiser4/wander.h
patching file fs/reiser4/writeout.h
patching file fs/reiser4/znode.c
patching file fs/reiser4/znode.h
patching file include/linux/fs.h
Hunk #1 succeeded at 512 (offset 3 lines).
Hunk #2 succeeded at 1575 (offset 5 lines).
Hunk #3 succeeded at 2092 (offset 5 lines).
patching file include/linux/mm.h
patching file include/linux/writeback.h
patching file mm/filemap.c
patching file mm/page-writeback.c

После патчинья удаляю файл reiser4-for-2.6.32.patch.gz из каталога linux-2.6.32.i686.
Поднимаюсь на каталог выше и запускаю diff:

Код: Выделить всё

[911@samba kernel-2.6.32.fc12]$ diff -uNrp linux-2.6.32.i686.orig linux-2.6.32.i686 > ../../SOURCES/linux-2.6-reiser4.patch

В каталоге SOURCES появляется файл linux-2.6-reiser4.patch. После чего, удаляю каталог linux-2.6.32.i686.orig. (Он ведь больше не нужен, правильно?)

Configure Kernel Options
1.Далее, захожу в каталог ~/rpmbuild/BUILD/kernel-2.6.32.fc12/linux-2.6.32.i686/configs и вижу там kernel-2.6.32.21-i686.config, kernel-2.6.32.21-i686-PAE.config, kernel-2.6.32.21-i686-debug.config и kernel-2.6.32.21-i686-PAEdebug.config
Смотрю вывод команды:

Код: Выделить всё

[911@samba configs]$ uname -r
2.6.32.21-168.fc12.i686.PAE

2.Получается, что мне нужен файл kernel-2.6.32.21-i686-PAE.config. Беру его:

Код: Выделить всё

[911@samba configs]$ cp kernel-2.6.32.21-i686-PAE.config ../.config

И вот только щас я обратил внимание на фразу:
If you only want to make minor changes to the default fedora kernel, skip to step 4., and use one of the two configuration tools to edit those minor changes into the default config file.

3.Поэтому, щас я попробую сделать только команду make oldconfig:

Код: Выделить всё

[911@samba linux-2.6.32.i686]$ make oldconfig
scripts/kconfig/conf -o arch/x86/Kconfig
*
* Restart config...
*
*
* File systems
*
Second extended fs support (EXT2_FS) [M/n/y/?] m
  Ext2 extended attributes (EXT2_FS_XATTR) [Y/n/?] y
    Ext2 POSIX Access Control Lists (EXT2_FS_POSIX_ACL) [Y/n/?] y
    Ext2 Security Labels (EXT2_FS_SECURITY) [Y/n/?] y
  Ext2 execute in place support (EXT2_FS_XIP) [Y/n/?] y
Ext3 journalling file system support (EXT3_FS) [Y/n/m/?] y
  Default to 'data=ordered' in ext3 (EXT3_DEFAULTS_TO_ORDERED) [Y/n/?] y
  Ext3 extended attributes (EXT3_FS_XATTR) [Y/n/?] y
    Ext3 POSIX Access Control Lists (EXT3_FS_POSIX_ACL) [Y/n/?] y
    Ext3 Security Labels (EXT3_FS_SECURITY) [Y/n/?] y
The Extended 4 (ext4) filesystem (EXT4_FS) [Y/n/m/?] y
  Ext4 extended attributes (EXT4_FS_XATTR) [Y/n/?] y
    Ext4 POSIX Access Control Lists (EXT4_FS_POSIX_ACL) [Y/n/?] y
    Ext4 Security Labels (EXT4_FS_SECURITY) [Y/n/?] y
  EXT4 debugging support (EXT4_DEBUG) [N/y/?] n
JBD (ext3) debugging support (JBD_DEBUG) [N/y/?] n
JBD2 (ext4) debugging support (JBD2_DEBUG) [N/y/?] n
Reiser4 (EXPERIMENTAL) (REISER4_FS) [N/m/y/?] (NEW) y
  Enable reiser4 debug mode (REISER4_DEBUG) [N/y/?] (NEW) n
Reiserfs support (REISERFS_FS) [M/n/y/?] m
  Enable reiserfs debug mode (REISERFS_CHECK) [N/y/?] n
  Stats in /proc/fs/reiserfs (REISERFS_PROC_INFO) [Y/n/?] y
  ReiserFS extended attributes (REISERFS_FS_XATTR) [Y/n/?] y
    ReiserFS POSIX Access Control Lists (REISERFS_FS_POSIX_ACL) [Y/n/?] y
    ReiserFS Security Labels (REISERFS_FS_SECURITY) [Y/n/?] y
JFS filesystem support (JFS_FS) [M/n/y/?] m
  JFS POSIX Access Control Lists (JFS_POSIX_ACL) [Y/n/?] y
  JFS Security Labels (JFS_SECURITY) [Y/n/?] y
  JFS debugging (JFS_DEBUG) [N/y/?] n
  JFS statistics (JFS_STATISTICS) [N/y/?] n
XFS filesystem support (XFS_FS) [M/n/y/?] m
  XFS Quota support (XFS_QUOTA) [Y/n/?] y
  XFS POSIX ACL support (XFS_POSIX_ACL) [Y/n/?] y
  XFS Realtime subvolume support (XFS_RT) [N/y/?] n
  XFS Debugging support (EXPERIMENTAL) (XFS_DEBUG) [N/y/?] n
GFS2 file system support (GFS2_FS) [M/n/y/?] m
  GFS2 DLM locking (GFS2_FS_LOCKING_DLM) [Y/n/?] y
OCFS2 file system support (OCFS2_FS) [M/n/y/?] m
  O2CB Kernelspace Clustering (OCFS2_FS_O2CB) [M/n/?] m
  OCFS2 Userspace Clustering (OCFS2_FS_USERSPACE_CLUSTER) [M/n/?] m
  OCFS2 statistics (OCFS2_FS_STATS) [N/y/?] n
  OCFS2 logging support (OCFS2_DEBUG_MASKLOG) [N/y/?] n
  OCFS2 expensive checks (OCFS2_DEBUG_FS) [N/y/?] n
  OCFS2 POSIX Access Control Lists (OCFS2_FS_POSIX_ACL) [Y/n/?] y
Btrfs filesystem (EXPERIMENTAL) Unstable disk format (BTRFS_FS) [M/n/y/?] m
  Btrfs POSIX Access Control Lists (BTRFS_FS_POSIX_ACL) [Y/n/?] y
NILFS2 file system support (EXPERIMENTAL) (NILFS2_FS) [M/n/y/?] m
Dnotify support (DNOTIFY) [Y/n/?] y
Inotify file change notification support (INOTIFY) [Y/?] y
Inotify support for userspace (INOTIFY_USER) [Y/n/?] y
Quota support (QUOTA) [Y/?] y
  Report quota messages through netlink interface (QUOTA_NETLINK_INTERFACE) [Y/n/?] y
  Print quota warnings to console (OBSOLETE) (PRINT_QUOTA_WARNING) [N/y/?] n
Old quota format support (QFMT_V1) [N/m/y/?] n
Quota format v2 support (QFMT_V2) [Y/n/m/?] y
Kernel automounter support (AUTOFS_FS) [N/m/y/?] n
Kernel automounter version 4 support (also supports v3) (AUTOFS4_FS) [M/n/y/?] m
FUSE (Filesystem in Userspace) support (FUSE_FS) [M/n/y/?] m
  Character device in Userpace support (CUSE) [M/n/?] m
#
# configuration written to .config
#

5.Теперь, читаем:
Add a new line to the top of the config file that contains the hardware platform the kernel is built for (the output of uname -i). The line is preceded by a # sign. For example, an x86_64 machine would have the following line added to the top of the config file:

Смотрю вывод команды:

Код: Выделить всё

[911@samba linux-2.6.32.i686]$ uname -i
i386

Добавлю "# i386" в самый верх файла .config.
6.Затем смотрю, что у меня есть в ~/rpmbuild/SOURCES/:

Код: Выделить всё

[911@samba SOURCES]$ ls
01-compat-make-compat_alloc_user_space-incorporate-the-access_ok-check.patch
02-compat-test-rax-for-the-system-call-number-not-eax.patch
03-compat-retruncate-rax-after-ia32-syscall-entry-tracing.patch
acpi-ec-add-delay-before-write.patch
add-appleir-usb-driver.patch
aio-check-for-multiplication-overflow-in-do_io_submit.patch
alsa-seq-oss-fix-double-free-at-error-path-of-snd_seq_oss_open.patch
btrfs-prohibit-a-operation-of-changing-acls-mask-when-noacl-mount-option-is-used.patch
config-arm
config-debug
config-generic
config-i686-PAE
config-ia64-generic
config-nodebug
config-powerpc32-generic
config-powerpc32-smp
config-powerpc64
config-powerpc-generic
config-rhel-generic
config-s390x
config-sparc64-generic
config-x86_64-generic
config-x86-generic
crypto-add-async-hash-testing.patch
          ...........................

Если я всё правильно понимаю, то нужно сделать вот так:

Код: Выделить всё

[911@samba linux-2.6.32.i686]$ cp .config ~/rpmbuild/SOURCES/config-i686-PAE


Prepare Build Files
Теперь редактирую спек. Добавляю в соответствующие секции вот такие строчки:

Код: Выделить всё

%define buildid .reiser4

# reiser4
Patch99999: linux-2.6-reiser4.patch

# reiser4
ApplyPatch linux-2.6-reiser4.patch


Build the New Kernel
Теперь запускаю сборку:

Код: Выделить всё

[911@samba SPECS]$ rpmbuild -bb --target=`uname -m` kernel.spec


Вот и получил ошибку:

Код: Выделить всё

+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-s390x.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-sparc64.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-sparc64.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-x86_64-debug.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-x86_64-debug.config
+ for cfg in 'kernel-2.6.32.21-*.config'
++ echo kernel-2.6.32.21-i686-PAE.config kernel-2.6.32.21-i686-PAEdebug.config kernel-2.6.32.21-i686-debug.config kernel-2.6.32.21-i686.config
++ grep -c kernel-2.6.32.21-x86_64.config
+ '[' 0 -eq 0 ']'
+ rm -f kernel-2.6.32.21-x86_64.config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-PAE.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-PAEdebug.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
+ echo '# i386'
+ cat .config
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-debug.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
CONFIG_REISER4_FS
make[1]: *** [nonint_oldconfig] Error 1
make: *** [nonint_oldconfig] Error 2
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.uHsLBu (%prep)

Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

Во-первых, в руководстве описан случай, когда вы самостоятельно правите исходный код, а потом делаете из правок патч, именно для этого нужна копия дерева исходных кодов. У вас же патч уже есть, так что тот шаг можно было пропустить.
Далее:
technotrance писал(а):
30.09.2010 10:02
Перехожу в каталог ~/rpmbuild/BUILD/kernel-2.6.32.fc12, в котором вижу каталоги linux-2.6.32.i686 и vanilla-2.6.32.
- в руководстве это:
~/rpmbuild/BUILD/kernel-2.6.$ver/linux-2.6.$ver.$arch

В вашем случае "$arch" - "i686".
Затем:
technotrance писал(а):
30.09.2010 10:02
cp .config ~/rpmbuild/SOURCES/config-i686-PAE
- в руководстве:
cp .config ~/rpmbuild/SOURCES/config-$arch
- а вы решили почему-то, что теперь "$arch" у вас - "i686-PAE". Суффикс PAE должен быть автоматически добавлен, если вы укажете в параметрах сборки "--with pae", но нужна ли вам поддержка PAE?
Нужно чётко следовать букве руководства.
Ну и почему вы хотите собрать ядро со всеми возможными debug-включениями? Думаю, вам подошёл бы последний вариант команды:

Код: Выделить всё

rpmbuild -bb --with baseonly --with firmware --without debuginfo --target=`uname -m` kernel.spec
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Rootlexx писал(а):
30.09.2010 12:36
Во-первых, в руководстве описан случай, когда вы самостоятельно правите исходный код, а потом делаете из правок патч, именно для этого нужна копия дерева исходных кодов. У вас же патч уже есть, так что тот шаг можно было пропустить.

Понял, т.е. получается, что и вот это пропустить можно:

Код: Выделить всё

%define buildid .reiser4

# reiser4
Patch99999: linux-2.6-reiser4.patch

# reiser4
ApplyPatch linux-2.6-reiser4.patch

?
Оставив только вот это:

Код: Выделить всё

%define buildid .reiser4

?

Rootlexx писал(а):
30.09.2010 12:36
В вашем случае "$arch" - "i686".
Затем:
technotrance писал(а):
30.09.2010 10:02
cp .config ~/rpmbuild/SOURCES/config-i686-PAE
- в руководстве:
cp .config ~/rpmbuild/SOURCES/config-$arch
- а вы решили почему-то, что теперь "$arch" у вас - "i686-PAE".

А, т.е. надо было

Код: Выделить всё

cp .config ~/rpmbuild/SOURCES/config-i686

правильно?
Rootlexx писал(а):
30.09.2010 12:36
Суффикс PAE должен быть автоматически добавлен, если вы укажете в параметрах сборки "--with pae", но нужна ли вам поддержка PAE?

По большому счёту, не нужна, конечно...
Rootlexx писал(а):
30.09.2010 12:36
Нужно чётко следовать букве руководства.
Ну и почему вы хотите собрать ядро со всеми возможными debug-включениями? Думаю, вам подошёл бы последний вариант команды:

Код: Выделить всё

rpmbuild -bb --with baseonly --with firmware --without debuginfo --target=`uname -m` kernel.spec

Понял. Попробую, как вы советуете...
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4455
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Хочу собрать reiser4progs

Сообщение Rootlexx »

technotrance писал(а):
30.09.2010 13:08
Понял, т.е. получается, что и вот это пропустить можно:

Код: Выделить всё

%define buildid .reiser4

# reiser4
Patch99999: linux-2.6-reiser4.patch

# reiser4
ApplyPatch linux-2.6-reiser4.patch

?
Оставив только вот это:

Код: Выделить всё

%define buildid .reiser4

?

Варианта два:
  • патчить распакованные коды вручную, и тогда указывать патч в spec-файле не нужно;
  • не патчить вручную, а прописать имеющийся патч в spec-файл.
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: Хочу собрать reiser4progs

Сообщение Ali1 »

technotrance писал(а):
30.09.2010 10:02
+ for i in '*.config'
+ mv kernel-2.6.32.21-i686-debug.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
CONFIG_REISER4_FS
make[1]: *** [nonint_oldconfig] Error 1
make: *** [nonint_oldconfig] Error 2
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.uHsLBu (%prep)

Надо добавить в rpmbuild/SOURCES/config-generic:
CONFIG_REISER4_FS=m
#CONFIG_REISER4_DEBUG is not set
В спек:
--- kernel.spec_orig 2010-09-30 17:56:44.609948061 +0400
+++ kernel.spec 2010-09-30 20:22:33.533947424 +0400
@@ -24,7 +24,7 @@ Summary: The Linux kernel
# (Uncomment the '#' and the first two spaces below to set buildid.)
# % define buildid .local
###################################################################
-
+%define buildid .reiser4
# The buildid can also be specified on the rpmbuild command line
# by adding --define="buildid .whatever". If both the specfile and
# the environment define a buildid they will be concatenated together.
@@ -859,6 +859,10 @@ Patch14230: keys-fix-bug-in-keyctl_sessi
Patch14231: keys-fix-rcu-no-lock-warning-in-keyctl_session_to_parent.patch
# CVE-2010-3079
Patch14240: tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+# reiser4
+Patch999: linux-2.6-reiser4.patch
+
+

# ==============================================================================
%endif
@@ -1591,6 +1595,10 @@ ApplyPatch keys-fix-bug-in-keyctl_sessio
ApplyPatch keys-fix-rcu-no-lock-warning-in-keyctl_session_to_parent.patch
# CVE-2010-3079
ApplyPatch tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+# 999
+ApplyPatch linux-2.6-reiser4.patch
+#
+

# END OF PATCH APPLICATIONS ====================================================
%endif

rpmbuild/SPECS/spe.diff
В rpmbuild/SOURCES положить linux-2.6-reiser4.patch == reiser4-for-2.6.32.patch

UPD
[ali@aliCQ ~]$ uname -a
Linux aliCQ.ali.mtu.ru 2.6.32.21-168.reiser4.fc13.x86_64 #1 SMP Thu Sep 30 21:33:32 MSD 2010 x86_64 x86_64 x86_64 GNU/Linux
[ali@aliCQ ~]$ modinfo reiser4
filename: /lib/modules/2.6.32.21-168.reiser4.fc13.x86_64/kernel/fs/reiser4/reiser4.ko
license: GPL
author: Hans Reiser <Reiser@Namesys.COM>
description: Reiser4 filesystem
srcversion: FF02E35A9D433D871DC44D2
depends: zlib_deflate,lzo_compress,lzo_decompress
vermagic: 2.6.32.21-168.reiser4.fc13.x86_64 SMP mod_unload
[ali@aliCQ ~]$ sudo modprobe -v reiser4
[sudo] password for ali:
insmod /lib/modules/2.6.32.21-168.reiser4.fc13.x86_64/kernel/lib/zlib_deflate/zlib_deflate.ko
insmod /lib/modules/2.6.32.21-168.reiser4.fc13.x86_64/kernel/lib/lzo/lzo_compress.ko
insmod /lib/modules/2.6.32.21-168.reiser4.fc13.x86_64/kernel/lib/lzo/lzo_decompress.ko
insmod /lib/modules/2.6.32.21-168.reiser4.fc13.x86_64/kernel/fs/reiser4/reiser4.ko
[ali@aliCQ ~]$ lsmod | grep reiser
reiser4 367628 0
lzo_decompress 2239 1 reiser4
lzo_compress 1954 1 reiser4
zlib_deflate 18927 1 reiser4
[ali@aliCQ ~]$


07.10.2010 исправил :
2.6.33. на 2.6.32
rpmbuild/SPECS/spe.diff (END){/quote} на {/quote} rpmbuild/SPECS/spe.diff
CONFIG_REISER4_DEBUG is not set на #CONFIG_REISER4_DEBUG is not set
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Попробовал собрать тем же методом, что и в посте 18, но с учётом поправок из поста 20
Т.е. (без лишней воды) вот так:

Код: Выделить всё

# Подготавливаю среду
[911@samba ~]$ rpmdev-setuptree

# Устанавливаю RPM-ку
[911@samba ~]$ rpm -Uvh kernel-2.6.32.21-168.fc12.src.rpm

# Готовлю ядро
[911@samba SPECS]$ rpmbuild -bp --target=`uname -m` kernel.spec

# Патчу ядро
[911@samba linux-2.6.32.i686]$ gunzip -c reiser4-for-2.6.32.patch.gz | patch -p1

# копирую кофиг
[911@samba configs]$ cp kernel-2.6.32.21-i686.config ../.config

# выполняю только make oldconfig
[911@samba linux-2.6.32.i686]$ make oldconfig

# Добавляю "# i386" в самый верх файла .config.

# копирую конфиг в SOURCES
[911@samba linux-2.6.32.i686]$ cp .config ~/rpmbuild/SOURCES/config-i686

#редактирую спек
%define buildid .reiser4

# Запускаю сборку
[911@samba SPECS]$ rpmbuild -bb --with baseonly --with firmware --without debuginfo --target=`uname -m` kernel.spec

Ядро собралось. Затем, я его установил:

Код: Выделить всё

# rpm -ivh kernel-2.6.32.21-168.reiser4.fc12.i686.rpm kernel-devel-2.6.32.21-168.reiser4.fc12.i686.rpm kernel-firmware-2.6.32.21-168.reiser4.fc12.i686.rpm kernel-headers-2.6.32.21-168.reiser4.fc12.i686.rpm
Подготовка...     ########################################### [100%]
   1:kernel-firmware        ########################################### [ 25%]
   2:kernel                 ########################################### [ 50%]
   3:kernel-devel           ########################################### [ 75%]
   4:kernel-headers         ########################################### [100%]

Перезагрузился уже с новым ядром. Причём, машина загружаться стала медленнее. На этапе, после того как в загрузчике выбирал ядро и нажал ентер, машина на приличное время призадумалась, показывая лишь мигающий плоский курсорчик в верхнем левом углу. Потом таки побежала полоска федоры.

Код: Выделить всё

# uname -r
2.6.32.21-168.reiser4.fc12.i686

Однако поддержки reiser4 в нём нету :(

Код: Выделить всё

# modinfo reiser4
ERROR: modinfo: could not find module reiser4

# modprobe -v reiser4
FATAL: Module reiser4 not found.

Что у меня неправильно?
P.S. Сборку самого ядра проводил на обычном компе с F12, но устанавливал готовые RPM-ки на виртуальную машину, где стоит такая же F12.
P.SS. завтра попробую сделать, как написал Ali1
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

technotrance писал(а):
05.10.2010 18:26
P.SS. завтра попробую сделать, как написал Ali1

Код: Выделить всё

Patch14231: keys-fix-rcu-no-lock-warning-in-keyctl_session_to_parent.patch
+ case "$patch" in
+ patch -p1 -F1 -s
+ ApplyPatch tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+ local patch=tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+ shift
+ '[' '!' -f /home/miho/rpmbuild/SOURCES/tracing-do-not-allow-llseek-to-set_ftrace_filter.patch ']'
Patch14240: tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+ case "$patch" in
+ patch -p1 -F1 -s
+ ApplyPatch linux-2.6-reiser4.patch
+ local patch=linux-2.6-reiser4.patch
+ shift
+ '[' '!' -f /home/miho/rpmbuild/SOURCES/linux-2.6-reiser4.patch ']'
Patch999: linux-2.6-reiser4.patch
+ case "$patch" in
+ patch -p1 -F1 -s
/var/tmp/rpm-tmp.f0tj4b: line 394: syntax error near unexpected token `END'
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.f0tj4b (%prep)

Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: Хочу собрать reiser4progs

Сообщение Ali1 »

Код: Выделить всё

Patch999: linux-2.6-reiser4.patch
+ case "$patch" in
+ patch -p1 -F1 -s
/var/tmp/rpm-tmp.f0tj4b: line 394: syntax error near unexpected token `END'
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.f0tj4b (%prep)


В спек-фале строка Patch999: linux-2.6-reiser4.patch не должна содержать пробелов после ".patch".
И посмотрите Ваш /var/tmp/rpm-tmp.f0tj4b.

Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Ali1 писал(а):
30.09.2010 22:30
--- kernel.spec_orig 2010-09-30 17:56:44.609948061 +0400
+++ kernel.spec 2010-09-30 20:22:33.533947424 +0400
@@ -24,7 +24,7 @@ Summary: The Linux kernel
# (Uncomment the '#' and the first two spaces below to set buildid.)
# % define buildid .local
###################################################################
-
+%define buildid .reiser4
# The buildid can also be specified on the rpmbuild command line
# by adding --define="buildid .whatever". If both the specfile and
# the environment define a buildid they will be concatenated together.
@@ -859,6 +859,10 @@ Patch14230: keys-fix-bug-in-keyctl_sessi
Patch14231: keys-fix-rcu-no-lock-warning-in-keyctl_session_to_parent.patch
# CVE-2010-3079
Patch14240: tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+# reiser4
+Patch999: linux-2.6-reiser4.patch
+
+

# ==============================================================================
%endif
@@ -1591,6 +1595,10 @@ ApplyPatch keys-fix-bug-in-keyctl_sessio
ApplyPatch keys-fix-rcu-no-lock-warning-in-keyctl_session_to_parent.patch
# CVE-2010-3079
ApplyPatch tracing-do-not-allow-llseek-to-set_ftrace_filter.patch
+# 999
+ApplyPatch linux-2.6-reiser4.patch
+#
+

# END OF PATCH APPLICATIONS ====================================================
%endif
rpmbuild/SPECS/spe.diff (END)


Подскажите один момент. Плюсиками вы отметили, то, что нужно добавить в спек, правильно?
В самом конце я вижу строку rpmbuild/SPECS/spe.diff (END). У меня в спеке её не было. Её добавлять нужно или нет?
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: Хочу собрать reiser4progs

Сообщение Ali1 »

technotrance писал(а):
06.10.2010 15:04
В самом конце я вижу строку rpmbuild/SPECS/spe.diff (END). У меня в спеке её не было. Её добавлять нужно или нет?

Нет, не нужно. (это остаток от less)
Т.е. в спек нужно добавить только
%define buildid .reiser4
# reiser4
Patch999: linux-2.6-reiser4.patch
# 999
ApplyPatch linux-2.6-reiser4.patch


В rpmbuild/SOURCES/config-generic :
CONFIG_REISER4_FS=m
#CONFIG_REISER4_DEBUG is not set


UPD
Так выглядит содержание diff -uNrp kernel.spec_orig kernel.spec
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

Ali1 писал(а):
30.09.2010 22:30
В rpmbuild/SOURCES положить linux-2.6-reiser4.patch == reiser4-for-2.6.33.patch

UPD
[ali@aliCQ ~]$ uname -a
Linux aliCQ.ali.mtu.ru 2.6.32.21-168.reiser4.fc13.x86_64 #1 SMP Thu Sep 30 21:33:32 MSD 2010 x86_64 x86_64 x86_64 GNU/Linux


Ещё, подскажите, почему вы в 32-е ядро добавляли патч для 33-го? Я пробовал патчить 33-им -- получил кое-где "FAILED"
Это такая фишка или просто опечатка?
Спасибо сказали:
Аватара пользователя
technotrance
Сообщения: 280
ОС: Fedora, FreeBSD, CentOS, Debian
Контактная информация:

Re: Хочу собрать reiser4progs

Сообщение technotrance »

:happy:

Код: Выделить всё

# modinfo reiser4
filename:       /lib/modules/2.6.32.21-168.reiser4.fc12.i686/kernel/fs/reiser4/reiser4.ko
license:        GPL
author:         Hans Reiser <Reiser@Namesys.COM>
description:    Reiser4 filesystem
srcversion:     FF02E35A9D433D871DC44D2
depends:        zlib_deflate,lzo_compress,lzo_decompress
vermagic:       2.6.32.21-168.reiser4.fc12.i686 SMP mod_unload 686

# modprobe -v reiser4
insmod /lib/modules/2.6.32.21-168.reiser4.fc12.i686/kernel/lib/zlib_deflate/zlib_deflate.ko
insmod /lib/modules/2.6.32.21-168.reiser4.fc12.i686/kernel/lib/lzo/lzo_compress.ko
insmod /lib/modules/2.6.32.21-168.reiser4.fc12.i686/kernel/lib/lzo/lzo_decompress.ko
insmod /lib/modules/2.6.32.21-168.reiser4.fc12.i686/kernel/fs/reiser4/reiser4.ko

# lsmod | grep reiser
reiser4               316737  0
lzo_decompress          1843  1 reiser4
lzo_compress            1546  1 reiser4
zlib_deflate           16615  1 reiser4

# mount /dev/sdb1 /home/shares
# mount
/dev/mapper/vg_samba-lv_root on / type ext4 (rw)
       ...............
/dev/sdb1 on /home/shares type reiser4 (rw)

Ali1, Rootlexx, ОГРОМНОЕ вам спасибо за помощь!!! :good:
Щас попробую собрать, чтоб райзер4 был не модулем, а входил в ядро. Если что, можно будем вам ещё вопросы позадавать? :)
Спасибо сказали:
Ответить