[GNC-dev] Noob: setup and build master
John Ralls
jralls at ceridwen.us
Fri Mar 13 18:58:16 EDT 2020
Jean,
Indeed, I mixed up perl and python syntax. The line should be
module_cmakeargs['boost'] = '-DCMAKE_CXX_FLAGS="' + os.environ['CXXFLAGS'] + ' -std=c++17"'
Note the single quotes around the python arguments and the double quotes setting off the string value passed to -DCMAKE_CXX_FLAGS.
Regards,
John Ralls
> On Mar 13, 2020, at 12:13 PM, Jean Laroche <ripngo at gmail.com> wrote:
>
> John
> Something must be wrong with the syntax you suggested. Since I don't know my jhbuild at all, I don't know how to fix this.
>
>
> Traceback (most recent call last):
> File "/Users/jlaroche/Source/jhbuild/jhbuild/config.py", line 194, in load
> execfile(filename, config)
> File "/Users/jlaroche/.config/jhbuildrc", line 462, in <module>
> execfile(_user_rc)
> File "/Users/jlaroche/.config/jhbuildrc-custom", line 54
> module_cmakeargs["boost"] = "-DCMAKE_CXX_FLAGS=" . os.environ["CXXFLAGS"] . " -std=c++17"
> ^
> SyntaxError: invalid syntax
> jhbuild: could not load config file
>
>
> On 3/13/20 11:49 AM, John Ralls wrote:
>>> On Mar 13, 2020, at 11:20 AM, Jean Laroche <ripngo at gmail.com> wrote:
>>>
>>>> It's because C++17 is set in GnuCash's CMakeLists.txt and boost defaults to building for C++14. I'd forgotten that I'd pushed that to the public master branch. I think the simplest way to rebuild it for you would be to add
>>>> module_cmakeargs['boost'] = '-DCMAKE_CXX_FLAGS=' . os.environ['CXXFLAGS'] . ' -std=c++17'
>>>> to jhbuildrc-custom then run
>>>> jhbuild buildone --force --clean boost
>>>> If that doesn't work on its own try doing the buildone again but stop it and tell it to wipe the directory and start over.
>>>
>>> John, is this going to work with xcode?
>>> Also, will that affect my maint branch (I have two separate build dirs for maint and master)?
>>> Jean
>> Jean,
>> If you mean can you do that in Xcode, no you can't.
>> Boost needs to be built to the highest standard you want to use, so it will still link with maint, which is built to C++11.
>> Regards,
>> John Ralls
More information about the gnucash-devel
mailing list