opensslconf.h를 찾을 수 없습니다


14

znort987의 파서를 작성하려고하는데 sudo apt-get libssl-dev를 실행했습니다. / usr / include / openssl에서 모든 종류의 ssl 관련 헤더 파일을 볼 수 있지만 opensslconf.h가 openssl 폴더에서 누락되고 make 명령이 오류를 발생시킵니다.

 make: *** No rule to make target `/usr/include/openssl/opensslconf.h', needed by `.objs/rmd160.o'.  Stop.

32 비트 AMD 랩톱에서 Ubuntu 14.04를 사용하고 있습니다.

업데이트 : 설치를 정리하기 위해 다음을 실행했습니다.

sudo apt-get remove libssl-dev build-essential g++-4.4 libboost-all-dev libsparsehash-dev git-core perl

sudo apt-get install libssl-dev build-essential g++-4.4 libboost-all-dev libsparsehash-dev git-core perl
git clone git://github.com/znort987/blockparser.git
cd blockparser
make

이제 나는 얻는다 :

  /usr/include/openssl/e_os2.h:56:33: fatal error: openssl/opensslconf.h: No such file or directory

답변:


5

64 시스템을 구축 중이고 32 비트를 대상으로하는 경우 다음 명령으로이 문제가 해결되었습니다.

sudo apt-get install libssl-dev:i386

이 아키텍처를 먼저 활성화해야합니다sudo dpkg --add-architecture i386
Sandburg

4

이 물건은 오래 전에 일어난 것 같습니다 (특히 2013-05-20 16:56:06 UTC). 나는 OP와 매우 흡사 한 이상한 문제에 부딪 쳤지 만 컴파일 할 때 올바른 포함 세트를 첨부하지 못하는 swig 문제로 판명되었습니다. 우분투 패키지 문제가 아닌지 확인하기 위해 소스를 통해 사냥을했지만 우분투에는 문제가되지 않았습니다.

이것에 대해 더 자세히 살펴보면 openssl 패키지는 opensslconf.h를 다중 아치 인식 디렉토리 구조로 바꿨습니다. 자세한 커밋은 다음과 같습니다 .http : //bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/openssl/utopic-updates/revision/11.1.42 그리고 그 개정판을 어떻게 만들 었는지 보려면 http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/openssl/utopic-updates/annotate/head:/ : 데비안 규칙의 주석이 달린 개정을 따라 놀랍게도 효율적인 방법이었습니다. 데비안 / 규칙 .

커미터 인 커트로 엑스 (Kurt Roeckx)는 Changelog에 다음과 같이 썼다.

  • / usr / include / $ (DEB_HOST_MULTIARCH)로 이동하여 libssl-dev Multi-Arch : 동일으로 표시하십시오.

공평하게, 적어도 opensslconf.h가 논리적으로 관련된 나머지 헤더와 함께 / usr / include / openssl 폴더에 심볼릭 링크되어 있기를 바랍니다. 그러나 그것은 버그가 아닙니다. 그것은 단지 제 의견입니다. 내가 한 것처럼이 문제에 부딪힌 사람들에게는 물건을 흥얼 거리기 위해 누락 된 포함을 조금 스니핑하는 것이 필요합니다.

그리고 OP 에 관해서는, 지금 꽤 많이 나왔지만 14.04 LTS x64 상자에서 정확한 단계 세트를 실행했으며 문제가 발생하지 않았습니다. 아마도 문제는 시간이 지남에 따라 단순히 해결되었습니다. 이 중 일부가 도움이 되길 바랍니다.


1
나는 지금 당신과 같은 문제가 있다고 생각합니다. 어떻게 해결 했습니까?
Surya Wijaya Madjid

3

sudo apt-get libssl-dev를 실행했습니다. / usr / include / openssl에서 모든 종류의 SSL 관련 헤더 파일을 볼 수 있지만 opensslconf.h가 openssl 폴더에서 누락되었으며 make 명령이 오류를 발생시킵니다 ...

패키지에 결함이있는 것 같습니다.

<openssl/opensslconf.h>OpenSSL의 Configure명령으로 작성됩니다 . 배포 파일과 함께 포함되어야합니다. 내가 찾을 수있는 가장 빠른 언급 은 버전 0.9.2 의 OpenSSL의 CHANGELOG 입니다.

https://bugs.launchpad.net/ubuntu/+filebug/?no-redirect 에서 버그 보고서를 제출 하십시오 .


1

32 비트 시스템과 64 비트 시스템의 문제인 것 같습니다. 나는 모든 것을 지우고 Openssl을 직접 다운로드하여 구축했으며 파서 작성 지침을 따랐다. lnk 단계에서 "호환되지 않는 libcrypto"를 건너 뛰고 실패했습니다.

따라서 필요한 라이브러리는 64 비트 시스템에서만 사용할 수 있으며 32 비트 시스템에서 libssl-dev를 설치하는 동안 건너 뜁니다. 더 명확한 오류 메시지가 좋습니다.


64 비트 컴퓨터에서 32 비트 프로그램을 컴파일하려고하는데 동일한 opensslconf.h찾을 수 없음 오류가 발생합니다. 설치 libssl-dev(즉, 32 비트 버전이?) 모든하지만 내 프로그램 때문에 누락 된 파일로 컴파일되지 않습니다. 어떤 아이디어?
Roberto Andrade


0

LTS 16 PC에 내장 된 LTS 14 장치를위한 설정을 컴파일하는 동안이 문제를 권장했습니다. 이것이 내가 해결 한 방법입니다.

 cd /usr/include/openssl/

 sudo ln -s /usr/include/gnutls/openssl.h .

 sudo ln -s ../x86_64-linux-gnu/openssl/opensslconf.h .
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.