GNU/Linux >> Znalost Linux >  >> Linux

Nelze najít chybu knihovny libcrypto

Přidejte -L /usr/local/ssl/lib/ do příkazového řádku GCC před -lcrypto . Protože vytváříte proti hlavičkám OpenSSL pod /usr/local/ssl , musíte se také propojit se skutečnou knihovnou pod stejnou předponou (i když se zdá, že tam máte nainstalovanou pouze statickou knihovnu, což může nebo nemusí být vaším záměrem; možná budete muset správně přeinstalovat své OpenSSL sestavené ze zdroje).

(upravit) Chcete-li opravit dlopen() a přátelé, které linker nenajde, přidejte -ldl do příkazového řádku GCC. -ldl říká linkeru, aby také odkazoval na libdl.so, což je sdílená knihovna obsahující dlopen() , dlsym() , dlclose() atd.; tyto funkce používá OpenSSL interně a tedy -ldl je nepřímá závislost při použití -lcrypto (na Linuxu). Protože odkazujete na statickou verzi libcrypto, musíte explicitně odkazovat proti všem nepřímým závislostem.

Pokud nejste obeznámeni s propojováním správných knihoven, doporučuji vám použít OpenSSL nainstalované z vašeho správce balíčků operačního systému; může vám to ušetřit nějaké potíže.


To může být relevantní pro lidi, kteří se pokusili vytvořit vlastní openssl ze zdroje a poté jej použít ke kompilaci jiných programů (v mém případě Git)

Během konfigurace openssl přidejte možnost 'shared':

./config shared

Tím se vytvoří požadovaná sdílená knihovna libcrypto.so . Více najdete v souboru INSTALL.

Také, pokud narazíte na tuto chybu během 'make'

"....can not be used when making a shared object

překompilujte pomocí -fPIC

./config shared -fPIC


Linux
  1. Jak opravit chybu konfigurace:nelze najít adresář maker ‚m4‘ [Vyřešeno]

  2. Chyba při načítání sdílených knihoven libcrypto.so.1.1 – OpenSSL [Oprava]

  3. Nelze najít platnou základní adresu URL:Chyba YumRepo [Vyřešeno]

  1. Nelze najít pspell – Opravit chybu konfigurace PHP

  2. Nemůžete najít -lm?

  3. Nemohu najít existující knihovnu

  1. Jak opravit chybu instalace Pythonu při načítání sdílených knihoven:libssl.so.1.0.0? [vyřešeno]

  2. chyba konfigurace phpize:nelze najít zdroje (config.m4)

  3. Zjistěte, zda je knihovna v cestě