How to Find Why Port "X" Is Installed?

Michael Powell nightrecon at hotmail.com
Thu Feb 27 17:14:24 UTC 2014


Drew Tomlinson wrote:

> On 2/27/2014 7:20 AM, Tijl Coosemans wrote:
>> On Thu, 27 Feb 2014 07:06:46 -0800 Drew Tomlinson wrote:
>>> I'm using FBSD 10 and trying to work through the things I broke after
>>> running 'make delete-old-libs' as suggested in the handbook. Ultimately
>>> I just rebuilt all ports with 'portupgrade -f "*" '. Unfortunately, I
>>> had an issue with databases/db42 and then other issues because it
>>> failed.
>>>
>>> I tried running it again and saw messages about it being deprecated.
>>> Then it failed with this line:
>>>
>>> /usr/bin/ld: .libs/cxx_db.o: relocation R_X86_64_32S against `_ZTV2Db'
>>> can not be used when making a shared object; recompile with -fPIC
>>> .libs/cxx_db.o: could not read symbols: Bad value
>>> c++: error: linker command failed with exit code 1 (use -v to see
>>> invocation)
>>> *** [libdb_cxx-4.2.la] Error code 1

You may find /usr/ports/UPDATING entry 20131217: interesting. I think the 
plan here is to have a period of semi-deprecation of some months then at 
some point the 4.1/4.2 ports will cease to exist.

Since 10 is the point where Clang is now the default, as well as some other 
changes (unbind) I decided to do a fresh install from scratch so everything 
would be clean with no cruft left over from pre 10 days. I had hoped that the 
db41/db42 situation would just take care of itself automagically with the 
fresh 10 install, but it did not.


In /usr/src/Makefile:
[...]
#  9.  `make delete-old'
# 10.  `reboot'
# 11.  `make delete-old-libs' (in case no 3rd party program uses them 
anymore)


You should rebuild all ports *first* - prior to doing the 'make delete-old-
libs' after a source based upgrade between major versions (9.x -> so.x)

-Mike




More information about the freebsd-questions mailing list