Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 523296 - sci-mathematics/rstudio-0.98-1028 with dev-libs/boost-1.56.0 - .../work/rstudio-0.98.1028/src/cpp/core/Assert.cpp:40:10: error: 'boost::core::log' has not been declared
Summary: sci-mathematics/rstudio-0.98-1028 with dev-libs/boost-1.56.0 - .../work/rstud...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Mark Wright
URL:
Whiteboard:
Keywords: PATCH
Depends on: 523302
Blocks: boost-1.56
  Show dependency tree
 
Reported: 2014-09-20 13:23 UTC by Mark Wright
Modified: 2014-12-06 12:37 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
rstudio-0.98.1062.ebuild containing find sed to fix the problem (rstudio-0.98.1062.ebuild,4.61 KB, text/plain)
2014-09-20 13:23 UTC, Mark Wright
Details
bump the pandoc patch for rstudio-0.98.1062 (rstudio-0.98.1062-pandoc.patch,1.23 KB, patch)
2014-09-20 13:24 UTC, Mark Wright
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Wright gentoo-dev 2014-09-20 13:23:38 UTC
Created attachment 385180 [details]
rstudio-0.98.1062.ebuild containing find sed to fix the problem

make[2]: Entering directory `/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028_build'
/usr/bin/cmake -E cmake_progress_report /var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028_build/CMakeFiles 
** R
[  0%] Building CXX object src/cpp/core/CMakeFiles/rstudio-core.dir/Assert.cpp.o
** R
cd /var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028_build/src/cpp/core && /usr/bin/x86_64-pc-linux-gnu-g++  -DBOOST_ASIO_DISABLE_KQUEUE -DBOOST_ENABLE_ASSERT_HANDLER -D_FORTIFY_SOURCE=2  -DNDEBUG -O2 -march=native -ggdb -fvar-tracking-assignments -fvar-tracking -pipe  -I/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028/src/cpp/core/include -I/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028_build/src/cpp/core    -Wall -pthread -Wformat -Wformat-security -fstack-protector --param ssp-buffer-size=4 -pie -fPIE -o CMakeFiles/rstudio-core.dir/Assert.cpp.o -c /var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028/src/cpp/core/Assert.cpp
** preparing package for lazy loading
** inst
** preparing package for lazy loading
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined
<built-in>: note: this is the location of the previous definition
** help
** help
*** installing help indices
*** installing help indices
** building package indices
** testing if installed package can be loaded
** building package indices
** testing if installed package can be loaded
/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028/src/cpp/core/Assert.cpp: In function 'void boost::assertion_failed(const char*, const char*, const char*, long int):
/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028/src/cpp/core/Assert.cpp:40:10: error: 'boost::core::log' has not been declared
    core::log::logWarningMessage(msg, location);
          ^
/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028/src/cpp/core/Assert.cpp: In function 'void boost::assertion_failed_msg(const char*, const char*, const char*, const char*, long int)':
/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028/src/cpp/core/Assert.cpp:64:10: error: 'boost::core::log' has not been declared
    core::log::logWarningMessage(message, location);
          ^
make[2]: *** [src/cpp/core/CMakeFiles/rstudio-core.dir/Assert.cpp.o] Error 1
make[2]: Leaving directory `/var/tmp/portage/sci-mathematics/rstudio-0.98.1028/work/rstudio-0.98.1028_build'
make[1]: *** [src/cpp/core/CMakeFiles/rstudio-core.dir/all] Error 2
Comment 1 Mark Wright gentoo-dev 2014-09-20 13:24:40 UTC
Created attachment 385182 [details, diff]
bump the pandoc patch for rstudio-0.98.1062
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2014-09-20 13:32:22 UTC
Comment on attachment 385180 [details]
rstudio-0.98.1062.ebuild containing find sed to fix the problem

--- rstudio-0.98.1028.ebuild    2014-08-27 17:51:02.000000000 +0200
+++ -   2014-09-20 15:32:06.925565405 +0200
@@ -43,7 +43,7 @@
 RDEPEND="
        >=dev-lang/R-2.11.1
        >=dev-libs/boost-1.50
-       dev-libs/mathjax
+       >=dev-libs/mathjax-2.3
        dev-libs/openssl:0
        sys-apps/util-linux
        sys-libs/zlib
@@ -95,7 +95,7 @@

        epatch "${FILESDIR}"/${PN}-0.98.490-prefs.patch \
                "${FILESDIR}"/${PN}-0.98.932-paths.patch \
-               "${FILESDIR}"/${PN}-0.98.932-pandoc.patch \
+               "${FILESDIR}"/${PN}-0.98.1062-pandoc.patch \
                "${FILESDIR}"/${PN}-0.98.490-linker_flags.patch

        # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
@@ -106,12 +106,17 @@
                src/cpp/session/SessionOptions.cpp || die

        # use mathjax from system
-       ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+       ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax-23 || die

        # make sure icons and mime stuff are with prefix
        sed -i \
                -e "s:/usr:${EPREFIX}/usr:g" \
                CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+       # specify that namespace core the is in the global namespace and not
+       # relative to some other namespace (like its ::core not ::boost::core)
+       find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+               -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
 }

 src_configure() {
Comment 3 Mark Wright gentoo-dev 2014-09-20 13:35:59 UTC
Thanks jer, I should have realised an ebuild patch is more useful.

Note 1: The problem was that the C++ core was using core:: everywhere to
refer to the namespace ::core, which fails to compile with boost 1.56.0,
the fix is to change all the core:: namespace specifications to
::core taking into account the need to keep a space character between
< and ::core.  The find sed fix by me.

Note 2: The bumped ebuild requires >=dev-libs/mathjax-2.3 which is not
in  portage.

Note 3: The bumped ebuild produces this warning:

argus rstudio # emerge -av -1 -O sci-mathematics/rstudio

These are the packages that would be merged, in order:

[ebuild     U ~] sci-mathematics/rstudio-0.98.1062::x-portage [0.98.1028::gentoo] 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB

Would you like to merge these packages? [Yes/No] y
>>> Verifying ebuild manifests
>>> Emerging (1 of 1) sci-mathematics/rstudio-0.98.1062::x-portage
>>> Installing (1 of 1) sci-mathematics/rstudio-0.98.1062::x-portage
>>> Jobs: 1 of 1 complete                           Load avg: 1.95, 5.17, 4.31

 * Messages for package sci-mathematics/rstudio-0.98.1028:

 * 
 * Directory symlink(s) may need protection:
 * 
 *      /usr/share/rstudio/resources/mathjax
 * 
 * Searching all installed packages for files installed via above symlink(s)...
 * 
 * The above directory symlink(s) are all safe to remove. Removing them now...
 * 
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.

!!! existing preserved libs:
>>> package: app-emulation/emul-linux-x86-soundlibs-20140508
 *  - /usr/lib32/libgsm.so.1
 *  - /usr/lib32/libgsm.so.1.0.13
 *      used by /usr/lib32/ladspa/gsm_1215.so (media-plugins/swh-plugins-0.4.15-r3)
 *      used by /usr/lib32/libavcodec.so.53.61.100 (media-video/ffmpeg-0.10.15)
 *      used by /usr/lib32/libavcodec.so.55.69.100 (media-video/ffmpeg-2.3.3)
Use emerge @preserved-rebuild to rebuild packages using these libraries
argus rstudio #
Comment 4 Mark Wright gentoo-dev 2014-12-06 12:37:49 UTC
Fixed in 0.98.1091 and all versions in portage.