[lustre-discuss] Problem compiling Lustre client on Ubuntu 16.04.

Christopher J. Morrone morrone2 at llnl.gov
Tue May 10 13:28:07 PDT 2016


Do you need infiniband support in Lustre?  If not, you can avoid this
problem by disabling compilation of the o2ib lnd.  Add "--with-o2ib=no"
to the configure command line.

If you need infiniband, that will take more investigation. :)

Chris

On 05/10/2016 05:55 AM, Phill Harvey-Smith wrote:
> Hi all,
> 
> We are currently running the lustre client on our departmental linux
> cluster which is running Ubuntu 12.04 LTS (x64). It is our plan to
> upgrade our compute nodes over the summer to Ubuntu 16.04 LTS. However
> to do this we will need to compile the luctre client to run on these.
> 
> I have checked out the latest source from whamcloud with :
> 
> git clone git://git.whamcloud.com/fs/lustre-release.git
> 
> I then changed to the lustre directory and ran autogen.sh
> 
> This produces a few warnings but appears to complete :
> 
> sh ./autogen.sh
> configure.ac:15: installing 'config/compile'
> configure.ac:10: installing 'config/config.guess'
> configure.ac:10: installing 'config/config.sub'
> configure.ac:12: installing 'config/install-sh'
> configure.ac:12: installing 'config/missing'
> libcfs/libcfs/autoMakefile.am:43: warning: source file 'util/string.c'
> is in a subdirectory,
> libcfs/libcfs/autoMakefile.am:43: but option 'subdir-objects' is disabled
> automake: warning: possible forward-incompatibility.
> automake: At least a source file is in a subdirectory, but the
> 'subdir-objects'
> automake: automake option hasn't been enabled.  For now, the
> corresponding output
> automake: object file(s) will be placed in the top-level directory.
> However,
> automake: this behaviour will change in future Automake versions: they will
> automake: unconditionally cause object files to be placed in the same
> subdirectory
> automake: of the corresponding sources.
> automake: You are advised to start using 'subdir-objects' option
> throughout your
> automake: project, to avoid future incompatibilities.
> libcfs/libcfs/autoMakefile.am:43: warning: source file
> 'util/nidstrings.c' is in a subdirectory,
> libcfs/libcfs/autoMakefile.am:43: but option 'subdir-objects' is disabled
> libcfs/libcfs/autoMakefile.am:43: warning: source file 'util/param.c' is
> in a subdirectory,
> libcfs/libcfs/autoMakefile.am:43: but option 'subdir-objects' is disabled
> libcfs/libcfs/autoMakefile.am:50: warning: source file 'util/parser.c'
> is in a subdirectory,
> libcfs/libcfs/autoMakefile.am:50: but option 'subdir-objects' is disabled
> libcfs/libcfs/autoMakefile.am:50: warning: source file 'util/l_ioctl.c'
> is in a subdirectory,
> libcfs/libcfs/autoMakefile.am:50: but option 'subdir-objects' is disabled
> libcfs/libcfs/autoMakefile.am: installing 'config/depcomp'
> lnet/utils/Makefile.am:73: warning: source file
> '$(top_builddir)/lnet/utils/cyaml/cyaml.c' is in a subdirectory,
> lnet/utils/Makefile.am:73: but option 'subdir-objects' is disabled
> lnet/utils/lnetconfig/Makefile.am:31: warning: source file
> '$(top_builddir)/lnet/utils/cyaml/cyaml.c' is in a subdirectory,
> lnet/utils/lnetconfig/Makefile.am:31: but option 'subdir-objects' is
> disabled
> lustre/utils/Makefile.am:82: warning: source file
> '$(top_builddir)/libcfs/libcfs/util/string.c' is in a subdirectory,
> lustre/utils/Makefile.am:82: but option 'subdir-objects' is disabled
> lustre/utils/Makefile.am:82: warning: source file
> '$(top_builddir)/libcfs/libcfs/util/param.c' is in a subdirectory,
> lustre/utils/Makefile.am:82: but option 'subdir-objects' is disabled
> 
> 
> I run configure :
> 
> ./configure --disable-server
> checking build system type... x86_64-pc-linux-gnu
> checking host system type... x86_64-pc-linux-gnu
> checking target system type... x86_64-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 make supports nested variables... yes
> checking whether UID '0' is supported by ustar format... yes
> checking whether GID '0' is supported by ustar format... yes
> checking how to create a ustar tar archive... gnutar
> checking whether to enable maintainer-specific portions of Makefiles... yes
> 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 gcc understands -c and -o together... yes
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking how to print strings... printf
> 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 whether ln -s works... yes
> checking the maximum length of command line arguments... 1572864
> checking how to convert x86_64-pc-linux-gnu file names to
> x86_64-pc-linux-gnu format... func_convert_file_noop
> checking how to convert x86_64-pc-linux-gnu file names to toolchain
> format... func_convert_file_noop
> 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 dlltool... no
> checking how to associate runtime and link libraries... printf %s\n
> checking for ar... ar
> checking for archiver @FILE support... @
> checking for strip... strip
> checking for ranlib... ranlib
> checking command to parse /usr/bin/nm -B output from gcc object... ok
> checking for sysroot... no
> checking for a working dd... /bin/dd
> checking how to truncate binary pipes... /bin/dd bs=4096 count=1
> checking for mt... mt
> checking if mt is a manifest tool... no
> checking how to run the C preprocessor... gcc -E
> 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... yes
> 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 -m elf_x86_64) 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 dependency style of gcc... gcc3
> checking for rpmbuild... no
> configure: Lustre base checks
> ==============================================================================
> 
> checking whether to configure just enough for make dist... no
> checking if this distro uses dpkg... yes
> checking for ranlib... (cached) ranlib
> checking for ld... /usr/bin/ld -m elf_x86_64
> checking for objdump... (cached) objdump
> checking for strip... (cached) strip
> checking size of unsigned long long... 8
> checking whether to use OSD addon... no
> checking whether to build Lustre docs... no
> checking whether to build Lustre manpages... yes
> checking whether to build Lustre utilities... yes
> checking whether to build Lustre tests... yes
> checking whether to build Lustre client support... yes
> checking whether mpitests can be built... no
> checking whether to build Linux kernel modules... yes (linux-gnu)
> checking for Linux sources... /lib/modules/4.4.0-22-generic/build
> checking for /lib/modules/4.4.0-22-generic/build... yes
> checking for Linux objects... /lib/modules/4.4.0-22-generic/build
> checking for /lib/modules/4.4.0-22-generic/build/.config... yes
> checking for /boot/kernel.h... no
> checking for /var/adm/running-kernel.h... no
> checking for
> /lib/modules/4.4.0-22-generic/build/include/generated/autoconf.h... yes
> checking for
> /lib/modules/4.4.0-22-generic/build/include/linux/version.h... no
> checking for
> /lib/modules/4.4.0-22-generic/build/include/generated/uapi/linux/version.h...
> yes
> checking for
> /lib/modules/4.4.0-22-generic/build/include/linux/kconfig.h... yes
> checking for external module build target... M
> checking that modules can be built at all... yes
> checking for Linux kernel utsrelease... 4.4.0-22-generic
> checking for Lustre release... 4.4.0_22_generic
> checking for RedHat kernel release number...
> checking if Linux kernel was built with CONFIG_SUSE_KERNEL... no
> checking for Linux kernel module package directory...
> checking for the name of module symbol version file... Module.symvers
> checking if Linux kernel was built with CONFIG_MODULES... yes
> checking if Linux kernel was built with CONFIG_MODVERSIONS... yes
> checking if Linux kernel was built with CONFIG_KALLSYMS... yes
> checking if Linux kernel module loading is possible... yes
> configure: LibCFS kernel checks
> ==============================================================================
> 
> checking whether to use tunable 'panic_dumplog' support... no
> checking if 'struct stacktrace_ops' has 'walk_stack' field... yes
> checking if 'shrinker' want self pointer in handler... no
> checking if 'ctl_table' has a 'ctl_name' field... no
> checking if Linux kernel has 'kstrtoul'... yes
> checking if 'dump_trace' want address... yes
> checking if 'shrink_control' is present... yes
> checking if 'stacktrace_ops.warning' is exist... no
> checking for linux/uidgid.h... yes
> checking if 'i_uid_read' is present... yes
> checking if Linux kernel exports 'sock_alloc_file'... yes
> checking if 'sock_alloc_file' takes 3 arguments... yes
> checking if Linux kernel was built with CONFIG_CRC32 in or as module... yes
> checking if Linux kernel was built with CONFIG_CRYPTO_CRC32_PCLMUL in or
> as module... yes
> checking if Linux kernel was built with CONFIG_CRYPTO_CRC32C_INTEL in or
> as module... yes
> checking shrinker has 'count_objects'... yes
> checking does function 'hlist_add_after' exist... no
> checking does function 'topology_sibling_cpumask' exist... yes
> configure: LNet kernel checks
> ==============================================================================
> 
> checking whether to enable CPU affinity support... yes
> checking if Linux kernel has cpu affinity support... yes
> checking whether to enable tunable backoff TCP support... yes
> checking if Linux kernel has tunable backoff TCP support... no
> checking whether to use Compat RDMA... no
> checking whether to use any OFED backport headers... no
> checking whether to enable OpenIB gen2 support... yes
> checking if Linux kernel has kthread_worker... yes
> checking if 'rdma_create_id' wants four args... no
> checking if 'struct ib_cq_init_attr' is used... yes
> checking if 'ib_alloc_fast_reg_mr' exists... no
> checking if 'rdma_create_id' wants five args... yes
> checking whether to enable GNI lnd... no
> checking if function 'ib_inc_rkey' is defined... yes
> checking if Linux kernel has 'sk_sleep'... yes
> checking if 'tcp_sendpage' first parameter is socket... no
> checking if 'sk_data_ready' takes only one argument... yes
> configure: Lustre kernel checks
> ==============================================================================
> 
> checking whether to enable Lustre pinger support... yes
> checking whether to enable data checksum support... yes
> checking whether to enable a write with the health check... no
> checking whether to enable lru self-adjusting... yes
> checking whether to enable 'llite_lloop' module... yes
> checking for name_to_handle_at... yes
> checking if Linux kernel was built with CONFIG_CRYPTO_AES in or as
> module... yes
> checking whether to enable gss/krb5 support... auto
> checking whether to enable gss keyring backend... auto
> checking if Linux kernel was built with CONFIG_KEYS in or as module... yes
> checking for keyctl_search in -lkeyutils... no
> configure: WARNING:
> 
> libkeyutils is not found, which is required by gss keyring backend
> 
> configure: WARNING:
> 
> Cannot enable gss keyring. See above for details.
> 
> checking if 'struct cred' has member 'tgcred'... no
> checking if 'key_type->instantiate' has two args... yes
> checking if Linux kernel was built with CONFIG_SUNRPC in or as module...
> yes
> checking if Linux kernel was built with CONFIG_CRYPTO_MD5 in or as
> module... yes
> checking if Linux kernel was built with CONFIG_CRYPTO_SHA1 in or as
> module... yes
> checking if Linux kernel was built with CONFIG_CRYPTO_SHA256 in or as
> module... yes
> checking if Linux kernel was built with CONFIG_CRYPTO_SHA512 in or as
> module... yes
> checking for Kerberos v5... configure: WARNING: not found!
> checking if 'blk_queue_max_segments' is defined... yes
> checking if 'quotactl_ops.set_dqblk' takes struct fs_disk_quota... no
> checking if 'quotactl_ops.set_dqblk' takes struct kqid &
> fs_disk_quota... no
> checking if 'dquot_suspend' is defined... yes
> checking if '__add_wait_queue_exclusive' exists... yes
> checking if 'file_operations.fsync' takes 4 arguments... yes
> checking if Linux kernel exports 'simple_setattr'... yes
> checking if Linux kernel exports 'truncate_complete_page'... no
> checking if Linux kernel exports 'remove_from_page_cache'... no
> checking if Linux kernel exports 'delete_from_page_cache'... yes
> checking if 'fs_struct.lock' use rwlock... no
> checking if 'super_operations.evict_inode' exist... yes
> checking if 'kernel_locked' is defined... no
> checking if Linux kernel exports 'blkdev_get_by_dev'... yes
> checking if 'generic_permission' take 2 arguments... yes
> checking if 'dcache_lock' is exist... no
> checking if 'inode.i_rcu' exists... yes
> checking if 'dentry_operations.d_compare()' taken 7 arguments... no
> checking if 'dentry_operations.d_delete()' has const declare on first
> parameter... yes
> checking if 'request_queue' has 'unplug_fn' field... no
> checking if Linux kernel was built with CONFIG_FHANDLE in or as
> module... yes
> checking if 'file_system_type' has 'mount' field... yes
> checking if 'inode_operations' has '.truncate' member function... no
> checking if 'inode_owner_or_capable' exist... yes
> checking if security_inode_init_security takes a callback... yes
> checking if 'dirty_inode' super_operation takes flag... yes
> checking if 'lock-manager' ops renamed to 'lm_xxx'... yes
> checking if 'inode->i_alloc_sem' is killed and use inode_dio_wait... yes
> checking if 'inode_operations' has '.get_acl' member function... yes
> checking if Linux kernel exports 'generic_file_llseek_size'... yes
> checking if 'inode_operations->permission' has two args... yes
> checking radix_tree_exceptional_entry exist... yes
> checking for /lib/modules/4.4.0-22-generic/build/include/linux/loop.h... no
> checking if 'request_queue.make_request_fn' returns void but not int... yes
> checking if 'inode->i_nlink' is protected from direct modification... yes
> checking for
> /lib/modules/4.4.0-22-generic/build/include/linux/migrate.h... yes
> checking if 'address_space_operations.migratepage' has 4 args... yes
> checking if 'super_operations' use 'dentry' as parameter... yes
> checking if 'inode_operations' use 'umode_t' as parameter... yes
> checking if have 'cache_register'... no
> checking if have 'd_make_root'... yes
> checking if 'kmap_atomic' has only 1 argument... yes
> checking if have 'clear_inode'... yes
> checking if 'encode_fh' have parent inode as parameter... yes
> checking if Linux kernel has 'generic_file_llseek_size' with 5 args... yes
> checking if 'i_dentry/d_alias' uses 'list'... no
> checking if 'dentry_open' uses 'struct path' as first argument... yes
> checking if 'iop' has 'atomic_open'... yes
> checking if 'posix_acl_to_xattr' takes 'struct user_namespace'... yes
> checking if 'struct file' has member 'f_inode'... yes
> checking if 'sunrpc_cache_pipe_upcall' takes 3 args... no
> checking if 'hlist_for_each_entry' has 3 args... yes
> checking if 'bio_end_sector' is defined... yes
> checking if 'block_device_operations' release returns 'int'... no
> checking if 'remove_proc_subtree' is defined... yes
> checking if 'proc_remove' is defined... yes
> checking if 'address_space_operations.invalidatepage' requires 3
> arguments... yes
> checking if 'dir_context' exist... yes
> checking if 'd_compare' taken 5 arguments... yes
> checking if 'd_count' exist... yes
> checking if hlist 'dentry.d_u.d_alias' exist... yes
> checking if 'dentry.d_child' exist... yes
> checking if 'truncate_pagecache' with 'old_size' parameter... no
> checking if 'struct kiocb' with 'ki_left' member... no
> checking if Linux kernel has 'vfs_rename' with 5 args... no
> checking if Linux kernel has 'vfs_unlink' with 3 args... yes
> checking if Linux kernel has struct bvec_iter... yes
> checking if Linux kernel has truncate_inode_pages_final... yes
> checking if Linux kernel has 'vfs_rename' with 6 args... yes
> checking if direct IO uses iov_iter... no
> checking if 'iov_iter_init' takes a tag... yes
> checking if 'file_operations.read|write_iter' exist... yes
> checking if struct key_match field exist... yes
> checking if percpu_counter_init uses GFP_* flag as argument... yes
> checking if filldir_t uses struct dir_context... yes
> checking if struct kiocb has ki_nbytes field... no
> checking if struct address_space has backing_dev_info... no
> checking if have 'BDI_CAP_MAP_COPY'... no
> checking if cancel_dirty_page still exist... no
> checking if iov_iter_rw exist... yes
> checking if Linux kernel exports 'new_sync_read'... no
> checking if cancel_dirty_page with one argument exist... yes
> checking if 'bio_endio' with one argument exist... yes
> checking if symlink inode operations have struct nameidata argument... no
> checking if 'struct cache_head' has 'cache_list' field... yes
> checking if 'locks_lock_file_wait' exists... yes
> checking if 'request_queue.make_request_fn' returns blk_qc_t... yes
> checking if 'struct key' has 'payload.data' as an array... yes
> checking whether to build ldiskfs... no
> checking whether to enable zfs... no
> checking whether to build Lustre server support... no
> checking whether to enable nodemap proc debug... no
> checking whether to enable CDEBUG, CWARN... yes
> checking whether to enable ENTRY/EXIT... yes
> checking whether to enable LASSERT, LASSERTF... yes
> checking whether to enable quota support global control... yes
> checking sys/quota.h usability... yes
> checking sys/quota.h presence... yes
> checking for sys/quota.h... yes
> checking whether build with libmount... checking libmount/libmount.h
> usability... no
> checking libmount/libmount.h presence... no
> checking for libmount/libmount.h... no
> no
> checking for ./snmp/lustre-snmp.c... yes
> checking whether to build iokit... yes
> checking whether to use alternate names for e2fsprogs... disabled
> configure: LibCFS core checks
> ==============================================================================
> 
> checking asm/types.h usability... yes
> checking asm/types.h presence... yes
> checking for asm/types.h... yes
> checking endian.h usability... yes
> checking endian.h presence... yes
> checking for endian.h... yes
> checking sys/ioctl.h usability... yes
> checking sys/ioctl.h presence... yes
> checking for sys/ioctl.h... yes
> checking linux/version.h usability... yes
> checking linux/version.h presence... yes
> checking for linux/version.h... yes
> checking for spinlock_t... no
> checking for strnlen... yes
> checking for strlcpy... no
> checking for strlcat... no
> checking linux/types.h usability... yes
> checking linux/types.h presence... yes
> checking for linux/types.h... yes
> checking for sys/types.h... (cached) yes
> checking linux/unistd.h usability... yes
> checking linux/unistd.h presence... yes
> checking for linux/unistd.h... yes
> checking for unistd.h... (cached) yes
> checking for linux/random.h... yes
> checking netdb.h usability... yes
> checking netdb.h presence... yes
> checking for netdb.h... yes
> checking for asm/types.h... (cached) yes
> checking for endian.h... (cached) yes
> checking for gethostbyname... yes
> configure: LibCFS required packages checks
> ==============================================================================
> 
> checking whether to enable readline support... yes
> checking for readline in -lreadline... no
> checking whether to use libpthread for libcfs library... yes
> checking for pthread_create in -lpthread... yes
> configure: LNet core checks
> ==============================================================================
> 
> checking for netdb.h... (cached) yes
> checking for gethostbyname... (cached) yes
> checking for strnlen... (cached) yes
> checking whether to enable 'efence' debugging support... no
> checking for non-default maximum LNET payload... no
> checking for yaml_parser_initialize in -lyaml... no
> checking whether to enable dlc... no (libyaml not present)
> configure: Lustre core checks
> ==============================================================================
> 
> checking for maximum OBD ioctl size... 8192 bytes
> checking for maximum number of MDS threads...
> checking for netdb.h... (cached) yes
> checking for endian.h... (cached) yes
> checking for gethostbyname... (cached) yes
> checking blkid/blkid.h usability... no
> checking blkid/blkid.h presence... no
> checking for blkid/blkid.h... no
> checking ext2fs/ext2fs.h usability... no
> checking ext2fs/ext2fs.h presence... no
> checking for ext2fs/ext2fs.h... no
> checking for is_selinux_enabled in -lselinux... no
> configure: WARNING:
> 
> No selinux package found, unable to build selinux enabled tools
> 
> checking whether to report minimum OST free space... no
> checking whether to randomly failing memory alloc... yes
> checking whether to check invariants (expensive cpu-wise)... no
> checking whether to track references with lu_ref... no
> checking whether to enable page state tracking... no
> checking whether to try to build SNMP support... auto
> checking for net-snmp-config... no
> checking for SNMP support... no (see config.log for errors)
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating libcfs/Makefile
> config.status: creating libcfs/autoMakefile
> config.status: creating libcfs/autoconf/Makefile
> config.status: creating libcfs/include/Makefile
> config.status: creating libcfs/include/libcfs/Makefile
> config.status: creating libcfs/include/libcfs/linux/Makefile
> config.status: creating libcfs/include/libcfs/util/Makefile
> config.status: creating libcfs/libcfs/Makefile
> config.status: creating libcfs/libcfs/autoMakefile
> config.status: creating libcfs/libcfs/linux/Makefile
> config.status: creating libcfs/libcfs/util/Makefile
> config.status: creating Makefile
> config.status: creating autoMakefile
> config.status: creating config/Makefile
> config.status: creating Rules
> config.status: creating lustre.spec
> config.status: creating lustre-dkms.spec
> config.status: creating ldiskfs/Makefile
> config.status: creating ldiskfs/autoMakefile
> config.status: creating lustre-iokit/Makefile
> config.status: creating lustre-iokit/obdfilter-survey/Makefile
> config.status: creating lustre-iokit/ost-survey/Makefile
> config.status: creating lustre-iokit/sgpdd-survey/Makefile
> config.status: creating lustre-iokit/mds-survey/Makefile
> config.status: creating lustre-iokit/ior-survey/Makefile
> config.status: creating lustre-iokit/stats-collect/Makefile
> config.status: creating lustre/scripts/dkms.mkconf
> config.status: creating lnet/Makefile
> config.status: creating lnet/autoMakefile
> config.status: creating lnet/autoconf/Makefile
> config.status: creating lnet/doc/Makefile
> config.status: creating lnet/include/Makefile
> config.status: creating lnet/include/lnet/Makefile
> config.status: creating lnet/klnds/Makefile
> config.status: creating lnet/klnds/autoMakefile
> config.status: creating lnet/klnds/o2iblnd/Makefile
> config.status: creating lnet/klnds/o2iblnd/autoMakefile
> config.status: creating lnet/klnds/gnilnd/Makefile
> config.status: creating lnet/klnds/gnilnd/autoMakefile
> config.status: creating lnet/klnds/socklnd/Makefile
> config.status: creating lnet/klnds/socklnd/autoMakefile
> config.status: creating lnet/lnet/Makefile
> config.status: creating lnet/lnet/autoMakefile
> config.status: creating lnet/selftest/Makefile
> config.status: creating lnet/selftest/autoMakefile
> config.status: creating lnet/utils/Makefile
> config.status: creating lnet/utils/lnetconfig/Makefile
> config.status: creating lustre/Makefile
> config.status: creating lustre/autoMakefile
> config.status: creating lustre/autoconf/Makefile
> config.status: creating lustre/conf/Makefile
> config.status: creating lustre/contrib/Makefile
> config.status: creating lustre/doc/Makefile
> config.status: creating lustre/include/Makefile
> config.status: creating lustre/include/lustre/Makefile
> config.status: creating lustre/kernel_patches/targets/3.10-rhel7.target
> config.status: creating lustre/kernel_patches/targets/2.6-rhel6.7.target
> config.status: creating lustre/kernel_patches/targets/2.6-rhel6.6.target
> config.status: creating lustre/kernel_patches/targets/2.6-rhel6.target
> config.status: creating lustre/kernel_patches/targets/2.6-rhel5.target
> config.status: creating lustre/kernel_patches/targets/2.6-sles11.target
> config.status: creating lustre/kernel_patches/targets/3.0-sles11.target
> config.status: creating lustre/kernel_patches/targets/3.0-sles11sp3.target
> config.status: creating lustre/kernel_patches/targets/3.0-sles11sp4.target
> config.status: creating lustre/kernel_patches/targets/3.12-sles12.target
> config.status: creating lustre/kernel_patches/targets/2.6-fc11.target
> config.status: creating lustre/kernel_patches/targets/2.6-fc12.target
> config.status: creating lustre/kernel_patches/targets/2.6-fc15.target
> config.status: creating lustre/kernel_patches/targets/3.x-fc18.target
> config.status: creating lustre/ldlm/Makefile
> config.status: creating lustre/fid/Makefile
> config.status: creating lustre/fid/autoMakefile
> config.status: creating lustre/llite/Makefile
> config.status: creating lustre/llite/autoMakefile
> config.status: creating lustre/lov/Makefile
> config.status: creating lustre/lov/autoMakefile
> config.status: creating lustre/mdc/Makefile
> config.status: creating lustre/mdc/autoMakefile
> config.status: creating lustre/lmv/Makefile
> config.status: creating lustre/lmv/autoMakefile
> config.status: creating lustre/lfsck/Makefile
> config.status: creating lustre/lfsck/autoMakefile
> config.status: creating lustre/mdt/Makefile
> config.status: creating lustre/mdt/autoMakefile
> config.status: creating lustre/mdd/Makefile
> config.status: creating lustre/mdd/autoMakefile
> config.status: creating lustre/fld/Makefile
> config.status: creating lustre/fld/autoMakefile
> config.status: creating lustre/obdclass/Makefile
> config.status: creating lustre/obdclass/autoMakefile
> config.status: creating lustre/obdclass/linux/Makefile
> config.status: creating lustre/obdecho/Makefile
> config.status: creating lustre/obdecho/autoMakefile
> config.status: creating lustre/ofd/Makefile
> config.status: creating lustre/ofd/autoMakefile
> config.status: creating lustre/osc/Makefile
> config.status: creating lustre/osc/autoMakefile
> config.status: creating lustre/ost/Makefile
> config.status: creating lustre/ost/autoMakefile
> config.status: creating lustre/osd-ldiskfs/Makefile
> config.status: creating lustre/osd-ldiskfs/autoMakefile
> config.status: creating lustre/osd-zfs/Makefile
> config.status: creating lustre/osd-zfs/autoMakefile
> config.status: creating lustre/mgc/Makefile
> config.status: creating lustre/mgc/autoMakefile
> config.status: creating lustre/mgs/Makefile
> config.status: creating lustre/mgs/autoMakefile
> config.status: creating lustre/target/Makefile
> config.status: creating lustre/ptlrpc/Makefile
> config.status: creating lustre/ptlrpc/autoMakefile
> config.status: creating lustre/ptlrpc/gss/Makefile
> config.status: creating lustre/ptlrpc/gss/autoMakefile
> config.status: creating lustre/quota/Makefile
> config.status: creating lustre/quota/autoMakefile
> config.status: creating lustre/scripts/Makefile
> config.status: creating lustre/tests/Makefile
> config.status: creating lustre/tests/mpi/Makefile
> config.status: creating lustre/utils/Makefile
> config.status: creating lustre/utils/gss/Makefile
> config.status: creating lustre/osp/Makefile
> config.status: creating lustre/osp/autoMakefile
> config.status: creating lustre/lod/Makefile
> config.status: creating lustre/lod/autoMakefile
> config.status: creating snmp/Makefile
> config.status: creating snmp/autoconf/Makefile
> config.status: creating config.h
> config.status: executing depfiles commands
> config.status: executing libtool commands
> 
> CC:            gcc
> LD:            /usr/bin/ld -m elf_x86_64
> CPPFLAGS:      -include /home/stsxab/lustre/lustre-release/undef.h
> -include /home/stsxab/lustre/lustre-release/config.h
> -I/home/stsxab/lustre/lustre-release/libcfs/include
> -I/home/stsxab/lustre/lustre-release/lnet/include
> -I/home/stsxab/lustre/lustre-release/lustre/include
> CFLAGS:        -g -O2 -Wall -Werror
> EXTRA_KCFLAGS: -include /home/stsxab/lustre/lustre-release/undef.h
> -include /home/stsxab/lustre/lustre-release/config.h  -g
> -I/home/stsxab/lustre/lustre-release/libcfs/include
> -I/home/stsxab/lustre/lustre-release/lnet/include
> -I/home/stsxab/lustre/lustre-release/lustre/include
> 
> Type 'make' to build Lustre.
> 
> 
> However when I type make the lustre build fails, as far as I am aware I
> have everything installed that I need.
> 
> make  all-recursive
> make[1]: Entering directory '/home/stsxab/lustre/lustre-release'
> Making all in .
> make[2]: Entering directory '/home/stsxab/lustre/lustre-release'
> grep -v config.h.in config.h.in > undef.h
> make CC="gcc" -C /lib/modules/4.4.0-22-generic/build \
> -f /home/stsxab/lustre/lustre-release/build/Makefile
> LUSTRE_LINUX_CONFIG=/lib/modules/4.4.0-22-generic/build/.config \
> LINUXINCLUDE='-I$(srctree)/arch/$(SRCARCH)/include
> -Iarch/$(SRCARCH)/include/generated -Iinclude $(if
> $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include)
> -I$(srctree)/arch/$(SRCARCH)/include/uapi
> -Iarch/$(SRCARCH)/include/generated/uapi -I$(srctree)/include/uapi
> -Iinclude/generated/uapi -include
> /lib/modules/4.4.0-22-generic/build/include/linux/kconfig.h' \
> M=/home/stsxab/lustre/lustre-release -o tmp_include_depends -o scripts -o \
> include/config/MARKER modules
> make[3]: Entering directory '/usr/src/linux-headers-4.4.0-22-generic'
>   LD      /home/stsxab/lustre/lustre-release/built-in.o
>   LD      /home/stsxab/lustre/lustre-release/libcfs/built-in.o
>   LD      /home/stsxab/lustre/lustre-release/libcfs/libcfs/built-in.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-tracefile.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-debug.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-prim.o
>   CC [M] /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-cpu.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-curproc.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-module.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-crypto.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-crypto-adler.o
>   CC [M]
> /home/stsxab/lustre/lustre-release/libcfs/libcfs/linux/linux-crypto-crc32.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/debug.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/fail.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/module.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/tracefile.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/watchdog.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/libcfs_string.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/hash.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/prng.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/workitem.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/libcfs_cpu.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/libcfs_mem.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/libcfs_lock.o
>   CC [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/heap.o
>   LD [M]  /home/stsxab/lustre/lustre-release/libcfs/libcfs/libcfs.o
>   LD      /home/stsxab/lustre/lustre-release/lnet/built-in.o
>   LD      /home/stsxab/lustre/lustre-release/lnet/klnds/built-in.o
>   LD      /home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/built-in.o
>   CC [M]  /home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.o
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:[m[K
> In function ‘[01m[Kkiblnd_destroy_fmr_pool[m[K’:
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1425:4:[m[K
> [01;31m[Kerror: [m[Kimplicit declaration of function
> ‘[01m[Kib_free_fast_reg_page_list[m[K’
> [-Werror=implicit-function-declaration]
>     ib_free_fast_reg_page_list(frd->frd_frpl);
> [01;32m[K    ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:[m[K
> In function ‘[01m[Kkiblnd_alloc_freg_pool[m[K’:
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1514:19:[m[K
> [01;31m[Kerror: [m[Kimplicit declaration of function
> ‘[01m[Kib_alloc_fast_reg_page_list[m[K’
> [-Werror=implicit-function-declaration]
>    frd->frd_frpl = ib_alloc_fast_reg_page_list(fpo->fpo_hdev->ibh_ibdev,
> [01;32m[K                   ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1514:17:[m[K
> [01;31m[Kerror: [m[Kassignment makes pointer from integer without a cast
> [-Werror=int-conversion]
>    frd->frd_frpl = ib_alloc_fast_reg_page_list(fpo->fpo_hdev->ibh_ibdev,
> [01;32m[K                 ^[m[K
> In file included from
> [01m[K/usr/src/linux-headers-4.4.0-22-generic/include/uapi/linux/stddef.h:1:0[m[K,
> 
>                  from
> [01m[K/usr/src/linux-headers-4.4.0-22-generic/include/linux/stddef.h:4[m[K,
>                  from [01m[K./include/uapi/linux/posix_types.h:4[m[K,
>                  from
> [01m[K/usr/src/linux-headers-4.4.0-22-generic/include/uapi/linux/types.h:13[m[K,
> 
>                  from
> [01m[K/usr/src/linux-headers-4.4.0-22-generic/include/linux/types.h:5[m[K,
>                  from [01m[K./arch/x86/include/asm/page.h:4[m[K,
>                  from
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:41[m[K:
> 
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:[m[K
> In function ‘[01m[Kkiblnd_fmr_pool_map[m[K’:
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1820:27:[m[K
> [01;31m[Kerror: [m[Kdereferencing pointer to incomplete type
> ‘[01m[Kstruct ib_fast_reg_page_list[m[K’
>      LASSERT(npages <= frpl->max_page_list_len);
> [01;32m[K                           ^[m[K
> [01m[K/usr/src/linux-headers-4.4.0-22-generic/include/linux/compiler.h:166:42:[m[K
> [01;36m[Knote: [m[Kin definition of macro ‘[01m[Kunlikely[m[K’
>  # define unlikely(x) __builtin_expect(!!(x), 0)
> [01;32m[K                                          ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/libcfs/include/libcfs/libcfs_private.h:99:23:[m[K
> [01;36m[Knote: [m[Kin expansion of macro ‘[01m[KLASSERTF[m[K’
>  #define LASSERT(cond) LASSERTF(cond, "\n")
> [01;32m[K                       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1820:5:[m[K
> [01;36m[Knote: [m[Kin expansion of macro ‘[01m[KLASSERT[m[K’
>      LASSERT(npages <= frpl->max_page_list_len);
> [01;32m[K     ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1827:18:[m[K
> [01;31m[Kerror: [m[K‘[01m[KIB_WR_FAST_REG_MR[m[K’ undeclared (first use
> in this function)
>      wr->opcode = IB_WR_FAST_REG_MR;
> [01;32m[K                  ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1827:18:[m[K
> [01;36m[Knote: [m[Keach undeclared identifier is reported only once for
> each function it appears in
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1829:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.iova_start = iov;
> [01;32m[K       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1830:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.page_list  = frpl;
> [01;32m[K       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1831:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.page_list_len = npages;
> [01;32m[K       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1832:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.page_shift = PAGE_SHIFT;
> [01;32m[K       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1833:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.length = nob;
> [01;32m[K       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1834:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.rkey = is_rx ? mr->rkey
> [01;32m[K       ^[m[K
> [01m[K/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.c:1836:7:[m[K
> [01;31m[Kerror: [m[K‘[01m[Kstruct ib_send_wr[m[K’ has no member named
> ‘[01m[Kwr[m[K’
>      wr->wr.fast_reg.access_flags =
> [01;32m[K       ^[m[K
> cc1: all warnings being treated as errors
> scripts/Makefile.build:258: recipe for target
> '/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.o' failed
> make[7]: ***
> [/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd/o2iblnd.o] Error 1
> scripts/Makefile.build:403: recipe for target
> '/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd' failed
> make[6]: *** [/home/stsxab/lustre/lustre-release/lnet/klnds/o2iblnd]
> Error 2
> scripts/Makefile.build:403: recipe for target
> '/home/stsxab/lustre/lustre-release/lnet/klnds' failed
> make[5]: *** [/home/stsxab/lustre/lustre-release/lnet/klnds] Error 2
> scripts/Makefile.build:403: recipe for target
> '/home/stsxab/lustre/lustre-release/lnet' failed
> make[4]: *** [/home/stsxab/lustre/lustre-release/lnet] Error 2
> Makefile:1396: recipe for target
> '_module_/home/stsxab/lustre/lustre-release' failed
> make[3]: *** [_module_/home/stsxab/lustre/lustre-release] Error 2
> make[3]: Leaving directory '/usr/src/linux-headers-4.4.0-22-generic'
> autoMakefile:1041: recipe for target 'modules' failed
> make[2]: *** [modules] Error 2
> make[2]: Leaving directory '/home/stsxab/lustre/lustre-release'
> autoMakefile:582: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory '/home/stsxab/lustre/lustre-release'
> autoMakefile:478: recipe for target 'all' failed
> make: *** [all] Error 2
> ]0;root at dragon-vm:
> ~/lustre/lustre-releaseroot at dragon-vm:~/lustre/lustre-release# uname -a
> Linux dragon-vm 4.4.0-22-generic #39-Ubuntu SMP Thu May 5 16:53:32 UTC
> 2016 x86_64 x86_64 x86_64 GNU/Linux
> 
> 
> Does anyone know what i am doing wrong? Or if there are any further
> packages I need to install.
> 
> Cheers.
> 
> Phill.
> 
> 
> 
> 
> 
> _______________________________________________
> lustre-discuss mailing list
> lustre-discuss at lists.lustre.org
> http://secure-web.cisco.com/1JNzd8dR3eRqkoJbPGu_hdP_KF6C9Wrud8eOFwt4R95rImATcEfzrFuQTZ06d6mk6B227kQjZQQkJnXNuYUmuTmLL6tH6V8fwChpjOlzUimtQI0MuyK8trf8wEWqYJyA-u8RV3fqlL9WiFXLsy6kH7elqRSAaGT7ANch3VPQOzXgvUNAtB3za50_y7LkxDA_FZNeKDEV07dknzU6hrSiP-lISfN2OXdx6kcmqxu_R6Nw0hWsclgjKyVDw3v_kQAyGSeGb1mP4PSoLmm-mxIgOPZ4CPDoEAuUo8X5asZtoyWckt_gT7SxfttHIJUTMqcClHH9X9PclMZiOV_kQZfWT9CFR26__sAFpLEqMDj-WUa_dcYketNVoJGKhm5ixucZj/http%3A%2F%2Flists.lustre.org%2Flistinfo.cgi%2Flustre-discuss-lustre.org
> 



More information about the lustre-discuss mailing list