CMake build failing under Ubuntu 16.04

Geert Janssens geert.gnucash at kobaltwit.be
Mon Aug 21 11:45:38 EDT 2017


On zondag 20 augustus 2017 16:15:45 CEST Michael Jung wrote:
> Hi all,
> 
> When I tried to build the current Gnucash from the master branch on
> Ubuntu 16.04 using cmake I came across a problem during the
> configuration step:
> 
> I ran cmake with “cmake -G Ninja ../gnucash” and got the following error:
> 
> -- Using guile-2.0.x
> -- Checking for GTEST
> -- Checking for GMOCK
> /usr/bin/xgettext: error while opening
> "../gnucash/import-export/qif-imp/qif-merge-groups.scmgnucash/import-export/
> qif-imp/qif-objects.scm" for reading: No such file or directory
> ERROR: xgettext failed to generate PO template file. Please consult
>         error message above if there is any.
> CMake Error at po/CMakeLists.txt:168 (MESSAGE):
>    Error when creating gnucash.pot: 1
> 
> 
> -- Configuring incomplete, errors occurred!
> 
> 
> I then noticed that the generated file po/POTFILES.in in the source
> directory contained the following line, which is missing a newline:
> gnucash/import-export/qif-imp/qif-merge-groups.scmgnucash/import-export/qif-
> imp/qif-objects.scm
> 
> So there seems to be a problem in the code that generates
> po/POTFILES.in. The following patch seems to resolve the issue, the
> build ran fine afterwards.
> 
> diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
> index 6b7ec7b..69ce8d9 100644
> --- a/po/CMakeLists.txt
> +++ b/po/CMakeLists.txt
> @@ -105,6 +105,7 @@ FUNCTION(MAKE_GNUCASH_POTFILES)
>     # here so it is easier for me to compare to the autotools
>     # generated POTFILES.in
>     STRING(REPLACE ";" "\n" SORT_IN "${FILES}")
> +  STRING(APPEND SORT_IN "\n")
>     FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/POTFILES.in.in "${SORT_IN}")
> 
>     EXECUTE_PROCESS(COMMAND "${PERL_EXECUTABLE}"
> "${CMAKE_SOURCE_DIR}/util/elegant-sort.pl"
> 
> Could you please check if you can bring this fix to master?

I see the same if I try to build on an Ubuntu 16.04 VM.

So I have committed your proposed fix.

Thanks for the heads up and the fix!

Regards,

Geert


More information about the gnucash-devel mailing list