Próbuję zbudować parser znort987 i wykonałem sudo apt-get libssl-dev. Widzę wszystkie rodzaje plików nagłówkowych związanych z ssl w / usr / include / openssl, ale w folderze openssl brakuje pliku opensslconf.h, a polecenie make wywołuje błąd:
make: *** No rule to make target `/usr/include/openssl/opensslconf.h', needed by `.objs/rmd160.o'. Stop.
Używam Ubuntu 14.04 na 32-bitowym laptopie AMD.
Aktualizacja: Wykonałem następujące czynności, aby wyczyścić moją instalację:
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
Teraz dostaję:
/usr/include/openssl/e_os2.h:56:33: fatal error: openssl/opensslconf.h: No such file or directory
sudo dpkg --add-architecture i386
Wydaje się, że te rzeczy wydarzyły się dawno temu (a konkretnie 2013-05-20 16:56:06 UTC). Natknąłem się na dziwny problem, który wyglądał bardzo podobnie do OP, ale okazało się, że był to problem polegający na tym, że Swig nie dołączał odpowiedniego zestawu dołączeń podczas kompilacji. Skończyło się na przeszukiwaniu źródła, aby upewnić się, że nie jest to problem z pakietem ubuntu, ale nie wydaje się, aby był to problem z ubuntu.
Przyglądając się temu dokładniej, pakiet openssl przeniósł opensslconf.h do struktury katalogów obsługującej wiele plików. Oto szczegółowy zatwierdzenie: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/openssl/utopic-updates/revision/11.1.42 i jeśli chcesz zobaczyć, jak wymyśliłem tę wersję, ja śledził opatrzone adnotacjami wersje reguł Debiana, co było zaskakująco skutecznym sposobem, aby dowiedzieć się, co się stało: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/utopic/openssl/utopic-updates/annotate/head:/ debian / rules .
A autor, Kurt Roeckx, pisze w Dzienniku zmian:
Szczerze mówiąc, chciałbym, aby plik opensslconf.h był przynajmniej symlinkowany do folderu / usr / include / openssl z resztą logicznie powiązanych nagłówków. Ale to nie jest błąd, to tylko moja opinia. Dla ludzi, którzy napotykają ten problem, tak jak ja, wystarczy trochę wąchania brakujących elementów, aby utrzymać brzęczenie.
A do OP jest już znacznie później, ale właśnie podałem dokładny zestaw kroków na urządzeniu 14.04 LTS x64 i nie napotkałem problemu, który miałeś. Być może problem został po prostu rozwiązany z czasem. Mam nadzieję że część tego okaże się pomocna.
źródło
Wygląda na to, że paczka jest uszkodzona.
<openssl/opensslconf.h>
jest tworzony przezConfigure
polecenie OpenSSL . Powinien być dołączony do plików dystrybucyjnych. Najwcześniejszą wzmianką, jaką mogłem znaleźć, był CHANGELOG OpenSSL w wersji 0.9.2 .Zgłoś raport o błędzie na https://bugs.launchpad.net/ubuntu/+filebug/?no-redirect .
źródło
Wygląda na to, że jest to problem w systemach 32-bitowych i 64-bitowych. Wyczyściłem wszystko, sam pobrałem i zbudowałem openssl i postępowałem zgodnie z instrukcjami dotyczącymi budowania parsera. Podczas fazy lnk pominął „niekompatybilny libcrypto”, a następnie nie powiódł się.
Zakładam więc, że wymagane biblioteki są dostępne tylko dla systemów 64-bitowych i są pomijane podczas instalacji libssl-dev na systemach 32-bitowych. Przydałby się wyraźniejszy komunikat o błędzie.
źródło
opensslconf.h
błąd, który nie został znaleziony. zainstalowanylibssl-dev
(czy jest to wersja 32-bitowa?) i wszystko oprócz mojego programu nie kompiluje się z powodu brakującego pliku. Jakieś pomysły?Poruszał się z powodu wielu łuków. Na amd64 znajduje się w /usr/include/x86_64-linux-gnu/openssl/opensslconf.h
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733644
źródło
Problem ten napotkałem podczas kompilacji instalacji dla wbudowanego urządzenia LTS 14 na komputerze LTS 16 PC. Oto jak to rozwiązałem:
źródło