GNU/Linux >> Linux Esercitazione >  >> Linux

Correzione dell'errore fatale openssl err.h – Nessun file o directory di questo tipo [OpenCA]

Ho installato OpenCA versione 1.5.1 su una macchina CentOS 7. Secondo la documentazione, è necessario installare il pacchetto degli strumenti OpenCA prima di installare il pacchetto OpenCA Base. Tuttavia, ricevo "errore irreversibile openssl err.h – Nessun file o directory di questo tipo ” durante la compilazione del pacchetto di strumenti OpenCA come mostrato di seguito.

[root@ra openca-tools-1.3.1]# make
Making all in src/sv
make[1]: Entering directory `/root/downloads/openca-tools-1.3.1/src/sv'
gcc -DHAVE_CONFIG_H -I. -I../../include/openca -I../../include -g -O2 -fstack-check -maccumulate-outgoing-args -MT apps.o -MD -MP -MF .deps/apps.Tpo -c -o apps.o apps.c
apps.c:119:25: fatal error: openssl/err.h: No such file or directory
 #include <openssl/err.h>
 ^
compilation terminated.
make[1]: *** [apps.o] Error 1

Come correggere questo errore?

Soluzione:correggi l'errore irreversibile openssl err.h

Potresti essere consapevole del fatto che OpenSSL dovrebbe essere installato prima di installare OpenCA. Nel caso, se non hai installato OpenSSL, passa a questo tutorial e installalo prima .

Tornando all'errore "errore irreversibile:openssl/err.h:nessun file o directory simile ', sembra che lo script di compilazione non sia in grado di trovare uno dei file di intestazione OpenSSL. Nel nostro caso, è err.h file.

Per trovare quale pacchetto fornisce un particolare file o file di intestazione, utilizzare il comando seguente:

Su CentOS, usa yum whatprovides come mostrato di seguito:

[root@ra ]# yum whatprovides '*/openssl/err.h'
1:openssl-devel-1.0.2k-8.el7.i686 : Files for development of applications which will use  OpenSSL
Repo : base
Matched from:
Filename : /usr/include/openssl/err.h

1:openssl-devel-1.0.2k-8.el7.x86_64 : Files for development of applications
 : which will use OpenSSL
Repo : base
Matched from:
Filename : /usr/include/openssl/err.h

1:openssl-devel-1.0.2k-8.el7.x86_64 : Files for development of applications
 : which will use OpenSSL
Repo : @base
Matched from:
Filename : /usr/include/openssl/err.h

Nota: Puoi sostituire '*/openssl/err.h' con il file che desideri cercare. Ad esempio, puoi anche cercare semplicemente un file particolare come '*/err.h' .

Su macchine Ubuntu, usa dpkg comando come mostrato di seguito:

# dpkg -S openssl/err.h
libssl-dev:amd64: /usr/include/openssl/err.h

In alternativa, puoi usare apt-file find <filename> anche il comando.

# apt-file find openssl/err.h
libssl-dev: /usr/include/openssl/err.h
libwolfssl-dev: /usr/include/cyassl/openssl/err.h
libwolfssl-dev: /usr/include/wolfssl/openssl/err.h

Bene, l'output sopra dice che err.h il file viene fornito con il pacchetto di sviluppo OpenSSL. Quindi installando openssl-devel dovrebbe correggere l'errore.

# yum install openssl-devel

Sulle varianti di Ubuntu:

# sudo apt-get install libssl-dev

Ora, il pacchetto degli strumenti OpenCA dovrebbe essere compilato senza errori. Spero che aiuti qualcuno là fuori.


Linux
  1. Errore:Tcl.h non trovato (nessun file o directory di questo tipo)?

  2. Nessun errore di file o directory durante l'esecuzione di un file binario

  3. Errore di compilazione:g++:errore durante il tentativo di exec 'cc1plus':execvp:nessun file o directory simile

  4. Errore di compilazione Openssl

  5. Perché ENOENT significa No such file or directory?

Impossibile eseguire nessun file o directory di questo tipo [fissare]

Fix ::file open /home/user/etc/domainname/passwd non riuscito con errore nessun file o directory di questo tipo

arm-linux-gnu-gcc errore fatale:stdio.h:file o directory non presenti

Bash:Nessun file o directory di questo tipo?

sys/types.h:file o directory non presenti

Il comando conda richiederà l'errore:Bad Interpreter:No such file or directory