modulelinux-kernelopensslredhat

How to fix: fatal error: openssl/opensslv.h: No such file or directory in RedHat 7


I have RedHat Enterprise Linux Server 7, and I downloaded the linux kernel version 4.12.10 which I am trying to compile but when I execute the following command:

make modules

I get the following error:

scripts/sign-file.c:25:30: fatal error: openssl/opensslv.h: No such file or directory

Does anyone have an idea to fix this please ?


Solution

  • To fix this problem, you have to install OpenSSL development package, which is available in standard repositories of all modern Linux distributions.

    To install OpenSSL development package on Debian, Ubuntu or their derivatives:

    $ sudo apt-get install libssl-dev
    

    To install OpenSSL development package on Fedora, CentOS or RHEL:

    $ sudo yum install openssl-devel 
    

    Edit : As @isapir has pointed out, for Fedora version>=22 use the DNF package manager :

    dnf install openssl-devel
    

    Edit 2: For Fedora 41 it is also needed:

    dnf install openssl-devel-engine