Trädvy Permalänk
Medlem
Plats
Värmland
Registrerad
Aug 2003

libarchive.so.12

Hej!

Jag har problem att få igång ett program..

error while loading shared libraries: libarchive.so.12: cannot open shared object file: No such file or directory

Och kör jag en ldd så får jag fram att libarchive.so.12 mycket väl saknas, men jag kan inte för min vildaste fantasi komma på hur f'n jag får programet att hitta libarchiven..

~ $ ldd /usr/bin/sjörövarspelare linux-vdso.so.1 => (0x00007fff4c1fe000) libarchive.so.12 => not found librtmp.so.0 => /usr/lib/x86_64-linux-gnu/librtmp.so.0 (0x00007ff045818000) libtidy-0.99.so.0 => /usr/lib/libtidy-0.99.so.0 (0x00007ff0455a8000) libQtDeclarative.so.4 => /usr/lib/x86_64-linux-gnu/libQtDeclarative.so.4 (0x00007ff044ffe000) libQtGui.so.4 => /usr/lib/x86_64-linux-gnu/libQtGui.so.4 (0x00007ff04434b000) libQtNetwork.so.4 => /usr/lib/x86_64-linux-gnu/libQtNetwork.so.4 (0x00007ff044002000) libQtCore.so.4 => /usr/lib/x86_64-linux-gnu/libQtCore.so.4 (0x00007ff043b1d000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007ff043819000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ff043602000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff04323d000) libgnutls.so.26 => /usr/lib/x86_64-linux-gnu/libgnutls.so.26 (0x00007ff042f7f000) libgcrypt.so.11 => /lib/x86_64-linux-gnu/libgcrypt.so.11 (0x00007ff042cfe000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007ff042ae5000) libQtScript.so.4 => /usr/lib/x86_64-linux-gnu/libQtScript.so.4 (0x00007ff04263e000) libQtSql.so.4 => /usr/lib/x86_64-linux-gnu/libQtSql.so.4 (0x00007ff0423fe000) libQtXmlPatterns.so.4 => /usr/lib/x86_64-linux-gnu/libQtXmlPatterns.so.4 (0x00007ff041dc4000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ff041abe000) libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007ff041881000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff041663000) libaudio.so.2 => /usr/lib/x86_64-linux-gnu/libaudio.so.2 (0x00007ff04144b000) libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007ff041142000) libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007ff040f1c000) libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007ff040c79000) libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007ff040a27000) libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007ff04081f000) libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007ff040603000) libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007ff0403f2000) libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007ff0401e8000) libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007ff03ffd6000) libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007ff03fca0000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff03fa9c000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ff03f893000) /lib64/ld-linux-x86-64.so.2 (0x00007ff045a55000) libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007ff03f67f000) libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007ff03f43c000) libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007ff03f237000) libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007ff03f00d000) libXt.so.6 => /usr/lib/x86_64-linux-gnu/libXt.so.6 (0x00007ff03eda6000) libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007ff03eba2000) libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007ff03e964000) libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007ff03e75b000) libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007ff03e556000) libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007ff03e336000) libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007ff03e130000)

Använder mig av en nyinstallerade Linux Mint 17.1 amd64..

Fick programmet att fungera i Ubuntu 14.04, men jag minns inte hur :/

Linux: because a PC is a terrible thing to waste.

Trädvy Permalänk
Medlem
Registrerad
Maj 2003

Jag gissar att du har två problem. Det är dels ett 32-bitars program som explicit försöker använda sig av 32-bitars versionen av libarchive, och du har enbart 64-bitars-versionen installerad. Och problem nummer två är att programmet explicit försöker använda sig av version 12 av libarchive, medan Linux Mint 17 har libarchive13.

Testa att installera 32-bitsversionen av libarchive13, och sedan länka den till libarchive12. Förhoppningsvis är den bakåtkompatibel.
Exempelvis:
sudo apt-get install libarchive13:i386
sudo ln -s /usr/lib/i386-linux-gnu/libarchive.so.13 /usr/lib/i386-linux-gnu/libarchive.so.12

Kanske att även paketet lsb-core behövs också, då det underlättar för vissa 32-bits program som ogillar 64-bits miljöer. (Inte lsb-core:i386)

Trädvy Permalänk
Medlem
Plats
Värmland
Registrerad
Aug 2003

Mmhm, okey, testade att ta hem källkoden med git och kompilerade och då startade det, istället för att köra med färdiga .dep-filer.. men tack ändå

Linux: because a PC is a terrible thing to waste.

Trädvy Permalänk
Medlem
Plats
Linköping
Registrerad
Sep 2008

Jag hade liknande problem. ldd på binären gav också "not found" för libarchive.so.12.

Binären hittade inte den version av libarchive den letade efter:

$ pwd /usr/lib/x86_64-linux-gnu $ ll libarchive.* -rw-r--r-- 1 root root 1177656 jul 13 21:08 libarchive.a lrwxrwxrwx 1 root root 20 jul 13 21:07 libarchive.so -> libarchive.so.13.1.2 lrwxrwxrwx 1 root root 20 jul 13 21:07 libarchive.so.13 -> libarchive.so.13.1.2 -rw-r--r-- 1 root root 656336 jul 13 21:08 libarchive.so.13.1.2

Pekar på den version (senare) jag har installerad:

sudo ln -s libarchive.so.13.1.2 libarchive.so.12

...så att...:

$ ll libarchive.* -rw-r--r-- 1 root root 1177656 jul 13 21:08 libarchive.a lrwxrwxrwx 1 root root 20 jul 13 21:07 libarchive.so -> libarchive.so.13.1.2 lrwxrwxrwx 1 root root 20 jul 19 18:54 libarchive.so.12 -> libarchive.so.13.1.2 lrwxrwxrwx 1 root root 20 jul 13 21:07 libarchive.so.13 -> libarchive.so.13.1.2 -rw-r--r-- 1 root root 656336 jul 13 21:08 libarchive.so.13.1.2

...och därefter hoppar binären igång som den ska.

Trädvy Permalänk
Medlem
Plats
Linköping
Registrerad
Mar 2008

Anledningen till att .so filer ibland byter namn med nya version är för att versionerna inte är kompatibla med varandra. Om man länkar en icke kompatibel version så att det ser ut som den är kompatibel så kan programmet ibland starta och se ut att fungera men kommer krascha eller bete sig skumt när det använder det icke kompatibla biblioteket. Installera rätt version av biblioteket i stället för att länka.