[Bioc-devel] CXX on liverpool/lemming

Martin Morgan mtmorgan at fhcrc.org
Mon Oct 15 01:13:10 CEST 2007


Kasper Daniel Hansen <khansen at stat.berkeley.edu> writes:

> On Oct 14, 2007, at 12:20 PM, Steffen Neumann (on the road) wrote:
>
>> Hi,
>>
>> I am trying to figure the build report for both windows machines on
>> http://bioconductor.org/checkResults/2.2/bioc-LATEST/Rdisop/ 
>> liverpool-buildsrc.html
>>
>> which says
>>
>> g++ -c Rcpp.cpp -o Rcpp.o -I"e:\biocbld\bbs-2.2-bioc\R/include" - 
>> I"e:\biocbld\bbs-2.2-bioc\R/src/include"  -Wall -O2
>> g++: not found

Hi Steffen, Kasper

The R development tools use MinGW. The 4.2.1 compiler is g++-sjlj
(sjlj apparently refering to short-jump, long-jump).

But this is a detail that you shouldn't have to worry about. As on any
platform, you can / should discover the correct compiler by asking R
(R CMD config CXX). With the following changes

Index: src/Makevars.win
===================================================================
--- src/Makevars.win    (revision 27990)
+++ src/Makevars.win    (working copy)
@@ -1,2 +1,2 @@
 PKG_LIBS=-L./win -lims -L../RcppSrc -lRcpp
-PKG_CPPFLAGS=-I../RcppSrc -I../imslib/src
\ No newline at end of file
+PKG_CPPFLAGS=-I../RcppSrc -I./imslib/src
\ No newline at end of file
Index: configure.win
===================================================================
--- configure.win       (revision 27990)
+++ configure.win       (working copy)
@@ -1,7 +1,8 @@
 echo "Building libRcpp.a in RcppSrc..."
 R_HOME=`R RHOME`
+CXX=`R CMD config CXX`
 cd RcppSrc
-make RHOME=$R_HOME -f Makefile.win
+make RHOME=${R_HOME} CXX=${CXX} -f Makefile.win
 cd ..
 if test \! -d inst
 then
@@ -16,10 +17,3 @@
 #make ./src/libims.la
 #cp ./src/libims-0.dll src/win/
 #cd ..
-
-IMS_CFLAGS=-I../imslib/src/
-IMS_LIBS=../imslib/src/.libs/libims.a
-
-CPPFLAGS="$CPPFLAGS -I../RcppSrc $IMS_CFLAGS"
-LDFLAGS="${LDFLAGS} -L../RcppSrc -lRcpp $IMS_LIBS"
-LIBS="${LIBS} -lRcpp $IMS_LIBS"

Rdisop compiles RccpSrc and Rdisop.dll, until

windres --preprocessor="gcc-sjlj -E -xc -DRC_INVOKED" -I
C:/R/src/R-2-6-branch/include  -i Rdisop_res.rc -o Rdisop_res.o
g++-sjlj   -shared -s  -o Rdisop.dll Rdisop.def disop.o Rdisop_res.o
-LC:/R/src/R-2-6-branch/bin -L./win -lims -L../RcppSrc -lRcpp   -lR
c:/rtools/mingw/bin/../lib/gcc/mingw32/4.2.1-sjlj/../../../../mingw32/bin/ld.exe
: cannot find -lims
collect2: ld returned 1 exit status
make[3]: *** [Rdisop.dll] Error 1
make[2]: *** [srcDynlib] Error 2
make[1]: *** [all] Error 2
make: *** [pkg-Rdisop] Error 2          

which I guess just means a little more work figuring out where that
lims library is.

>> where the corresponding Makefile says:
>>
>> $(OBJ): $(SRC)
>>         $(CXX) -c $(SRC) -o $(OBJ) $(CXXFLAGS)
>>
>> So the environment variable CXX is set to g++,
>> which is not in the path. Did I miss something ?
>>
>> A related question:
>> Is there a description of the software installation
>> for the build machines, like compiler and build environment ?
>> The description for developers in the wiki are a bit sparse.
>
> Go to the top build report page:
>    http://bioconductor.org/checkResults/2.2/bioc-LATEST/index.html
> and click on the server name (which seems to indicate that something  
> is certainly wrong on lemming)

lemming does seem to need its tools updated (or perhaps just the
script that builds the web page); I think lemming switched to the 2.2
builds on Thursday or Friday. This is a separate issue from Steffen's.

Martin

> Kasper
>
>> Yours,
>> Steffen
>>
>> -- 
>> IPB Halle                    AG Massenspektrometrie & Bioinformatik
>> Dr. Steffen Neumann          http://www.IPB-Halle.DE
>> Weinberg 3                   http://msbi.bic-gh.de
>> 06120 Halle                  New Phone number !
>>                              Tel. +49 (0) 345 5582 - 1470
>> sneumann(at)IPB-Halle.DE     Fax. +49 (0) 345 5582 - 1409
>>
>> _______________________________________________
>> Bioc-devel at stat.math.ethz.ch mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
> _______________________________________________
> Bioc-devel at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel



More information about the Bioc-devel mailing list