Created attachment 1068107 [details] build log from scratch build with --target f24-boost See https://koji.fedoraproject.org/koji/taskinfo?taskID=10861434 (log attached) /usr/include/boost/system/error_code.hpp:221: undefined reference to `boost::system::generic_category()' /usr/include/boost/system/error_code.hpp:222: undefined reference to `boost::system::generic_category()' /usr/include/boost/system/error_code.hpp:223: undefined reference to `boost::system::system_category()' It works if I add LIBS=-boost_system to %configure in the spec file, but I don't know if everything needs to link to libboost_system or just some files (the error comes from something in src/plugins)
> It works if I add LIBS=-boost_system to %configure in the spec file Sorry, that should be LIBS=-lboost_system
The only component of C::B that uses boost is the NassiShneiderman-plugin. So proper fix would be to add it in NassiShneiderman's Makefile.am. But this would force another patch for Fedora. I will look into it and see if I can fix it upstream. So it will not slip into next release (hopefully coming this year). Jens
By the way: I just build the actual trunk in copr without problems: https://copr.fedoraproject.org/coprs/jenslody/codeblocks/build/111911/ Jens
(In reply to Jens Lody from comment #3) > By the way: I just build the actual trunk in copr without problems: > https://copr.fedoraproject.org/coprs/jenslody/codeblocks/build/111911/ This used boost-devel-1.58.0-9.fc24.x86_64 It fails with boost-1.59.0, if you do: fedpkg scratch-build --target f24-boost
Adding "-DBOOST_SYSTEM_NO_DEPRECATED" to the AM_CPPFLAGS in "src/plugins/contrib/NassiShneiderman/Makefile.am" fixes the error. It should also work if it is set globally in the spec-file as additional cxxflag. No other parts of Code::Blocks use boost, so it should not have any negative effect, and it is the easiest way to fix the build for Fedora. Anyway: I will commit it upstream, if it does not break anything in other builds. Note: I could not test C::B, just building works fine. Jens
I committed a fix for this. I a also tested it Setting the define in the spec-file also works and should be the easiest solution for Fedora until the new codeblocks release is comming.
Boost 1.59 is now in rawhide, so codeblocks needs to be rebuilt. It seems that an alternative fix for the linker error is to add this before the %configure command: export CPPFLAGS=-DBOOST_ERROR_CODE_HEADER_ONLY
thanks guys, will submit a new build ASAP
(In reply to Jens Lody from comment #6) > Setting the define in the spec-file also works and should be the easiest > solution for Fedora until the new codeblocks release is comming. (In reply to Jonathan Wakely from comment #7) > Boost 1.59 is now in rawhide, so codeblocks needs to be rebuilt. > > It seems that an alternative fix for the linker error is to add this before > the %configure command: > > export CPPFLAGS=-DBOOST_ERROR_CODE_HEADER_ONLY That is exactly what I did to test it without the need to patch Makefile.am's . Sorry, that I did not post the exact fix.