boost upgrade from 1.70.0_0 to 1.71.0_0 does not trigger ledger rebuilt
Kastus Shchuka
macports at tprfct.net
Mon Sep 2 03:38:11 UTC 2019
I ran “port upgrade outdated” today and it installed a new version of boost:
---> Computing dependencies for boost
---> Fetching archive for boost
---> Attempting to fetch boost-1.71.0_0+no_single+no_static+python27.darwin_17.x86_64.tbz2 from https://packages.macports.org/boost
---> Attempting to fetch boost-1.71.0_0+no_single+no_static+python27.darwin_17.x86_64.tbz2.rmd160 from https://packages.macports.org/boost
---> Installing boost @1.71.0_0+no_single+no_static+python27
---> Cleaning boost
---> Computing dependencies for boost
---> Deactivating boost @1.70.0_0+no_single+no_static+python27
---> Cleaning boost
---> Activating boost @1.71.0_0+no_single+no_static+python27
---> Cleaning boost
After that ledger fails to start:
$ /opt/local/bin/ledger -f ledger/journal
dyld: lazy symbol binding failed: Symbol not found: __ZN5boost16re_detail_10700027cpp_regex_traits_char_layerIcE4initEv
Referenced from: /opt/local/lib/libledger.3.dylib
Expected in: /opt/local/lib/libboost_regex-mt.dylib
dyld: Symbol not found: __ZN5boost16re_detail_10700027cpp_regex_traits_char_layerIcE4initEv
Referenced from: /opt/local/lib/libledger.3.dylib
Expected in: /opt/local/lib/libboost_regex-mt.dylib
Abort
Ledger is not reported as outdated. Running port rev-upgrade does not find any problems with it either:
$ sudo port upgrade ledger
---> Scanning binaries for linking errors
---> No broken files found.
---> No broken ports found.
$ sudo port rev-upgrade
---> Scanning binaries for linking errors
---> No broken files found.
---> No broken ports found.
If I uninstall and install again ledger, I am getting the same error.
I had to build ledger from source:
$ sudo port install -s ledger
---> Computing dependencies for ledger
---> Fetching distfiles for ledger
---> Attempting to fetch ledger-3.1.3.tar.gz from https://distfiles.macports.org/ledger
---> Verifying checksums for ledger
---> Extracting ledger
---> Configuring ledger
---> Building ledger
---> Staging ledger into destroot
---> Installing ledger @3.1.3_0
---> Activating ledger @3.1.3_0
---> Cleaning ledger
---> Scanning binaries for linking errors
---> No broken files found.
---> No broken ports found.
Now ledger runs properly.
Is it a bug in ledger port file that ledger does not detect upgrade of boost? Should I better report it in trac? Or is there a different way of going through boost upgrade?
Thanks,
Kastus
More information about the macports-users
mailing list