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.


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

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:// --branch 4.8  $BP/$KMMDIR
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 <>

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

Reply via email to