Skip to content

Compilation Error on Installation #48

Description

@samuel-marsh

Hi,

I'm having compilation issue with installation of singlet, hoping you might be able to help debug. Haven't had issue in compilation in while.

Here is output of installation:

install output
> devtools::install_github("zdebruine/singlet")
Downloading GitHub repo zdebruine/singlet@HEAD
Skipping 2 packages not available: fgsea, limma
── R CMD build ─────────────────────────────────────────────────────────────────────────────────────────────────────────
✔  checking for file/private/var/folders/92/rwb8659d3jl658jf5nmmvw580000gn/T/Rtmp1tm6Mt/remotesf1df3a2bdf62/zdebruine-singlet-5164658/DESCRIPTION...preparingsinglet:checking DESCRIPTION meta-informationcleaning srcchecking for LF line-endings in source and make files and shell scriptschecking for empty or unneeded directories
     NB: this package now depends on R (>= 3.5.0)
     WARNING: Added dependency on R >= 3.5.0 because serialized objects in
     serialize/load version 3 cannot be read in older versions of R.
     File(s) containing such objects:singlet/data/pbmc3k.RData’
─  buildingsinglet_0.99.6.tar.gz* installing *source* packagesinglet...
** using staged installation
** libs
using C++ compiler:Homebrew clang version 17.0.6using C++11
using SDK:MacOSX13.1.sdkclang++ -arch x86_64 -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I../inst/include/ -I'/Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/library/Rcpp/include' -I'/Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/library/RcppEigen/include' -I/usr/local/opt/llvm/17.0.6/include     -DEIGEN_INITIALIZE_MATRICES_BY_ZERO -DEIGEN_NO_DEBUG -fPIC  -falign-functions=64 -Wall -g -O2  -c RcppExports.cpp -o RcppExports.o
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:56:
../inst/include/src/IVCSC/IVCSC_SparseMatrix.hpp:87:120: error: no type named 'Vector' in 'SparseMatrix<T, indexT, compressionLevel, columnMajor>'
        inline Eigen::Matrix<T, -1, 1> vectorMultiply(typename SparseMatrix<T, indexT, compressionLevel, columnMajor>::Vector& vec);
                                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:58:
../inst/include/src/IVCSC/IVCSC_Private_Methods.hpp:78:13: warning: unused variable 'byte1' [-Wunused-variable]
    uint8_t byte1 = (val_t >> 8) & 0xFF;
            ^
../inst/include/src/IVCSC/IVCSC_Private_Methods.hpp:79:13: warning: unused variable 'byte2' [-Wunused-variable]
    uint8_t byte2 = (val_t >> 16) & 0xFF;
            ^
../inst/include/src/IVCSC/IVCSC_Private_Methods.hpp:80:13: warning: unused variable 'byte3' [-Wunused-variable]
    uint8_t byte3 = (val_t >> 24) & 0xFF;
            ^
../inst/include/src/IVCSC/IVCSC_Private_Methods.hpp:77:13: warning: unused variable 'byte0' [-Wunused-variable]
    uint8_t byte0 = val_t & 0xFF;
            ^
../inst/include/src/IVCSC/IVCSC_Private_Methods.hpp:131:14: warning: unused variable 'twos' [-Wunused-variable]
    uint32_t twos = 0;
             ^
../inst/include/src/IVCSC/IVCSC_Private_Methods.hpp:130:14: warning: unused variable 'ones' [-Wunused-variable]
    uint32_t ones = 0;
             ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:59:
