Re: Linux-gpib-4.2 can not compile on CentoOS 7
dave penkler <[email protected]>
| Newsgroups | gmane.linux.hardware.gpib.general |
|---|---|
| Message-ID | <CAL=kjP2Zr6G1BGOyfXmquoPXWYkLfDmiGNNFJY_n7AONJAX2nQ@mail.gmail.com> |
Hi Søren,
Thanks for raising this. As Frank has said, suspect that the issue is
related to the implementation of device tree support in your kernel.
Specifically that *of_find_node_by_path() *is not defined if CONFIG_OF is
not defined.
Please check /include/linux/of.h in your 3.10.xx kernel source whether
there is a definition for
*of_find_node_by_path()* in the case that CONFIG_OF is *not* defined:
static inline struct device_node *of_find_node_by_path(const char *path)
{
return NULL;
}
We may need to create a compat/include/linux/of.h for this.
cheers,
/d
On Wed, Nov 28, 2018 at 8:28 AM Søren Koch via Linux-gpib-general <
[email protected]> wrote:
> Hi all.
>
>
> I have just tried to install linux-gpib-4.2 on a new CentOS 7 system
> (after running yum update to get latest packages)
>
> When I try to compile the kernel driver i get the following error:
>
>
> >
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/fmh_gpib.c:
> > In function ‘fmh_gpib_device_match’:
> >
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/fmh_gpib.c:928:4:
> > error: implicit declaration of function ‘of_find_node_by_path’
> > [-Werror=implicit-function-declaration]
> > of_node = of_find_node_by_path(config->device_tree_path);
> > ^
> >
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/fmh_gpib.c:928:12:
> > warning: assignment makes pointer from integer without a cast [enabled
> > by default]
> > of_node = of_find_node_by_path(config->device_tree_path);
> > ^
> > cc1: some warnings being treated as errors
> > make[5]: ***
> >
> [/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/fmh_gpib.o]
> > Error 1
> > make[4]: ***
> >
> [/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib]
> > Error 2
> > make[3]: ***
> >
> [_module_/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib]
> > Error 2
> > make[2]: [all-local] Error 2 (ignored)
>
> uname -r gives 3.10.0-862.14.4.el7.x86_64
>
>
> configure gave the following output:
>
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking whether make supports nested variables... yes
> checking whether to enable maintainer-specific portions of Makefiles... no
> checking build system type... x86_64-pc-linux-gnu
> checking host system type... x86_64-pc-linux-gnu
> checking Linux kernel directory... ok
> checking Linux kernel compile flags... ok
> checking for depmod... /sbin/depmod
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating drivers/Makefile
> config.status: creating config.h
> config.status: config.h is unchanged
>
> I have included the the full output from make:
>
>
> make all-recursive
> make[1]: Entering directory
> `/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0'
> Making all in drivers
> make[2]: Entering directory
> `/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers'
> make -C /lib/modules/3.10.0-862.14.4.el7.x86_64/build/ V=1 modules\
> CC="gcc
> -I/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0
> -I/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/compat/include"
> \
> CONFIG_GPIB_ISA="no" \
>
>
> SUBDIRS="/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib"
> make[3]: Entering directory `/usr/src/kernels/3.10.0-862.14.4.el7.x86_64'
> test -e include/generated/autoconf.h -a -e include/config/auto.conf ||
> ( \
> echo >&2; \
> echo >&2 " ERROR: Kernel configuration is invalid."; \
> echo >&2 " include/generated/autoconf.h or
> include/config/auto.conf are missing.";\
> echo >&2 " Run 'make oldconfig && make prepare' on kernel src to
> fix it."; \
> echo >&2 ; \
> /bin/false)
> mkdir -p
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/.tmp_versions
> ; rm -f
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/.tmp_versions/*
> make -f scripts/Makefile.build
> obj=/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib
> make -f scripts/Makefile.build
>
> obj=/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/agilent_82350b
> (cat /dev/null; echo
>
> kernel//root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/agilent_82350b/agilent_82350b.ko;)
> >
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/agilent_82350b/modules.order
> make -f scripts/Makefile.build
>
> obj=/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/agilent_82357a
> (cat /dev/null; echo
>
> kernel//root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/agilent_82357a/agilent_82357a.ko;)
> >
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/agilent_82357a/modules.order
> make -f scripts/Makefile.build
>
> obj=/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/cb7210
> (cat /dev/null; echo
>
> kernel//root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/cb7210/cb7210.ko;)
> >
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/cb7210/modules.order
> make -f scripts/Makefile.build
>
> obj=/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/cec
> (cat /dev/null; echo
>
> kernel//root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/cec/cec_gpib.ko;)
> >
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/cec/modules.order
> make -f scripts/Makefile.build
>
> obj=/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib
> gcc -I/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0
> -I/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/compat/include
>
> -Wp,-MD,/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/.fmh_gpib.o.d
> -nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include
> -I./arch/x86/include -Iarch/x86/include/generated -Iinclude
> -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi
> -I./include/uapi -Iinclude/generated/uapi -include
> ./include/linux/kconfig.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes
> -Wno-trigraphs -fno-strict-aliasing -fno-common
> -Werror-implicit-function-declaration -Wno-format-security
> -fno-delete-null-pointer-checks -std=gnu89 -O2 -m64 -mno-mmx -mno-sse
> -mpreferred-stack-boundary=3 -mtune=generic -mno-red-zone
> -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args
> -Wframe-larger-than=2048 -DCONFIG_AS_CFI=1
> -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1
> -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1
> -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe
> -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx
> -mno-sse2 -mno-3dnow -mno-avx -mindirect-branch=thunk-extern
> -mindirect-branch-register -DRETPOLINE -Wframe-larger-than=2048
> -fstack-protector-strong -Wno-unused-but-set-variable
> -fno-omit-frame-pointer -fno-optimize-sibling-calls -g -pg -mfentry
> -DCC_USING_FENTRY -fno-inline-functions-called-once
> -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow
> -fconserve-stack -DCC_HAVE_ASM_GOTO
>
> -I/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/include
> -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(fmh_gpib)"
> -D"KBUILD_MODNAME=KBUILD_STR(fmh_gpib)" -c -o
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/.tmp_fmh_gpib.o
>
> /root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers/gpib/fmh_gpib/fmh_gpib.c
> make[3]: Leaving directory `/usr/src/kernels/3.10.0-862.14.4.el7.x86_64'
> make[2]: Leaving directory
> `/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0/drivers'
> make[2]: Entering directory
> `/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0'
> make[2]: Leaving directory
> `/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0'
> make[1]: Leaving directory
> `/root/Downloads/linux-gpib-4.2.0/linux-gpib-kernel-4.2.0'
>
> and it appears that the kernel configuration is wrong, however I have
> not been able to determine why as it is a freshly installed and fully
> updated CentOS7
>
> I have tried reinstalling CentOS but that did not give a different result.
>
>
> Installing linux-gpib-4.1 on the same system works fine (which is a good
> thing as we need GPIB for our data acquisition systems).
>
> Anyone have any ideas?
>
>
> --
> Søren Koch
> Senior Development Engineer
> DTU Energy, Risø Campus
> -------------------------------------------
> Technical University of Denmark
> Department of Energy Conversion and Storage
> Frederiksborgvej 399
> Building 227, 1.sal
> 4000 Roskilde
> Direct +45 46775816
> [email protected]
> http://www.ecs.dtu.dk
>
>
> _______________________________________________
> Linux-gpib-general mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/linux-gpib-general
>
_______________________________________________
Linux-gpib-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-gpib-general