Compile Error - Fedora 26

Thomas Baumgart thb at net-bembel.de
Thu Aug 10 09:38:52 UTC 2017


Hi all,

On Mittwoch, 9. August 2017 17:33:50 CEST Jack wrote:

> By in or out of tree - it is whether the build directory is below the
> top source folder (within the source tree) or parallel to it (outside
> the source tree).

Hmm, sort of. Both of your versions are considered outside of source tree. 
Inside source tree is when you directly compile in $KMMDIR.

> I've never been certain whether it theoretically
> matters, but it does sometimes make a difference, often due to how make
> handles the relative paths in the various Makefiles and related cmake
> files.  I don't know if it will matter, but it might be worth trying.
> Note your example doesn't show where you create the build dir, but it
> can be under $BP but should not under $KMMDIR.

It should not matter. I build the same way as Brendan for years and that 
should not be a problem.

> However - you say you have two examples of failed build where
> kmymoneysettings.h IS present where we expect it.  So the issue is not
> whether that file gets built, it's why cmake isn't finding it when it
> needs it use it.  Looking carefully at the make output you provided, I
> see "Considering target file '//kmymoneysettings.h'."  I'm concerned
> about the leading double slash.  I don't know make well enough to say
> if that is a hint about the problem, but it does smell like it to me.

In fact, it looks like some empty vars here to me. The double slash should not 
be a problem, but eseentialy tools now search in the root directory of the 
filesystem and that certainly is not correct.

Looking into the 4.8 branch stuff, I stumbled across the beginning of

  kmymoney/dialogs/settings/CMakeLists.txt

which looks odd and contains those weird names required that Gary is talking 
about. This does not look right to me.

That KMyMoney2_BINARY_DIR should certainly be replaced by something 
referencing CMAKE_CURRENT_BINARY_DIR



