Me ya sa umarnin openssl ke aiki amma ginin VPN ya kasa
Binari na openssl da ke aiki ba ya faɗin komai game da kai da ɗakunan karatu na haɗi. Duba fakitin haɓakawa, gine-ginen manufa da tarihin ganowa na ginin.
Tashar terminal ɗin tana ba da rahoton sigar OpenSSL cikin jin daɗi, kuma bishiyar tushen lambar har yanzu tana kasawa da saƙo game da kai na crypto da suka ɓace. Duk maganganun biyu gaskiya ne a lokaci ɗaya, domin ana aika kayan aikin lokacin aiki da saitin shigarwar gini daban. Yi waɗannan dubawa huɗu a jere: fakitin da aka shigar, fitarwar ganowa, hanyoyin bincike, sannan ko tushen da kansa ya dace. Tsaya a farkon wanda ke bayanin gazawar maimakon liƙa tsohon jerin dogaro.
Lokacin aiki da shigarwar gini fakiti ne daban-daban
Rarraba yana raba OpenSSL zuwa fakitin lokacin aiki wanda ke ba da ɗakin karatu da aka raba da kayan aikin layin umarni, da fakitin haɓakawa wanda ke ba da kai, sunayen haɗi marasa siga da bayanan pkg-config. Shigar da na farko bai shigar da na biyu ba, kuma mai tarawa yana buƙatar na biyu kawai.
Duba abin da ke nan da gaske maimakon abin da ka tuna ka shigar. A tsarin da suka samo asali daga Debian fakitin haɓakawa yawanci libssl-dev ne, yayin da lokacin aiki fakitin ɗakin karatu mai siga ne tare da binari openssl.
dpkg -l | grep -E 'libssl-dev|libssl3|openssl' pkg-config --modversion openssl openssl version
Umarni na farko yana nuna wanne daga cikin ukun aka shigar, na biyu yana ba da rahoton sigar da tsarin gini zai gano ta pkg-config, kuma na uku yana ba da rahoton sigar lokacin aiki. Layin da ya ɓace a fitarwar farko yana bayanin kuskuren nan take. Bambancin siga tsakanin na biyu da na uku wata matsala ce daban, kuma yawanci yana nufin shigarwa biyu suna fafatawa.
Karanta fitarwar ganowa ta ginin kanta
Yawancin gazawa ana iya gani a tarihin daidaitawa idan ka karanta shi kafin taƙaitawa. Modul ɗin FindOpenSSL na CMake yana ba da rahoton wace directory ta include da waɗanne ɗakunan karatu ya samu, kuma yana kasawa da takamaiman saƙo lokacin da ɓangaren da ake buƙata ba ya nan.
Tabbatar da wace sigar modul ɗin aikin ke amfani da ita, domin kwafin da aka haɗa a cikin bishiyar tushen lambar na iya yin daban da wanda aka aika tare da CMake da aka shigar. Sannan karanta jerin ɓangarori: aikin da ke neman Crypto kawai baya buƙatar ɗakin karatu na SSL, kuma wanda ke neman SSL zai kasa idan wani ɓangare na fakitin haɓakawa ne kawai yake nan.
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release grep -i -E 'openssl|ssl' build/CMakeCache.txt
Umarni na farko yana sake daidaitawa daga farko, kuma na biyu yana nuna sakamakon da aka ajiye a cache, gami da duk wani babban directory ko hanyar ɗakin karatu da modul ɗin ya tsaya akansa. Idan cache ɗin yana nuni ga tsohon prefix na wani ƙoƙari da ya gabata, share directory ɗin gini ka sake daidaitawa maimakon gyara ƙima da hannu. Tsofaffin shigarwar cache sanannen dalili ne na gazawar da ke wucewa bayan gyara daidai.
Juya ginin zuwa madaidaicin shigarwa, a taƙaice
Lokacin da OpenSSL da aka amince ya rayu a wajen hanyar bincike ta asali, FindOpenSSL yana rubuta OPENSSL_ROOT_DIR a matsayin alama ga wannan ginin musamman. A tsarin da suka yi kama da Unix yana kuma tuntuɓar pkg-config, don haka PKG_CONFIG_PATH da ya dace zai iya taimakawa ba tare da canza komai a duniya ba.
cmake -S . -B build -DOPENSSL_ROOT_DIR=/opt/openssl-3.2 -DCMAKE_BUILD_TYPE=Release ldd build/vpn_client | grep -i ssl
Umarni na farko yana iyakance alamar ga directory ɗin gini ɗaya, kuma na biyu yana nuna wace ɗakin karatu da aka raba binari da aka samu zai loda a lokacin aiki. Ginin da ya haɗa da prefix ɗin da aka yi niyya da binari da ke loda wani daban matsalar hanyar lokacin aiki ce, ba matsalar ganowa ba, kuma tana buƙatar shawarar rpath ko daidaitawar loda maimakon wata alamar daidaitawa.
Riƙe waɗannan zaɓuɓɓuka a cikin ginin. Maye gurbin ɗakunan karatu na tsarin ko gyara fayilolin pkg-config na duniya don gamsar da aiki ɗaya shine hanyar da tebur mai aiki ke zama karyayye. Directory ɗin gini da ke rubuta prefix ɗin ana iya sake haifarwa; canji a duk na'urar lamarin tallafi ne da ke jiran aiki na gaba. Share directory ɗin gini lokacin da ka canza alamar, don cache ɗin ba zai iya riƙe tsohuwar amsa ba.
Ka san lokacin da tushen shine matsalar
Matakin daidaitawa mai nasara yana tabbatar da cewa an kammala dubawa kawai. Haɗawa na iya har yanzu ƙin API da tushen ke tsammani, kuma haɗin kai na iya har yanzu kasawa kan alama da ta ɓace. Ajiye takamaiman kuskure na farko daga kowane mataki, domin na baya yawanci sakamako ne.
OpenSSL 3 ya ayyana wasu mu'amaloli a matsayin tsofaffi kuma ya cire su, waɗanda tsofaffin abokan cinikin VPN ke amfani da su kai tsaye, don haka bishiyar tushen lambar daga wannan zamanin na iya buƙatar canje-canje na gaske maimakon sabuwar hanyar include. Idan masu kula suna goyon bayan siga ta yanzu, yi amfani da ita. Idan ba haka ba, shawarar ta wanda ya mallaki sabis ɗin ne, ba ta neman tsohon sunan fayil ɗin ɗakin karatu ba.
Ɓangarorin tebur na zaɓi ma suna da buƙatunsu. Makasudin layin umarni da ke daidaitawa da tsafta ba ya faɗin komai game da ko kayan aikin GUI da edita za su ginu, don haka ɗauki tsohon jerin fakitin Qt a matsayin tarihi ba ƙayyadaddun bayani ba. Duba zaɓuɓɓukan bita na tushen lambar don waɗanne mu'amaloli aka kunna ta asali. Sannan gina abin da kake buƙata kawai, domin kowace dogaro ta zaɓi wata matsalar ganowa ce da ke jiran faruwa.