Ticket #17851 (closed update: fixed)
kmymoney 0.9.2 failing to build due dyld: Symbol not found
| Reported by: | dorneles@… | Owned by: | ryandesign@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.7.0 |
| Keywords: | Cc: | macsforever2000@…, macports@… | |
| Port: | kmymoney |
Description
Hello folks,
I'm trying to update kmymoney Portfile to use the latest version (0.9.2) but it's failing with the following error message:
dyld: lazy symbol binding failed: Symbol not found: __ZN11MyMoneyFileC1Ev Referenced from: /opt/local/var/macports/build/_Users_dorneles_ports_kde_kmymoney/work/kmymoney2-0.9.2/kmymoney2/widgets/.libs/libkmymoney.0.0.0.dylib Expected in: flat namespace dyld: Symbol not found: __ZN11MyMoneyFileC1Ev Referenced from: /opt/local/var/macports/build/_Users_dorneles_ports_kde_kmymoney/work/kmymoney2-0.9.2/kmymoney2/widgets/.libs/libkmymoney.0.0.0.dylib Expected in: flat namespace
I contacted kmymoney folks, but they don't have a clue about how to fix the above problem.
For the complete reference, including the Portfile that I'm using and the entire conversation, please check:
http://thread.gmane.org/gmane.comp.kde.kmymoney2.devel/12761
If there's a better place to make this question, please point me to the right place and close this issue.
Thanks in advance! :-)
Attachments
Change History
comment:1 Changed 4 years ago by macsforever2000@…
- Cc macsforever2000@… added
- Port set to kmymoney
- Milestone changed from Port Enhancements to Port Updates
comment:2 Changed 4 years ago by dorneles@…
The Portfile was added, let me know if you need anything else.
There's a second thread on kmymoney's list with some additional info:
http://thread.gmane.org/gmane.comp.kde.kmymoney2.devel/12778
Thanks.
Changed 4 years ago by macports@…
- Attachment Portfile-kmymoney.diff added
Patch to kmymoney portfile for v 0.9.2
comment:3 Changed 4 years ago by macports@…
I've attached a patch to update the Portfile for 0.9.2. It's not the most elegant solution in the world, but it works.
What's going on:
- The version of libtool shipped with kmymoney has a bug and doesn't work correctly on OS X. (Other people have run into this before, see e.g. http://lists.apple.com/archives/darwin-dev/2008/May/msg00112.html). This causes the dylib errors with UIC reported above. This portfile replaces the built in libtool with a symbolic link to the one provided by macports.
- GNU autotools expect a gnu copy of mkdir, and by default does not accept the copy supplied by OS X. This leads to destdir using a shell install script, which seems to have difficulties when directories already exist. I work around this by explicitly telling configure about the OS X mkdir command.
comment:4 Changed 4 years ago by dorneles@…
Great, I can confirm it works now, thanks!
Do do you think guys, is it too much hackish to be checked in? :-)
comment:6 Changed 4 years ago by macsforever2000@…
Version 0.89 is still the latest stable version. I think it best if we add a kmymoney-devel version for this.
comment:9 Changed 4 years ago by anonymous
- Milestone Port Updates deleted
Milestone Port Updates deleted
comment:10 Changed 4 years ago by ryandesign@…
- Owner changed from macports-tickets@… to ryandesign@…
- Status changed from new to assigned
comment:11 Changed 4 years ago by ryandesign@…
- Status changed from assigned to closed
- Resolution set to fixed
I updated kmymoney to 1.0.0 in r55875, using fixes similar to yours for the libtool and mkdir issues. I added libtool as a build dependency, not a library dependency, and I didn't add a dependency on libxmlxx2 because I didn't see it being used. I also did not change CXX to g++-mp-4.3 because it built fine with the default CXX.


Can you attach the portfile you are using to this ticket please?