-
Notifications
You must be signed in to change notification settings - Fork 6
Closed
Description
When I try to install ChemmineOB from Bioconductor using this command
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("ChemmineOB", force = TRUE)"
I am getting the following output. I know it did not find openbabel, though the problem seems to be related to compilation issue with respect to using "std::binary_function" instead of "std::__binary_function" in the ChemmineOB.cpp source code.
getOption("repos")' replaces Bioconductor standard repositories, see 'help("repositories", package = "BiocManager")' for details.
Replacement repositories:
CRAN: https://cran.rstudio.com/
Bioconductor version 3.18 (BiocManager 1.30.22), R 4.3.3 (2024-02-29)
Installing package(s) 'ChemmineOB'
trying URL 'https://bioconductor.org/packages/3.18/bioc/src/contrib/ChemmineOB_1.40.0.tar.gz'
Content type 'application/x-gzip' length 1366043 bytes (1.3 MB)
==================================================
downloaded 1.3 MB
* installing *source* package ‘ChemmineOB’ ...
** using staged installation
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for OPENBABEL... no
checking for OPENBABEL... no
checking for gcc... clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang accepts -g... yes
checking for clang option to accept ISO C89... none needed
checking how to run the C preprocessor... clang -E
configure: creating ./config.status
config.status: creating src/Makevars
** libs
using C++ compiler: ‘Apple clang version 15.0.0 (clang-1500.0.40.1)’
using SDK: ‘MacOSX14.0.sdk’
clang++ -std=gnu++17 -I"/usr/local/Cellar/r/4.3.3/lib/R/include" -DNDEBUG -I/usr/include/openbabel3 -I/usr/include/eigen3 -DUSE_BOOST -DHAVE_EIGEN -I/usr/local/include/eigen3 -I/usr/local/include/openbabel3 -I'/usr/local/lib/R/4.3/site-library/BH/include' -I'/usr/local/lib/R/4.3/site-library/Rcpp/include' -I'/usr/local/lib/R/4.3/site-library/zlibbioc/include' -I/usr/local/opt/gettext/include -I/usr/local/opt/readline/include -I/usr/local/opt/xz/include -I/usr/local/include -fPIC -g -O2 -c ChemmineOB.cpp -o ChemmineOB.o
In file included from ChemmineOB.cpp:1587:
In file included from /usr/local/include/openbabel3/openbabel/obconversion.h:37:
In file included from /usr/local/include/openbabel3/openbabel/format.h:22:
/usr/local/include/openbabel3/openbabel/plugin.h:41:42: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
struct OBERROR CharPtrLess : public std::binary_function<const char*,const char*, bool>
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:13728:45: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
SWIGEXPORT SEXP R_swig_new_dummy ( ) { std::binary_function< char const *,char const *,bool > *result = 0 ;
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:13730:18: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
result = (std::binary_function< char const *,char const *,bool > *)new std::binary_function< char const *,char const *,bool >();
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:13730:79: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
result = (std::binary_function< char const *,char const *,bool > *)new std::binary_function< char const *,char const *,bool >();
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:13734:8: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
std::binary_function< char const *,char const *,bool > *arg1 = (std::binary_function< char const *,char const *,bool > *) 0 ;
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:13734:72: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
std::binary_function< char const *,char const *,bool > *arg1 = (std::binary_function< char const *,char const *,bool > *) 0 ;
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:13739:34: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
arg1 = reinterpret_cast< std::binary_function< char const *,char const *,bool > * >(argp1); delete arg1; r_ans = R_NilValue;
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
ChemmineOB.cpp:39656:27: error: no template named 'binary_function' in namespace 'std'; did you mean '__binary_function'?
return (void *)((std::binary_function< char const *,char const *,bool > *) ((OpenBabel::CharPtrLess *) x));
~~~~~^~~~~~~~~~~~~~~
__binary_function
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__functional/binary_function.h:49:1: note: '__binary_function' declared here
using __binary_function = __binary_function_keep_layout_base<_Arg1, _Arg2, _Result>;
^
8 errors generated.
make: *** [ChemmineOB.o] Error 1
ERROR: compilation failed for package ‘ChemmineOB’
* removing ‘/usr/local/lib/R/4.3/site-library/ChemmineOB’
The downloaded source packages are in
‘/private/var/folders/zq/177206l93831d3zm33nvmc4w0000gn/T/Rtmp1Qy5L3/downloaded_packages’
Warning message:
In install.packages(...) :
installation of package ‘ChemmineOB’ had non-zero exit status
Any help regarding this issue will be much appreciated.
Thanks
Deb
Metadata
Metadata
Assignees
Labels
No labels