yanghaiju 发表于 2015-08-17 14:41

DBDR安装遇到的问题

./configure --prefix=/usr/local/drbd --with-km
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
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 whether ln -s works... yes
checking for sed... /bin/sed
checking for grep... /bin/grep
checking for flex... /usr/bin/flex
checking for rpmbuild... no
checking for xsltproc... /usr/bin/xsltproc
checking for tar... /bin/tar
checking for git... no
checking for dpkg-buildpackage... no
checking for udevadm... /sbin/udevadm
checking for udevinfo... false
configure: WARNING: No rpmbuild found, building RPM packages is disabled.
configure: WARNING: No dpkg-buildpackage found, building Debian packages is disabled.
configure: WARNING: Cannot update buildtag without git. You may safely ignore this warning when building from a tarball.
checking for /etc/gentoo-release... no
checking for /etc/redhat-release... yes
checking for /etc/slackware-version... no
checking for /etc/debian_version... no
checking for /etc/SuSE-release... no
configure: configured for Red Hat (includes Fedora, RHEL, CentOS).
checking for /etc/fedora-release... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating user/Makefile
config.status: creating user/legacy/Makefile
config.status: creating scripts/Makefile
config.status: creating documentation/Makefile
config.status: creating user/config.h
config.status: creating user/legacy/config.h
# make
make -C drbd drbd_buildtag.c
make: Entering directory `/home/drbd-8.4.3/drbd'
make: Leaving directory `/home/drbd-8.4.3/drbd'
make: Entering directory `/home/drbd-8.4.3/user'
flex -s -odrbdadm_scanner.c drbdadm_scanner.fl
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdadm_scanner.o drbdadm_scanner.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdadm_parser.o drbdadm_parser.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdadm_main.o drbdadm_main.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdadm_adjust.o drbdadm_adjust.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdtool_common.o drbdtool_common.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdadm_usage_cnt.o drbdadm_usage_cnt.c
cp ../drbd/drbd_buildtag.c drbd_buildtag.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbd_buildtag.o drbd_buildtag.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o registry.o registry.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o config_flags.o config_flags.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat -DHAVE_CTRL_ATTR_VERSION -DHAVE_CTRL_ATTR_HDRSIZE -DHAVE_CTRL_ATTR_MCAST_GROUPS   -c -o libgenl.o libgenl.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbd_nla.o drbd_nla.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -o drbdadm drbdadm_scanner.o drbdadm_parser.o drbdadm_main.o drbdadm_adjust.o drbdtool_common.o drbdadm_usage_cnt.o drbd_buildtag.o registry.o config_flags.o libgenl.o drbd_nla.o
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdmeta.o drbdmeta.c
flex -s -odrbdmeta_scanner.c drbdmeta_scanner.fl
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdmeta_scanner.o drbdmeta_scanner.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -o drbdmeta drbdmeta.o drbdmeta_scanner.o drbdtool_common.o drbd_buildtag.o
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbdsetup.o drbdsetup.c
cp ../drbd/drbd_strings.c drbd_strings.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o drbd_strings.o drbd_strings.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -c -o wrap_printf.o wrap_printf.c
gcc -g -O2 -Wall -I../drbd -I../drbd/compat   -o drbdsetup libgenl.o registry.o drbdsetup.o drbdtool_common.o drbd_buildtag.o drbd_strings.o config_flags.o drbd_nla.o wrap_printf.o
make -C legacy
make: Entering directory `/home/drbd-8.4.3/user/legacy'
flex -s -odrbdadm_scanner.c drbdadm_scanner.fl
cp ../drbd_endian.h drbd_endian.h
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdadm_scanner.o drbdadm_scanner.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdadm_parser.o drbdadm_parser.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdadm_main.o drbdadm_main.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdadm_adjust.o drbdadm_adjust.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdtool_common.o drbdtool_common.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdadm_usage_cnt.o drbdadm_usage_cnt.c
cp ../../drbd/drbd_buildtag.c drbd_buildtag.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbd_buildtag.o drbd_buildtag.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdadm_minor_table.o drbdadm_minor_table.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -o drbdadm-83 drbdadm_scanner.o drbdadm_parser.o drbdadm_main.o drbdadm_adjust.o drbdtool_common.o drbdadm_usage_cnt.o drbd_buildtag.o drbdadm_minor_table.o
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbdsetup.o drbdsetup.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -c -o drbd_strings.o drbd_strings.c
gcc -g -O2 -Wall -I. -I../drbd -I../drbd/compat   -o drbdsetup-83 drbdsetup.o drbdtool_common.o drbd_buildtag.o drbd_strings.o
make: Leaving directory `/home/drbd-8.4.3/user/legacy'
ln -f -s legacy/drbdadm-83
ln -f -s legacy/drbdsetup-83
make: Leaving directory `/home/drbd-8.4.3/user'
make: Entering directory `/home/drbd-8.4.3/scripts'
make: Nothing to be done for `all'.
make: Leaving directory `/home/drbd-8.4.3/scripts'
make: Entering directory `/home/drbd-8.4.3/documentation'
To (re)make the documentation: make doc
make: Leaving directory `/home/drbd-8.4.3/documentation'

      Userland tools build was successful.
    SORRY, kernel makefile not found.
    You need to tell me a correct KDIR,
    Or install the neccessary kernel source packages.

make: *** Error 1

itxiaoguan 发表于 2015-08-18 10:40

4.3.5.2. Building against precompiled kernel headers

If the /lib/modules/uname -r/build symlink does not exist, and you are building against a running stock kernel (one that was shipped pre-compiled with your distribution), you may also set the KDIR variable to point to the matching kernel headers (as opposed to kernel sources) directory. Note that besides the actual kernel headers — commonly found in /usr/src/linux-version/include — the DRBD build process also looks for the kernel Makefile and configuration file (.config), which pre-built kernel headers packages commonly include.

To build against precompiled kernel headers, issue, for example:

$ cd drbd
$ make clean
$ make KDIR=/lib/modules/2.6.38/build
4.3.5.3. Building against a kernel source tree

If you are building DRBD against a kernel other than your currently running one, and you do not have precompiled kernel sources for your target kernel available, you need to build DRBD against a complete target kernel source tree. To do so, set the KDIR variable to point to the kernel sources directory:

$ cd drbd
$ make clean
$ make KDIR=/path/to/kernel/source
页: [1]
查看完整版本: DBDR安装遇到的问题