> On Mar 12, 2020, at 12:11 PM, Jean Laroche <rip...@gmail.com> wrote:
> 
> Not having luck building master.
> I followed John's instructions.
> - I have no libgnc or libgnucash in $PREFIX/lib
> - I created the xcode project using cmake -G Xcode -D 
> CMAKE_INSTALL_PREFIX=$PREFIX -D GTEST_ROOT=$SRCROOT/googletest 
> $SRCROOT/gnucash-git
> 
> But the build fails with this error:
> 
> Ld 
> /Users/jlaroche/gnucash-stable/build_xcode_master/lib/libgnc-core-utils.dylib 
> normal x86_64
>    cd /Users/jlaroche/gnucash-stable/src/gnucash-git
>    export MACOSX_DEPLOYMENT_TARGET=10.13
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
>  -arch x86_64 -dynamiclib -isysroot 
> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk
>  -L/Users/jlaroche/gnucash-stable/build_xcode_master/lib 
> -F/Users/jlaroche/gnucash-stable/build_xcode_master/lib -filelist 
> /Users/jlaroche/gnucash-stable/build_xcode_master/libgnucash/core-utils/gnucash.build/Debug/gnc-core-utils.build/Objects-normal/x86_64/gnc-core-utils.LinkFileList
>  -install_name @rpath/libgnc-core-utils.dylib -mmacosx-version-min=10.13 
> -Xlinker -object_path_lto -Xlinker 
> /Users/jlaroche/gnucash-stable/build_xcode_master/libgnucash/core-utils/gnucash.build/Debug/gnc-core-utils.build/Objects-normal/x86_64/gnc-core-utils_lto.o
>  -Xlinker -no_deduplicate -fobjc-link-runtime -dynamiclib 
> -Wl,-headerpad_max_install_names 
> /Users/jlaroche/gnucash-stable/lib/libboost_date_time.dylib 
> /Users/jlaroche/gnucash-stable/lib/libboost_regex.dylib /Users/jlaro
 che/gnucash-stable/lib/libboost_locale.dylib 
/Users/jlaroche/gnucash-stable/lib/libboost_filesystem.dylib 
/Users/jlaroche/gnucash-stable/lib/libboost_system.dylib 
-L/Users/jlaroche/gnucash-stable/lib -lintl -lglib-2.0 
-L/Users/jlaroche/gnucash-stable/lib -lgobject-2.0 -lintl -lglib-2.0 
-L/Users/jlaroche/gnucash-stable/lib -lgtkmacintegration-gtk3 -lgtk-3 -lgdk-3 
-lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo 
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lintl -lglib-2.0 -lobjc -framework 
Cocoa -framework Security -framework Carbon -lgtkmacintegration-gtk3 -lgtk-3 
-lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject 
-lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lobjc -framework Cocoa -framework Security 
-framework Carbon -Xlinker -dependency_info -Xlinker 
/Users/jlaroche/gnucash-stable/build_xcode_master/libgnucash/core-utils/gnucash.build/Debug/gnc-core-utils.build/Objects-normal/x86_64/gnc-core-utils_dependency_info.dat
 -o /Users/jlaroche/gnucash-s
 table/build_xcode_master/lib/libgnc-core-utils.dylib
> 
> Undefined symbols for architecture x86_64:
>  "boost::system::detail::system_category_instance", referenced from:
>      boost::system::system_category() in gnc-filepath-utils.o
>  "boost::system::detail::generic_category_instance", referenced from:
>      boost::system::generic_category() in gnc-filepath-utils.o
> ld: symbol(s) not found for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> 
> Does this ring a bell for anyone?
> Jean

It's $PREFIX/lib/gnucash/, not $PREFIX/lib/libgnucash*, but that's not your 
problem.

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.

Regards,
John Ralls




_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to