Hoi,
Ik probeer op een BL460c Gen8 een driver voor een iodrive (accelerator) te compileren op Debian 12. Om een of andere reden faalt de compilatie telkens omdat hij een bestand "stddev.h" niet kan vinden.
Ik ken niet zo veel van het compilatieproces, maar kan iemand aan de hand van onderstaande zien wat er mogelijk mis loopt? Ik vermoed iets met paden, dat de compiler niet op de juiste plekken gaat zoeken naar dat bestand.
Het script dat ik uitvoer:
Einde van de console output daarvan:
grep op de log file van die compilatie:
Ik vermoed nuttige info over de compiler? Al weet ik niet of die op die moment gcc dan wel g++ gaat gebruiken.
Ik probeer op een BL460c Gen8 een driver voor een iodrive (accelerator) te compileren op Debian 12. Om een of andere reden faalt de compilatie telkens omdat hij een bestand "stddev.h" niet kan vinden.
Ik ken niet zo veel van het compilatieproces, maar kan iemand aan de hand van onderstaande zien wat er mogelijk mis loopt? Ik vermoed iets met paden, dat de compiler niet op de juiste plekken gaat zoeken naar dat bestand.
Het script dat ik uitvoer:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| root@blade01:~# cat ~/iodrive2.sh #apt update && apt install --assume-yes pve-headers pve-headers-`uname -r` zip unzip gcc fakeroot build-essential debhelper rsync dkms && apt upgrade && apt autoremove --assume-yes && \ apt update && apt install --assume-yes linux-headers-$(uname -r) zip unzip gcc fakeroot build-essential debhelper rsync dkms && apt upgrade && apt autoremove --assume-yes && \ mkdir /home/temp && cd /home/temp && \ wget -O iomemory-vsl.zip https://www.dropbox.com/s/ktj2ive9elah04n/iomemory-vsl-4.20.1.zip?dl=1 && \ wget -O fio-common_3.2.16.1731-1.0_amd64.deb https://www.dropbox.com/s/pd2ohfaufhwqc34/fio-common_3.2.16.1731-1.0_amd64.deb?dl=1 && \ wget -O fio-firmware-fusion_3.2.16.20180821-1_all.deb https://www.dropbox.com/s/kcn5agi6lyikicf/fio-firmware-fusion_3.2.16.20180821-1_all.deb?dl=1 && \ wget -O fio-sysvinit_3.2.16.1731-1.0_all.deb https://www.dropbox.com/s/g39l6lg9of6eqze/fio-sysvinit_3.2.16.1731-1.0_all.deb?dl=1 && \ wget -O fio-util_3.2.16.1731-1.0_amd64.deb https://www.dropbox.com/s/57huby17mteg6wp/fio-util_3.2.16.1731-1.0_amd64.deb?dl=1 && \ unzip iomemory-vsl.zip && cd /home/temp/iomemory-vsl && \ cp -r /home/temp/iomemory-vsl/root/usr/src/iomemory-vsl-3.2.16 /usr/src/ && \ mkdir -p /var/lib/dkms/iomemory-vsl/3.2.16/build && \ ln -s /usr/src/iomemory-vsl-3.2.16 /var/lib/dkms/iomemory-vsl/3.2.16/source && \ dkms build -m iomemory-vsl -v 3.2.16 && \ dkms install -m iomemory-vsl -v 3.2.16 && \ modprobe iomemory-vsl && \ cd /home/temp && \ dpkg -i fio-firmware-fusion_3.2.16.20180821-1_all.deb fio-util_3.2.16.1731-1.0_amd64.deb fio-sysvinit_3.2.16.1731-1.0_all.deb fio-common_3.2.16.1731-1.0_amd64.deb root@blade01:~# |
Einde van de console output daarvan:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| Building module: Cleaning build area... 'make' DKMS_KERNEL_VERSION=6.1.0-10-amd64...........(bad exit status: 2) Error! Bad return status for module build on kernel: 6.1.0-10-amd64 (x86_64) Consult /var/lib/dkms/iomemory-vsl/3.2.16/build/make.log for more information. Error! One or more modules failed to install during autoinstall. Refer to previous errors for more information. dkms: autoinstall for kernel: 6.1.0-10-amd64 failed! run-parts: /etc/kernel/header_postinst.d/dkms exited with return code 11 Failed to process /etc/kernel/header_postinst.d at /var/lib/dpkg/info/linux-headers-6.1.0-10-amd64.postinst line 11. dpkg: error processing package linux-headers-6.1.0-10-amd64 (--configure): installed linux-headers-6.1.0-10-amd64 package post-installation script subprocess returned error exit status 1 Errors were encountered while processing: linux-headers-6.1.0-10-amd64 E: Sub-process /usr/bin/dpkg returned an error code (1) root@blade01:~# |
grep op de log file van die compilatie:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| compilation terminated. make[2]: *** [/usr/src/linux-headers-6.1.0-10-common/scripts/Makefile.build:255: /var/lib/dkms/iomemory-vsl/3.2.16/build/pci.o] Error 1 In file included from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/linux/ktypes.h:48, from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/ktypes.h:76, from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/kfio.h:37, from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/dbgset.h:33, from /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio.c:55: /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/common-linux/commontypes.h:37:10: fatal error: stddef.h: No such file or directory 37 | #include <stddef.h> | ^~~~~~~~~~ compilation terminated. make[2]: *** [/usr/src/linux-headers-6.1.0-10-common/scripts/Makefile.build:255: /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio.o] Error 1 make[1]: *** [/usr/src/linux-headers-6.1.0-10-common/Makefile:2037: /var/lib/dkms/iomemory-vsl/3.2.16/build] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-6.1.0-10-amd64' make: *** [Makefile:111: modules] Error 2 root@blade01:~# |
code:
1
2
3
4
5
6
7
8
| root@blade01:~# find / -name stddef.h 2>/dev/null /usr/include/stddef.h /usr/include/linux/stddef.h /usr/src/linux-headers-6.1.0-10-common/include/linux/stddef.h /usr/src/linux-headers-6.1.0-10-common/include/uapi/linux/stddef.h /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h /usr/local/include/stddef.h root@blade01:~# |
Ik vermoed nuttige info over de compiler? Al weet ik niet of die op die moment gcc dan wel g++ gaat gebruiken.
code:
1
2
3
4
5
6
| root@blade01:~# gcc -v -E - < /dev/null | grep -i path ... ... COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-v' '-E' '-mtune=generic' '-march=x86-64' |
code:
1
2
3
4
5
6
7
| root@blade01:~# g++ -v -E - < /dev/null | grep -i path ... ... ... COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-v' '-E' '-shared-libgcc' '-mtune=generic' '-march=x86-64' |