../inst/include/src/IVCSC/IVCSC_Methods.hpp:312:20: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
                if constexpr (columnMajor) {
                   ^
../inst/include/src/IVCSC/IVCSC_Methods.hpp:359:20: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
                if constexpr (columnMajor) {
                   ^
../inst/include/src/IVCSC/IVCSC_Methods.hpp:403:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (columnMajor) {
           ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:60:
../inst/include/src/IVCSC/IVCSC_Constructors.hpp:47:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (columnMajor) {
           ^
../inst/include/src/IVCSC/IVCSC_Constructors.hpp:171:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (otherCompressionLevel == compressionLevel) {
           ^
../inst/include/src/IVCSC/IVCSC_Constructors.hpp:180:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (otherCompressionLevel == 1) {
           ^
../inst/include/src/IVCSC/IVCSC_Constructors.hpp:183:17: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        else if constexpr (otherCompressionLevel == 2) {
                ^
../inst/include/src/IVCSC/IVCSC_Constructors.hpp:631:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (columnMajor) {
           ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:61:
../inst/include/src/IVCSC/IVCSC_BLAS.hpp:80:92: error: out-of-line definition of 'vectorMultiply' does not match any declaration in 'SparseMatrix<T, indexT, compressionLevel, columnMajor>'
    inline Eigen::Matrix<T, -1, 1> SparseMatrix<T, indexT, compressionLevel, columnMajor>::vectorMultiply(
                                                                                           ^~~~~~~~~~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:66:
../inst/include/src/InnerIterators/IVCSC_Iterator_Methods.hpp:117:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (!columnMajor) {
           ^
../inst/include/src/InnerIterators/IVCSC_Iterator_Methods.hpp:128:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (!columnMajor) {
           ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:69:
../inst/include/src/VCSC/VCSC_SparseMatrix.hpp:82:105: error: no type named 'Vector' in 'SparseMatrix<type-parameter-0-0, type-parameter-0-1, (unsigned char)'\x02', columnMajor>'
        inline Eigen::Matrix<T, -1, 1> vectorMultiply(typename SparseMatrix<T, indexT, 2, columnMajor>::Vector& vec);
                                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:71:
../inst/include/src/VCSC/VCSC_Private_Methods.hpp:77:13: warning: unused variable 'byte0' [-Wunused-variable]
    uint8_t byte0 = val_t & 0xFF;
            ^
../inst/include/src/VCSC/VCSC_Private_Methods.hpp:80:13: warning: unused variable 'byte3' [-Wunused-variable]
    uint8_t byte3 = (val_t >> 24) & 0xFF;
            ^
../inst/include/src/VCSC/VCSC_Private_Methods.hpp:79:13: warning: unused variable 'byte2' [-Wunused-variable]
    uint8_t byte2 = (val_t >> 16) & 0xFF;
            ^
../inst/include/src/VCSC/VCSC_Private_Methods.hpp:78:13: warning: unused variable 'byte1' [-Wunused-variable]
    uint8_t byte1 = (val_t >> 8) & 0xFF;
            ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:72:
../inst/include/src/VCSC/VCSC_Methods.hpp:256:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (columnMajor) {
           ^
../inst/include/src/VCSC/VCSC_Methods.hpp:326:20: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
                if constexpr (columnMajor) {
                   ^
../inst/include/src/VCSC/VCSC_Methods.hpp:356:20: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
                if constexpr (columnMajor) {
                   ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:73:
../inst/include/src/VCSC/VCSC_Constructors.hpp:107:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (otherCompressionLevel == 2) {
           ^
../inst/include/src/VCSC/VCSC_Constructors.hpp:116:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (otherCompressionLevel == 1) {
           ^
../inst/include/src/VCSC/VCSC_Constructors.hpp:119:17: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        else if constexpr (otherCompressionLevel == 3) {
                ^
../inst/include/src/VCSC/VCSC_Constructors.hpp:542:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (columnMajor) {
           ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:74:
../inst/include/src/VCSC/VCSC_BLAS.hpp:74:77: error: out-of-line definition of 'vectorMultiply' does not match any declaration in 'SparseMatrix<type-parameter-0-0, type-parameter-0-1, (unsigned char)'\x02', columnMajor>'
    inline Eigen::Matrix<T, -1, 1> SparseMatrix<T, indexT, 2, columnMajor>::vectorMultiply(typename SparseMatrix<T, indexT, 2, columnMajor>::Vector& vec) {
                                                                            ^~~~~~~~~~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:77:
../inst/include/src/Vectors/VCSC_Vector_Methods.hpp:161:14: warning: decomposition declarations are a C++17 extension [-Wc++17-extensions]
  for (auto& [key, value] : data) {
             ^~~~~~~~~~~~
../inst/include/src/Vectors/VCSC_Vector_Methods.hpp:173:14: warning: decomposition declarations are a C++17 extension [-Wc++17-extensions]
  for (auto& [key, value] : data) {
             ^~~~~~~~~~~~
../inst/include/src/Vectors/VCSC_Vector_Methods.hpp:359:20: warning: decomposition declarations are a C++17 extension [-Wc++17-extensions]
  for (const auto& [key, value] : data) {
                   ^~~~~~~~~~~~
../inst/include/src/Vectors/VCSC_Vector_Methods.hpp:373:20: warning: decomposition declarations are a C++17 extension [-Wc++17-extensions]
  for (const auto &[key, value] : newVector.data) {
                   ^~~~~~~~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:79:
../inst/include/src/InnerIterators/VCSC_Iterator_Methods.hpp:118:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (!columnMajor) {
           ^
../inst/include/src/InnerIterators/VCSC_Iterator_Methods.hpp:129:12: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
        if constexpr (!columnMajor) {
           ^
../inst/include/src/InnerIterators/VCSC_Iterator_Methods.hpp:148:16: error: use of non-static data member 'values' of 'SparseMatrix<T, indexT, 2, columnMajor>' from nested type 'InnerIterator'
        return values == other.values;
               ^~~~~~
../inst/include/src/InnerIterators/VCSC_Iterator_Methods.hpp:154:16: error: use of non-static data member 'values' of 'SparseMatrix<T, indexT, 2, columnMajor>' from nested type 'InnerIterator'
        return values != other.values;
               ^~~~~~
../inst/include/src/InnerIterators/VCSC_Iterator_Methods.hpp:160:16: error: use of non-static data member 'values' of 'SparseMatrix<T, indexT, 2, columnMajor>' from nested type 'InnerIterator'
        return values < other.values;
               ^~~~~~
../inst/include/src/InnerIterators/VCSC_Iterator_Methods.hpp:166:16: error: use of non-static data member 'values' of 'SparseMatrix<T, indexT, 2, columnMajor>' from nested type 'InnerIterator'
        return values > other.values;
               ^~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:82:
../inst/include/src/CSC/CSC_SparseMatrix.hpp:79:63: error: no type named 'Vector' in 'SparseMatrix<type-parameter-0-0, type-parameter-0-1, (unsigned char)'\x01', columnMajor>'
            typename SparseMatrix<T, indexT, 1, columnMajor>::Vector& vec);
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:84:
../inst/include/src/CSC/CSC_Private_Methods.hpp:50:13: warning: unused variable 'byte1' [-Wunused-variable]
    uint8_t byte1 = (val_t >> 8) & 0xFF;
            ^
../inst/include/src/CSC/CSC_Private_Methods.hpp:51:13: warning: unused variable 'byte2' [-Wunused-variable]
    uint8_t byte2 = (val_t >> 16) & 0xFF;
            ^
../inst/include/src/CSC/CSC_Private_Methods.hpp:49:13: warning: unused variable 'byte0' [-Wunused-variable]
    uint8_t byte0 = val_t & 0xFF;
            ^
../inst/include/src/CSC/CSC_Private_Methods.hpp:52:13: warning: unused variable 'byte3' [-Wunused-variable]
    uint8_t byte3 = (val_t >> 24) & 0xFF;
            ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:86:
../inst/include/src/CSC/CSC_Constructors.hpp:139:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (compressionLevel2 == 1) {
     ^
../inst/include/src/CSC/CSC_Constructors.hpp:147:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (compressionLevel2 == 2) {
     ^
../inst/include/src/CSC/CSC_Constructors.hpp:149:13: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  } else if constexpr (compressionLevel2 == 3) {
            ^
../inst/include/src/CSC/CSC_Constructors.hpp:178:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (columnMajor) {
     ^
../inst/include/src/CSC/CSC_Constructors.hpp:230:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (columnMajor) {
     ^
../inst/include/src/CSC/CSC_Constructors.hpp:339:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (columnMajor) {
     ^
../inst/include/src/CSC/CSC_Constructors.hpp:387:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (columnMajor) {
     ^
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/singlet.h:24:
In file included from ../inst/include/IVSparse.h:87:
../inst/include/src/CSC/CSC_BLAS.hpp:79:65: error: out-of-line definition of 'vectorMultiply' does not match any declaration in 'SparseMatrix<type-parameter-0-0, type-parameter-0-1, (unsigned char)'\x01', columnMajor>'
inline Eigen::VectorXd SparseMatrix<T, indexT, 1, columnMajor>::vectorMultiply(typename SparseMatrix<T, indexT, 1, columnMajor>::Vector &vec) {
                                                                ^~~~~~~~~~~~~~
44 warnings and 10 errors generated.
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for packagesinglet* removing/Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/library/singletWarning messages:
1: In readLines(old_path) :
  incomplete final line found on '/Users/marsh_mbp/.R/Makevars'
2: In i.p(...) :
  installation of package/var/folders/92/rwb8659d3jl658jf5nmmvw580000gn/T//Rtmp1tm6Mt/filef1df1656b8c4/singlet_0.99.6.tar.gzhad non-zero exit status
sessionInfo() output
> sessionInfo()
R version 4.3.2 Patched (2023-11-10 r85510)
Platform: x86_64-apple-darwin20 (64-bit)
Running under: macOS Monterey 12.6.8

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib 
LAPACK: /Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/lib/libRlapack.dylib;  LAPACK version 3.11.0

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

time zone: America/New_York
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
 [1] miniUI_0.1.1.1          compiler_4.3.2          promises_1.2.1          Rcpp_1.0.12            
 [5] stringr_1.5.1           callr_3.7.5             later_1.3.2             fastmap_1.1.1          
 [9] mime_0.12               R6_2.5.1                curl_5.2.1              htmlwidgets_1.6.4      
[13] desc_1.4.3              profvis_0.3.8           shiny_1.8.0             rlang_1.1.3            
[17] cachem_1.0.8            stringi_1.8.3           httpuv_1.6.14           fs_1.6.3               
[21] pkgload_1.3.4           memoise_2.0.1           cli_3.6.2               magrittr_2.0.3         
[25] ps_1.7.6                processx_3.8.3          digest_0.6.35           pbmc3k.SeuratData_3.1.4
[29] rstudioapi_0.15.0       xtable_1.8-4            remotes_2.4.2.1         devtools_2.4.5         
[33] lifecycle_1.0.4         vctrs_0.6.5             glue_1.7.0              urlchecker_1.0.1       
[37] sessioninfo_1.2.2       pkgbuild_1.4.3          purrr_1.0.2             tools_4.3.2            
[41] usethis_2.2.3           ellipsis_0.3.2          htmltools_0.5.7 

Thanks!
Sam

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions