[Rcpp-devel] problems with rInside in Ubuntu
Dirk Eddelbuettel
edd at debian.org
Sat Mar 30 02:37:23 CET 2013
On 29 March 2013 at 22:13, Walter Mascarenhas wrote:
| Dirk,
|
| SInce I wrote you this afternoon, I upgraded to R 2.15.3 and got version
| 0.10.3 of rcpp and
| 0.2.10 of Rinside. I am using ubuntu 12.04 LTS, with g++4.7.2 and Qt 5.0.1 in
| Qt creator 2.6.2
| (the first few lines of the makefile generated by qmake are at the end of this
| message)
It is probably Qt 5 that makes the difference.
Why did you pick it? Ubuntu 12.04 and 12.10 comes with perfectly fine
versions of Qt 4.7.*
| Now rinsides's qtdensity example does not work anymore, for two reasons:
| 1) The file main.cpp does not compile. It is easy to fix this by addng
| these four lines to main.cpp:
|
| #include <QLineEdit>
| #include <QGroupBox>
| #include <QRadioButton>
| #include <QButtonGroup>
|
| I guess these files are included via <qtGui> in your machine.
Yes, works here out of the box.
| 2) There is a link problem:
|
| /usr/local/lib/R/site-library/RInside/lib/libRInside.so:-1: error: undefined
| reference to `Rcpp::Language::update()'
Dito. That one is weirder.
If we both use Rcpp 0.10.3, why do you have this and I don't?
Do the other examples (in the neighbouring directories) build?
| which I do not now how to solve. What should I do?
Debug it. It broke, and you get to keep the pieces.
I support software I give away for free. I test to the best of my ability and
resources, but keep in mind that I do not have the manpower or resource to
test on every conceivable combination of related software releases.
I really do think that you safest bet may to take the libqt* versions from
your distro.
| Once you tell me how to fix this I will build an example with qt in which I
| use Rcpp to reproduce the results in a finance paper which were obtained
| originally in matlab. I believe it will be a neat example of the use of Rcpp
| (and I want to look very carefully at this article anyway)
|
| Here are the first lines of the makefile:
|
| ##############################
| ###############################################
| # Makefile for building: qtdensity
| # Generated by qmake (3.0) (Qt 5.0.1) on: Fri Mar 29 21:33:20 2013
| # Project: /usr/local/lib/R/site-library/RInside/examples/qt/qtdensity.pro
| # Template: app
| # Command: /home/walter/qt.5.0.1/5.0.1/gcc_64/bin/qmake -spec linux-g++-64
| CONFIG+=debug CONFIG+=declarative_debug CONFIG+=qml_debug QMAKE_CXX=g++-4.7
| QMAKE_CXXFLAGS+=-std=c++11 -o Makefile /usr/local/lib/R/site-library/RInside/
| examples/qt/qtdensity.pro
| #############################################################################
|
| MAKEFILE = Makefile
|
| ####### Compiler, tools and options
|
| CC = gcc
| CXX = g++-4.7
| DEFINES = -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_SVG_LIB
| -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB
| CFLAGS = -m64 -pipe -g -Wall -W -D_REENTRANT -fPIE $(DEFINES)
| CXXFLAGS = -m64 -pipe -std=c++11 -I/usr/share/R/include -I/usr/local/
| lib/R/site-library/Rcpp/include -I/usr/local/lib/R/site-library/RInside/include
| -g -Wall -W -D_REENTRANT -fPIE $(DEFINES)
| INCPATH = -I../../../../qt.5.0.1/5.0.1/gcc_64/mkspecs/linux-g++-64
| -I/usr/local/lib/R/site-library/RInside/examples/qt -I../../../../qt.5.0.1/
| 5.0.1/gcc_64/include -I../../../../qt.5.0.1/5.0.1/gcc_64/include/QtSvg -I../..
| /../../qt.5.0.1/5.0.1/gcc_64/include/QtWidgets -I../../../../qt.5.0.1/5.0.1/
| gcc_64/include/QtGui -I../../../../qt.5.0.1/5.0.1/gcc_64/include/QtCore -I. -I.
| LINK = g++
| LFLAGS = -m64 -Wl,-rpath,/home/walter/qt.5.0.1/5.0.1/gcc_64
| -Wl,-rpath,/home/walter/qt.5.0.1/5.0.1/gcc_64/lib
| LIBS = $(SUBLIBS) -L/usr/X11R6/lib64 -L/usr/lib/R/lib -lR
| -lblas -llapack -L/usr/local/lib/R/site-library/RInside/lib -lRInside
| -Wl,-rpath,/usr/local/lib/R/site-library/RInside/lib -L/usr/local/lib/R/
| site-library/Rcpp/lib -lRcpp -Wl,-rpath,/usr/local/lib/R/site-library/Rcpp/lib
| -L/home/walter/qt.5.0.1/5.0.1/gcc_64/lib -lQt5Svg -lQt5Widgets -lQt5Gui
| -lQt5Core -lGL -lpthread
| AR = ar cqs
| RANLIB =
| QMAKE = /home/walter/qt.5.0.1/5.0.1/gcc_64/bin/qmake
| TAR = tar -cf
| COMPRESS = gzip -9f
| COPY = cp -f
| SED = sed
| COPY_FILE = cp -f
| COPY_DIR = cp -f -R
| STRIP = strip
| INSTALL_FILE = install -m 644 -p
| INSTALL_DIR = $(COPY_DIR)
| INSTALL_PROGRAM = install -m 755 -p
| DEL_FILE = rm -f
| SYMLINK = ln -f -s
| DEL_DIR = rmdir
| MOVE = mv -f
| CHK_DIR_EXISTS= test -d
| MKDIR = mkdir -p
| [cleardot]
It's all reasonable, and the only clear difference I see it qt5.0. My releases
assume qt4.* and currently test under 4.7.
Dirk
--
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
More information about the Rcpp-devel
mailing list