> On 2017.08.09 16:53, Brendan Coupe wrote:
> > I have several successful build folders left over from before the
> > upgrade
> > to Fedora 26. They all contain kmymoneysettings.h in {source path)/
> > build/kmymoney/kmymoneysettings.h
> > 
> > The 2 recent failed build folders have the same file in the same
> > folder and
> > they are an exact match.
> > 
> > I download a fresh copy of the source - 4.8 branch - each time I
> > compile. I
> > know that's not the most efficient way but I had problems many years
> > ago so
> > I modified my build script to get a clean copy each time.
> > 
> > I'm not sure what you mean by in tree or out of tree. My build script
> > creates a new date and time stamped folder, downloads the source into
> > it,
> > creates a new folder in the source folder called build and then I run
> > cmake
> > and make in that folder.
> > 
> > Here are the relevant lines from my script:
> > git clone git://anongit.kde.org/kmymoney --branch 4.8  $BP/$KMMDIR
> > cmake $BP/$KMMDIR -DCMAKE_INSTALL_PREFIX=/usr/
> > make -j 8
> > 
> > This all worked fine until I upgrade to Fedora 26 so it seems like
> > it's not
> > s KMM issue but something has changed in Fedora 26. It's a problem on
> > both
> > my desktop and laptop. I have one other system that I have not
> > upgraded
> > that I may be be able to test it on but we just moved and I have not
> > set
> > that system up yet so I'm not sure when I will get to it.
> > 
> > 
> > 
> > 
> > *----Brendan Coupe*
> > 
> > On Tue, Aug 8, 2017 at 10:51 AM, Jack
> > <ostroffjh at users.sourceforge.net>
> > 
> > wrote:
> > > On 2017.08.07 19:31, Brendan Coupe wrote:
> > >> I already tried the libalkimia trick and it did not work this time.
> > > 
> > > That would only work if it was an alkimia file which was missing,
> > 
> > and it
> > 
> > > was missing because your alkimia install was broken.
> > > 
> > >> I was running with -j 8. I tried -j 1 and it took a lot longer to
> > 
> > fail. I
> > 
> > >> added -d to -j 1 and it also failed. I've copied the last part of
> > 
> > the
> > 
> > >> output below (I switched GMail to plain text mode, I hope it
> > 
> > works).
> > 
> > > Mail formatting is good - thanks.
> > > 
> > >> ======================================
> > >> Updating goal targets....
> > >> Considering target file
> > >> 'kmymoney/dialogs/settings/CMakeFiles/settings_autogen.dir/build'.
> > >> 
> > >>  File
> > 
> > 'kmymoney/dialogs/settings/CMakeFiles/settings_autogen.dir/build'
> > 
> > >> does not exist.
> > > 
> > > [snip....]
> > > 
> > >>       Must remake target '//kmymoneysettings.h'.
> > > 
> > > I probably snipped too many lines, but the problem is it can't find
> > > kmymoneysettings.h.  That file is not in the source, but gets
> > 
> > created in
> > 
> > > $build_dir/kmymoney.  So we need to figure out why it isn't being
> > 
> > made.
> > 
> > > First - what sources are you using?  If you are pulling from git
> > 
> > head of
> > 
> > > the 4.8 branch, confirm that "git status" doesn't show anything
> > 
> > amiss.
> > 
> > > Second - are you building in tree, or out of tree.  The latter is
> > > recommended as safer.
> > > 
> > > If that's not enough, we may have to track down where in the build
> > 
> > process
> > 
> > > that file SHOULD be created, and why it's not happening.
> > > 
> > > Jack
> > > 
> > >> On Mon, Aug 7, 2017 at 10:57 AM, Jack
> > 
> > <ostroffjh at users.sourceforge.net>
> > 
> > >> wrote:
> > >> > Hello Brendan,
> > >> > 
> > >> > On 2017.08.07 12:28, Brendan Coupe wrote:
> > >> >> I have been compiling KMM from source for many years. I have
> > 
> > been using
> > 
> > >> >> the 4.8 branch recently.
> > >> >> 
> > >> >> I upgraded from Fedora 25 to Fedora 26 a couple of weeks ago.
> > 
> > Compiling
> > 
> > >> >> fails pretty early in the process. See the last part of the
> > 
> > output
> > 
> > >> below. It
> > >> 
> > >> >> compiled from source without any issues prior to the OS upgrade.
> > >> >> 
> > >> >> Any idea what is going wrong?
> > >> >> 
> > >> >> =======================================================
> > >> >> *Generating MOC source EWIEGA46WW/moc_lendborrowwizar
> > >> 
> > >> dpage.cppGenerating
> > >> 
> > >> >> MOC source
> > 
> > JKU67JSAFJ/moc_KDChartTernaryPointDiagram.cppGenerating MOC
> > 
> > >> >> source EWIEGA46WW/moc_loanamountwizardpage.cppGenerating MOC
> > >> 
> > >> compilation
> > >> 
> > >> >> mocs_compilation.cpp[  6%] Built target
> > 
> > kmm_kdchart_autogenGenerating
> > 
> > >> MOC
> > >> 
> > >> >> source EWIEGA46WW/moc_loanattributeswizardpage.cppGenerating MOC
> > >> 
> > >> source
> > >> 
> > >> >> EWIEGA46WW/moc_namewizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_newcalculateloanwizardpage.cppGenerating MOC
> > 
> > source
> > 
> > >> >> EWIEGA46WW/moc_newgeneralinfowizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_newintrowizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_newpaymentswizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_paymenteditwizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_paymentfrequencywizardpage.cppGenerating MOC
> > 
> > source
> > 
> > >> >> EWIEGA46WW/moc_paymentwizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_previouspaymentswizardpage.cppGenerating MOC
> > 
> > source
> > 
> > >> >> EWIEGA46WW/moc_recordpaymentwizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_schedulewizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_summaryeditwizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_summarywizardpage.cppGenerating MOC source
> > >> >> EWIEGA46WW/moc_variableinterestdatewizardpage.cppGenerating MOC
> > >> >> compilation
> > >> >> mocs_compilation.cpp[  6%] Built target
> > 
> > newloanwizard_autogenmake: ***
> > 
> > >> >> [Makefile:163: all] Error 2*
> > >> >> **=======================================================
> > >> > 
> > >> > First please consider sending plain text and not HTML to the
> > 
> > list - you
> > 
> > >> can
> > >> 
> > >> > see it messes up wrapping.
> > >> > 
> > >> > This seems similar to a problem you had last October.   Have you
> > 
> > tried
> > 
> > >> "make
> > >> 
> > >> > -d" (or some slightly less verbose variant) to get debugging
> > 
> > info?
> > 
> > >> What -j
> > >> 
> > >> > value are you using?  I believe at that time, make (or gcc?)
> > 
> > couldn't
> > 
> > >> find
> > >> 
> > >> > some header file, which you fixed by removing and reinstalling
> > >> 
> > >> libalkimia.
> > >> 
> > >> > Jack

-- 

Regards

Thomas Baumgart

https://www.telegram.org/       Telegram, the better WhatsApp
-------------------------------------------------------------
Contrary to popular belief, Unix is user friendly. It just happens to
be very selective about who it decides to make friends with. -- unknown
-------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 846 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kmymoney-devel/attachments/20170810/51633cb4/attachment-0001.sig>


More information about the KMyMoney-devel mailing list