Compile Error - Fedora 26

Jack ostroffjh at users.sourceforge.net
Wed Aug 9 21:33:50 UTC 2017


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).  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.

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.

What versions of cmake, make, and autogen do you have?  I've got make  
4.2.1, cmake  3.7.2, autogen 5.18.4, and automake 1.11.6, 1.13.4 and  
1.15.

Jack

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


More information about the KMyMoney-devel mailing list