Herstel de fout ‘Kan gedeeld object niet openen: bestand of map bestaat niet’
De fout ‘Kan gedeeld object niet openen, bestand of map bestaat niet’ heeft vaak invloed op ontwikkelaars die Linux of Windows Subsystem for Linux (WSL) op Windows gebruiken. Deze fout kan uw mogelijkheid om benodigde bibliotheken aan uw project toe te voegen belemmeren, waardoor het essentieel is om het snel op te lossen.
Hoe de fout ‘Kan gedeeld object niet openen, bestand of map bestaat niet’ op te lossen
1. Installeer de ontbrekende bibliotheek
- Bekijk de foutmelding. Deze zal de naam van de ontbrekende bibliotheek specificeren.
- Installeer de bibliotheek door de volgende opdracht uit te voeren:
sudo apt-get install your_library_name
- Wacht tot het installatieproces is voltooid.
Sommige gebruikers hebben succes gehad met sudo apt install –reinstall voor bibliotheken die al geïnstalleerd waren; overweeg om dat ook te proberen.
Als deze fout optreedt tijdens de installatie van Qt, voer dan de volgende opdracht uit om de essentiële afhankelijkheden te installeren:
sudo apt-get -y install build-essential openssl libssl-dev libssl1.0 libgl1-mesa-dev libqt5x11extras5 '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev
2. Voer de opdracht ldconfig uit
- Open uw Terminal en voer in
sudo ldconfig -v
- Wacht tot de opdracht is uitgevoerd.
- Controleer of de fout zich blijft voordoen.
Met deze opdracht wordt de cache van de gedeelde bibliotheek bijgewerkt, waardoor het probleem mogelijk wordt opgelost.
3. Controleer op ontbrekende afhankelijkheden met behulp van de ldd-opdracht
- Typ in de opdrachtregel:
ldd. /name_of_the_package
- Er verschijnt een lijst met modules die het pakket gebruikt.
- Identificeer alle modules die als ‘niet gevonden’ zijn gemarkeerd.
- Gebruik de terminal om de ontbrekende modules te installeren.
Wees voorzichtig, want bepaalde applicaties zijn afhankelijk van een 32-bits architectuur. In dat geval is de installatie van compatibele modules noodzakelijk.
4. Gebruik de stripopdracht
- Voer de volgende opdracht uit in de terminal:
sudo strip --remove-section=.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
- Wacht tot de opdracht voltooid is.
- Controleer of het probleem is opgelost.
Houd er rekening mee dat deze oplossing specifiek van toepassing is op libQt5Core.so.5. Zorg er dus voor dat u de bibliotheeknaam in stap 1 aanpast op basis van uw specifieke fout.
5. Voeg de bibliotheek handmatig toe aan het bibliotheekpad
- Zoek het bibliotheekpad met de opdracht:
sudo find / -name the_name_of_the_file.so
- Voer de volgende opdracht uit om de waarde van uw weer te geven
LD_LIBRARY_PATH
:echo $LD_LIBRARY_PATH
- Als
LD_LIBRARY_PATH
leeg is, stel het in met:LD_LIBRARY_PATH=/usr/local/lib
- Voeg het bibliotheekpad uit stap 1 toe door het volgende uit te voeren:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/my_library/
De fout ‘Kan gedeeld object niet openen, bestand of map bestaat niet’ kan uw ontwikkelingsproces verstoren. Door deze stappen te volgen om de vereiste pakketten te installeren, kunt u dit echter effectief oplossen.
Dit is niet de enige coderingsfout die u kunt tegenkomen. Veel gebruikers hebben ook problemen gemeld zoals PermissionError Errno 13 en OSError Errno 48.
Geef een reactie