Opened 7 years ago

Closed 7 years ago

#37144 closed defect (fixed)

kmymoney: error: field has incomplete type 'MyMoneyTransaction'

Reported by: dmollaaliod@… Owned by: mkae (Marko Käning)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc: pixilla (Bradley Giesbrecht)
Port: kmymoney

Description (last modified by ryandesign (Ryan Schmidt))

I just upgraded ports and did "sudo port selfupdate" and "sudo port upgrade outdated". However kmymoney failed to upgrade. I uninstalled it and tried to instal without success. The first error I noticed in the logfile is a compilation error (complete logfile attached):

:info:build /opt/local/lib/qt3/include/qpair.h:66:8: error: field has incomplete type 'MyMoneyTransaction'
:info:build     T1 first;
:info:build        ^
:info:build ./viewinterface.moc:166:31: note: in instantiation of template class 'QPair<MyMoneyTransaction, MyMoneySplit>' requested here

Attachments (1)

main.log (174.2 KB) - added by dmollaaliod@… 7 years ago.
Log file

Download all attachments as: .zip

Change History (16)

Changed 7 years ago by dmollaaliod@…

Attachment: main.log added

Log file

comment:1 Changed 7 years ago by ryandesign (Ryan Schmidt)

Cc: pixilla@… added
Description: modified (diff)
Owner: changed from macports-tickets@… to mk@…
Summary: kmymoney fails to compile after upgradekmymoney: error: field has incomplete type 'MyMoneyTransaction'

comment:2 Changed 7 years ago by mkae (Marko Käning)

I am sorry to see that kmymoney doesn't build on ML anymore.

Since kmymoney 1.0.5 is not supported anymore I would suggest upgrading to kmymoney4(-devel) in your case!

comment:3 Changed 7 years ago by mkae (Marko Käning)

I just realized that you, of course, used clang to build it.

I wonder what would happen if you would blacklist clang... (Unfortunately I do not have a ML to test this on.)

Are you familiar with setting up your own portfiles and subsequent port building?

comment:4 Changed 7 years ago by mkae (Marko Käning)

This is what I got so far:

Try if including "mymoneytransaction.h" and "mymoneysplit.h" in "viewinterface.h" makes a difference. After all, it complains about forward declarations which means these objects are not really known but the definition is needed.

Regards, Thomas Baumgart

comment:5 in reply to:  4 ; Changed 7 years ago by dmollaaliod@…

I tried to install kmynoney4 instead. It took several hours to install and I didn't see any errors in the installation. However when I tried to run it I got an error from drkonqi (I don't know what that program does): "drkonqi quit unexpectedly".

Replying to mk@…:

This is what I got so far:

Try if including "mymoneytransaction.h" and "mymoneysplit.h" in "viewinterface.h" makes a difference. After all, it complains about forward declarations which means these objects are not really known but the definition is needed.

Regards, Thomas Baumgart

comment:6 in reply to:  5 Changed 7 years ago by dmollaaliod@…

I got the same error when I tried to run kmymoney4-devel (after uninstalling kmymoney4 and installing kmymoney4-devel).

Replying to dmollaaliod@…:

I tried to install kmynoney4 instead. It took several hours to install and I didn't see any errors in the installation. However when I tried to run it I got an error from drkonqi (I don't know what that program does): "drkonqi quit unexpectedly".

Replying to mk@…:

This is what I got so far:

Try if including "mymoneytransaction.h" and "mymoneysplit.h" in "viewinterface.h" makes a difference. After all, it complains about forward declarations which means these objects are not really known but the definition is needed.

Regards, Thomas Baumgart

comment:7 Changed 7 years ago by mkae (Marko Käning)

You need to make sure that dbus is properly launched. (During installation of dbus a few comments were spat out which tell you how to start dbus via 2 launchctl calls.)

comment:8 in reply to:  7 ; Changed 7 years ago by mf2k (Frank Schima)

You can discover what they are again by incanting the following.

port notes dbus

comment:9 in reply to:  8 Changed 7 years ago by dmollaaliod@…

Now it works, thanks! To sum up, I installed kmymoney4, then typed the commands to start dbus.

Replying to macsforever2000@…:

You can discover what they are again by incanting the following.

port notes dbus

comment:10 Changed 7 years ago by mkae (Marko Käning)

OK, but the original problem: the fix for kmymoney 1.0.5 is still to be tested!

comment:11 in reply to:  10 ; Changed 7 years ago by dmollaaliod@…

When I installed kmymoney4 I had to uninstall qt3 and wait for nearly one day to build qt4 and kmymoney4. If I'm going to test whether kmymoney installs, won't I need to uninstall qt4 and kmymoney4? Looks to me it's best to stick to kmymoney4.

Replying to mk@…:

OK, but the original problem: the fix for kmymoney 1.0.5 is still to be tested!

comment:12 in reply to:  11 Changed 7 years ago by pixilla (Bradley Giesbrecht)

Replying to dmollaaliod@…:

When I installed kmymoney4 I had to uninstall qt3 and wait for nearly one day to build qt4 and kmymoney4. If I'm going to test whether kmymoney installs, won't I need to uninstall qt4 and kmymoney4?

You can deactivate a port which keeps the built packages but removes the installed files from the system.

man port
sudo port deactivate kmymoney4 qt4-mac
sudo port activate qt4-mac kmymoney4

comment:13 Changed 7 years ago by mkae (Marko Käning)

Hmm, I think it is not sufficient to deactivate just the two ports. There might be many more dependencies to take into account.

I guess if you are happy with the new KMM version, stick with it for now, since I know it takes ages to build all its dependencies. (Perhaps one can find someone with a faster machine and nerves to test this.)

The ticket should stay open until then.

PS: kmymoney4(-devel) still has some minor glitches. If you stumble over them, please file tickets accordingly. You could install kmymoney4-devel to stay at the tip of development.

comment:14 Changed 7 years ago by mkae (Marko Käning)

Just tried to address this issue on ML by r100274.

comment:15 Changed 7 years ago by mkae (Marko Käning)

Resolution: fixed
Status: newclosed

Adding missing dep for pkgconfig in r100275 solved this issue. (Actually this was failing to build on all three buildbots!)

Note: See TracTickets for help on using tickets.