Cannot install SCST on Debian 9
uname -a
Linux _ 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u1 (2019-09-20) x86_64 GNU/Linux
Make phase without any issues, but install crashes at a signing step:
KDIR=/lib/modules/4.9.0-11-amd64/build ../../scripts/sign-modules
Signing /home/strgadm/scst/scst-svn/scst/src/scst.ko
At main.c:158:
- SSL error:02001002:system library:fopen:No such file or directory: ../crypto/bio/bss_file.c:74
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: ../crypto/bio/bss_file.c:81
sign-file: /home/strgadm/scst/scst-svn/scst/src/certs/scst_module_key.priv: No such file or directory
Makefile:126: recipe for target 'install' failed
make[2]: *** [install] Error 1
make[2]: Leaving directory '/home/strgadm/scst/scst-svn/scst/src'
Makefile:39: recipe for target 'install' failed
make[1]: *** [install] Error 2
make[1]: Leaving directory '/home/strgadm/scst/scst-svn/scst'
Makefile:218: recipe for target 'scst_install' failed
make: *** [scst_install] Error 2
Full make output in the attachment.
Is it anything that I can do by myown?
Thanks in advance!
Regards,
Konstantin
I saw familiar case here https://sourceforge.net/p/scst/mailman/message/35810867/
I thought about kernel upgrade, but I want to deploy SCST on the base Debian 9.
With which version of SCST did you encounter this build error? Yesterday I ran 'make dpkg' for the SCST trunk inside an Ubuntu 19.10 virtual machine and that went fine. The most recent fix for module signing that has been checked in on the trunk is r8607.
This is for for trunk r8609
Just tested the same build for Debian 10 (Linux russtrgtest 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u1 (2019-09-20) x86_64 GNU/Linux)
All builds are finished fine. But I would like to use exactly Debian 9 as more stable, and tested.
The problem was in a kernel config (linux-headers) file, a parameter CONFIG_MODULE_SIG_HASH= is absent. That is why ../scst-svn/scst/src/certs/Makefile worked incorrectly. Exactly the following line:
CONFIG_MODULE_SIG_HASH := $(shell sed -n 's/^CONFIG_MODULE_SIG_HASH="([^"]*)"$$/\1/p' "$(KDIR)/.config" | { read -r line; [ -n "$$line" ] && echo "$$line" || echo sha256; })
Are you shure that here, between sed part and {}, should be AND operator, not OR?
Ok.. OR will not helped :)
If I make requred cert manually, a buid finishes successfully.
The patch I checked in yesterday is a fix for CentOS 6. I'm still working on a fix for Debian 9.
Please retest with trunk r8617 on Debian 9.
Hi Bart, thanks for the fast response!
"make" finishes successfully, but with some errors during the build process.
"make install" cannot be finished due to qla build error. Full build log in the attachment.
How can I help you?
That's very weird. Can you check with "svn status" whether your source tree is clean and whether or not the file qla_def.h has not been deleted accidentally from the source tree?
Here is an output of "svn status":
And here is find output:
Is there anything else how I can help you?
How did you invoke 'make'? If I run the following commands SCST build and installs fine on Debian 9:
Last edit: Bart Van Assche 2019-10-12
I am doing Debian 9 installation in Expert mode. Is it possible that SCST needs some libraries from default installation?
If I am trying to run "make qla"
I get following output:
But I cannot find it as a service:
Error with qla I get when I am trying to run: make install scst scst_install iscsi iscsi_install
Am I doing wrong?
After fresh default clean install runed: "make qla"
Output the same:
I do not need qla, but due to it the make crashes each time.
I have removed all references to the unified target from the Makefile. As one can see running 'make qla' now works fine:
Hi Bart,
I Switched to Ubuntu 18.04 LTS:
Before your fix I had the same output as for Debian:
make phase (sudo make scst scst_install iscsi iscsi_install) finished without errors.
install phase (sudo make install scst scst_install iscsi iscsi_install) - the same error as for Debian:
After the fix if I run "make install scst scst_install iscsi iscsi_install", I get still the same error as for "make qla":
However I ran "make" and "make install" for scst, iscsi-scst, scstadmin separately, without any errors.
I think one of this scenerious "make scst scst_install iscsi iscsi_install" have reference to qla by default. For me make qla is still faulty.
Last edit: Konstantin 2019-10-15
I will make VM for test purposes if you need my help in it.
Please reread what I wrote. I think the problem is that you did not run the same commands as I did.
Ok. Here is an output for your command:
I successfully built a deb packages. SCST target works well. I think manual build of each object is also could solve the problem. I am not sure what is wrong with Make scenario in my case.
Are we perhaps using different shells? Would it be possible to share the output of
echo $SHELLandls -l /bin/sh?Hi Bart, I am sorry for the long delay with the reply.
Here is my output for shell:
That's the same output as on my Debian 9 VM.
No matter what I try, SCST builds fine inside that Debian 9 VM. Unless someone can tell me how to reproduce the build failure I will give up.