HenrikBengtsson / affxparser

🔬 R package: This is the Bioconductor devel version of the affxparser package.
http://bioconductor.org/packages/devel/bioc/html/affxparser.html
7 stars 3 forks source link

Bug: inclusion of header files #21

Closed kasperdanielhansen closed 8 years ago

kasperdanielhansen commented 8 years ago

Email from Brian Ripley:

[Subject] BioC packages affxparser flowCore rhdf5

[Body] These now fail to install in R-devel as they include headers such as R.h from C++ code inside an extern "C" block. That has been failing in some pre-release compilers and we have switched to including C++ headers such as cmath (rather than math.h). Installation now fails with current versions of common C++ compilers such as g++ and clang++.

In the case of rhd5, HandleList.cpp includes HandleList.h inside such a block, and it includes R.h.

These packages are used from CRAN packages, so please correct at least in the BioC trunk ASAP.

HenrikBengtsson commented 8 years ago

Travis CI confirms that affxparser no longer installs on R devel due to "template with C linkage" errors, e.g.

In file included from /home/travis/R-bin/R-devel/lib/R/include/R.h:36:0,
                 from R_affx_cel_parser.cpp:10:
/usr/include/c++/4.6/cmath: In function ‘double std::abs(double)’:
/usr/include/c++/4.6/cmath:82:17: error: declaration of C function ‘double std::abs(double)’ conflicts with
/usr/include/c++/4.6/cstdlib:139:3: error: previous declaration ‘long int std::abs(long int)’ here
[...]
/usr/include/c++/4.6/cmath:813:3: error: template with C linkage
/usr/include/c++/4.6/cmath:822:3: error: template with C linkage
/usr/include/c++/4.6/cmath:831:3: error: template with C linkage
make: *** [R_affx_cel_parser.o] Error 1
ERROR: compilation failed for package ‘affxparser’
kasperdanielhansen commented 8 years ago

Seems to me that this is something that should be easy to fix if you fully understand it. Perhaps get in touch with authors of flowCore and rhdf5?

kasperdanielhansen commented 8 years ago

Fixed in version 1.43.1, I think. Henrik, if fixed, could you push it to Bioconductor svn. All I have done is fixing it on Github.

HenrikBengtsson commented 8 years ago

Thxs.

HenrikBengtsson commented 8 years ago

Should this be backported (before it's too late) to current release brand for R 3.2.x which will be used from CRAN testing for another year?

HenrikBengtsson commented 8 years ago

Or is this truly only for R (>= 3.3.0)?

kasperdanielhansen commented 8 years ago

I think this is 3.3.0, since the issue arises with the new GCC in the new Rtools intended for 3.3.0.

On Mon, Apr 25, 2016 at 11:17 AM, Henrik Bengtsson <notifications@github.com

wrote:

Or is this truly only for R (>= 3.3.0)?

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/HenrikBengtsson/affxparser/issues/21#issuecomment-214388455

HenrikBengtsson commented 8 years ago

OK. Let's leave it as is then. In the worst case scenario, it should be fixable even after the freeze if needed.