You are not logged in.

#1 2010-08-02 08:21:12

paldepind
Member
From: Århus, Denmark
Registered: 2010-02-17
Posts: 141

Yaourt problem

When I try to install anything with Yaourt I get this error:

package-query: error while loading shared libraries: libalpm.so.4: cannot open shared object file: No such file or directory

I've tried reinstalling both package-query and yaourt from AUR, but it didn't work.

Offline

#2 2010-08-02 10:41:49

hokasch
Member
Registered: 2007-09-23
Posts: 1,461

Re: Yaourt problem

What versions do you have installed? Works here with fully updated system:

Name           : package-query
Version        : 0.3-2

Name           : yaourt
Version        : 0.9.4.3-1

Name           : pacman
Version        : 3.4.0-2

Offline

#3 2010-08-02 12:01:20

Radioactiveman
Member
From: Germany
Registered: 2010-05-13
Posts: 389

Re: Yaourt problem

Did you just install the two packages again or did you compile them again?

Offline

#4 2010-08-02 13:31:27

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: Yaourt problem

paldepind wrote:

When I try to install anything with Yaourt I get this error:

package-query: error while loading shared libraries: libalpm.so.4: cannot open shared object file: No such file or directory

I've tried reinstalling both package-query and yaourt from AUR, but it didn't work.

Recompile package-query. Don't just reinstall it.

Offline

#5 2010-08-02 15:47:25

Mr.Elendig
#archlinux@freenode channel op
From: The intertubes
Registered: 2004-11-07
Posts: 4,097

Re: Yaourt problem

My quick search came up with alteast 11 threads about this. Please use the search function.


Evil #archlinux@libera.chat channel op and general support dude.
. files on github, Screenshots, Random pics and the rest

Offline

#6 2010-08-02 15:58:59

paldepind
Member
From: Århus, Denmark
Registered: 2010-02-17
Posts: 141

Re: Yaourt problem

falconindy wrote:
paldepind wrote:

When I try to install anything with Yaourt I get this error:

package-query: error while loading shared libraries: libalpm.so.4: cannot open shared object file: No such file or directory

I've tried reinstalling both package-query and yaourt from AUR, but it didn't work.

Recompile package-query. Don't just reinstall it.

Sorry, I didn't express myself correctly. I did recompile it.

falconindy wrote:

What versions do you have installed?

The same as you.

Offline

#7 2010-08-02 16:10:55

hokasch
Member
Registered: 2007-09-23
Posts: 1,461

Re: Yaourt problem

https://bbs.archlinux.org/viewtopic.php … 88#p779488

If that is not helping you, please post the output from
pacman -Qo /usr/lib/libalpm*

nevermind, package-query not build against the new libs should be the problem.

Last edited by hokasch (2010-08-02 16:13:18)

Offline

#8 2010-08-02 16:23:36

paldepind
Member
From: Århus, Denmark
Registered: 2010-02-17
Posts: 141

Re: Yaourt problem

So this is a bug in package-query or what?

Last edited by paldepind (2010-08-02 16:24:12)

Offline

#9 2010-08-02 16:57:41

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: Yaourt problem

paldepind wrote:

Sorry, I didn't express myself correctly. I did recompile it.

Then you reinstalled the old build. Perhaps you reused the old build directory and didn't run make clean? This is a common dynamic library loading error that crops up any time a library (libalpm in this case) gets an so-name bump. If you truly (correctly) recompiled package-query and it linked against a .so that doesn't exist on your system, then it's plausible that you've discovered a serious flaw in gcc which has yet to be discovered/reported.

In short: Please use makepkg in a new build directory to compile and install package-query.

Offline

#10 2010-08-02 18:07:03

paldepind
Member
From: Århus, Denmark
Registered: 2010-02-17
Posts: 141

Re: Yaourt problem

I did what you said and it works now. Thanks!

But I don't understand why there is a problem in just reusing the old build directory.Could you please explain that to me in a noob friendly way?

Offline

#11 2010-08-02 18:25:49

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: Yaourt problem

In short: Makefiles are unintelligent.

Less short: Makefiles employ the use of targets which, speaking in overly generic terms, have an output (a binary) and one or more requirements (source files). It's important to know that any time you run make successfully, the mtime of the Makefile is updated. When you run make, a few checks (among many others) are done:

1) is the mtime of the Makefile newer than all of the requirements?
2) does the output exist?

If the answer to both of these is yes, then you get the output:

make: `target' is up to date.

make also returns 0 here, signaling that everything is cool.

makepkg isn't much smarter. When it runs in the old build directory, make returns 0, even though nothing happened. makepkg only knows that nothing has gone wrong yet, and it continues on its way, packaging up the old files.

Solutions:
1) For the user, invoke makepkg with -c (or `rm -rf src' before building)
2) For the PKGBUILD maintainer, invoke make with -B (unconditionally remaking targets)

Offline

#12 2010-08-02 19:17:19

Mr.Elendig
#archlinux@freenode channel op
From: The intertubes
Registered: 2004-11-07
Posts: 4,097

Re: Yaourt problem

paldepind wrote:

I did what you said and it works now. Thanks!

But I don't understand why there is a problem in just reusing the old build directory.Could you please explain that to me in a noob friendly way?

Another thing: If you don't use -f, and makepkg finds an already built package, it will happily install that instead of rebuilging. (if you use the -i flag)


Evil #archlinux@libera.chat channel op and general support dude.
. files on github, Screenshots, Random pics and the rest

Offline

#13 2010-08-02 20:23:11

paldepind
Member
From: Århus, Denmark
Registered: 2010-02-17
Posts: 141

Re: Yaourt problem

Thanks guys! I understand it know big_smile

Offline

Board footer

Powered by FluxBB