Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package installation on Windows fails #7

Open
lucassalas opened this issue Sep 12, 2017 · 3 comments
Open

Package installation on Windows fails #7

lucassalas opened this issue Sep 12, 2017 · 3 comments

Comments

@lucassalas
Copy link

Hi Pavlo,

I have some non-blood samples in which I am using RefFreEWAS, I wanted to compare the results using your package. However I cannot install it, I have tried the zip and tarballs and both releases without success. I am working using a Windows 10 Pro machine. Below the error message and session info.

Best,

Lucas

install_github("lutsik/MeDeCom")
Downloading GitHub repo lutsik/MeDeCom@master
from URL https://api.github.com/repos/lutsik/MeDeCom/zipball/master
Installing MeDeCom
"C:/Users/LUCASS1/DOCUME1/R/R-34~1.1/bin/x64/R" --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL "C:/Users/Lucas
Salas/AppData/Local/Temp/RtmpaCqxak/devtools148904fb619b1/lutsik-MeDeCom-1c31de6" --library="C:/Users/Lucas Salas/Documents/R/R-3.4.1/library" --install-tests

  • installing source package 'MeDeCom' ...
    ** libs
    C:/RBuildTools/3.4/mingw_64/bin/g++ -I"C:/Users/LUCASS1/DOCUME1/R/R-341.1/include" -DNDEBUG -I"C:/Users/Lucas Salas/Documents/R/R-3.4.1/library/Rcpp/include" -I"C:/Users/Lucas Salas/Documents/R/R-3.4.1/library/RcppEigen/include" -I"d:/Compiler/gcc-4.9.3/local330/include" -IC:/Users/LUCASS1/DOCUME1/R/R-341.1/library/Rcpp/include -I. -fopenmp -O2 -Wall -mtune=core2 -c HCLasso.cpp -o HCLasso.o
    HCLasso.cpp: In function 'void SetInput(double*, double*, double, double*, double*, ptrdiff_t)':
    HCLasso.cpp:85:37: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&ks, G, &ione, Hess, &ione);
    ^
    HCLasso.cpp:86:43: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&ks, &one, G, &ione, Hess, &ione);
    ^
    HCLasso.cpp: In function 'void GetGrad(double*, double*, double*, double*, ptrdiff_t)':
    HCLasso.cpp:112:68: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '2' to 'void dgemv_(BLCHAR, CONST_BLINT, CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, BLDOU, CONST_BLINT)'
    dgemv(chn, &k, &k, &one, Hess, &k, x, &ione, &zero, grad, &ione);
    ^
    HCLasso.cpp:115:46: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, beta, &ione, grad, &ione);
    ^
    HCLasso.cpp: In function 'double ObjValue(double*, double*, double*, double*, ptrdiff_t)':
    HCLasso.cpp:134:64: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '2' to 'void dgemv_(BLCHAR, CONST_BLINT, CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, BLDOU, CONST_BLINT)'
    dgemv(chn, &k, &k, &one, G, &k, x, &ione, &zero, tmp, &ione);
    ^
    HCLasso.cpp:137:45: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, beta, &ione, tmp, &ione);
    ^
    HCLasso.cpp:140:53: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'double ddot_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT)'
    double f = (double)ddot(&k, x, &ione, tmp, &ione);
    ^
    HCLasso.cpp: In function 'double GetAlpha(double*, double*, double*, double*, double*, double*, ptrdiff_t)':
    HCLasso.cpp:157:35: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, x, &ione, tmp, &ione);
    ^
    HCLasso.cpp:159:46: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, x_old, &ione, tmp, &ione);
    ^
    HCLasso.cpp:163:36: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, g, &ione, tmp1, &ione);
    ^
    HCLasso.cpp:165:47: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, g_old, &ione, tmp1, &ione);
    ^
    HCLasso.cpp:168:63: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'double ddot_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT)'
    double numerator = (double)ddot(&k, tmp, &ione, tmp, &ione);
    ^
    HCLasso.cpp:171:66: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'double ddot_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT)'
    double denominator = (double)ddot(&k, tmp, &ione, tmp1, &ione);
    ^
    HCLasso.cpp: In function 'void GetProjStep(double*, double*, double*, double, ptrdiff_t)':
    HCLasso.cpp:198:33: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, x, &ione, d, &ione);
    ^
    HCLasso.cpp:202:42: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &malpha, g, &ione, d, &ione);
    ^
    HCLasso.cpp:208:40: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, x, &ione, d, &ione);
    ^
    HCLasso.cpp: In function 'double GetDirectDerivative(double*, double*, ptrdiff_t)':
    HCLasso.cpp:219:53: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'double ddot_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT)'
    double sum = (double)ddot(&k, g, &ione, d, &ione);
    ^
    HCLasso.cpp: In function 'double NormOne(double*, ptrdiff_t)':
    HCLasso.cpp:226:36: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'double dasum_(CONST_BLINT, BLDOU, CONST_BLINT)'
    double sum = dasum(&k, x, &ione);
    ^
    HCLasso.cpp: In function 'void HCLasso(double*, double*, double*, double, ptrdiff_t, double*, double*, double*, double*, double*, double*, double*, double*, double*, double*, double*, double*)':
    HCLasso.cpp:290:34: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, a0, &ione, x, &ione);
    ^
    HCLasso.cpp:296:36: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, x, &ione, ahat, &ione);
    ^
    HCLasso.cpp:368:71: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '2' to 'void dgemv_(BLCHAR, CONST_BLINT, CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, BLDOU, CONST_BLINT)'
    dgemv(chn, &k, &k, &one, Hess, &k, d, &ione, &zero, tmp, &ione);
    ^
    HCLasso.cpp:369:53: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'double ddot_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, CONST_BLDOU, CONST_BLINT)'
    Quad = (double)ddot(&k, d, &ione, tmp, &ione);
    ^
    HCLasso.cpp:420:41: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, x, &ione, x_old, &ione);
    ^
    HCLasso.cpp:421:41: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &t, d, &ione, x, &ione);
    ^
    HCLasso.cpp:431:41: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, g, &ione, g_old, &ione);
    ^
    HCLasso.cpp:442:44: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, x, &ione, ahat, &ione);
    ^
    HCLasso.cpp:448:39: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void dcopy_(CONST_BLINT, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    dcopy(&k, x, &ione, tmp, &ione);
    ^
    HCLasso.cpp:449:46: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, g, &ione, tmp, &ione);
    ^
    HCLasso.cpp:451:46: error: cannot convert 'ptrdiff_t* {aka long long int*}' to 'CONST_BLINT {aka const long int*}' for argument '1' to 'void daxpy_(CONST_BLINT, CONST_BLDOU, CONST_BLDOU, CONST_BLINT, BLDOU, CONST_BLINT)'
    daxpy(&k, &mone, x, &ione, tmp, &ione);
    ^
    make: *** [HCLasso.o] Error 1
    Warning: running command 'make -f "Makevars.win" -f "C:/Users/LUCASS1/DOCUME1/R/R-341.1/etc/x64/Makeconf" -f "C:/Users/LUCASS1/DOCUME1/R/R-341.1/share/make/winshlib.mk" SHLIB_LDFLAGS='$(SHLIB_CXXLDFLAGS)' SHLIB_LD='$(SHLIB_CXXLD)' SHLIB="MeDeCom.dll" WIN=64 TCLBIN=64 OBJECTS="HCLasso.o QuadHC.o RProjSplxBox.o RQuadSimplex.o RQuadSimplexBox.o RcppExports.o cppTAfact.o"' had status 2
    ERROR: compilation failed for package 'MeDeCom'
  • removing 'C:/Users/Lucas Salas/Documents/R/R-3.4.1/library/MeDeCom'
  • restoring previous 'C:/Users/Lucas Salas/Documents/R/R-3.4.1/library/MeDeCom'
    Installation failed: Command failed (1)

sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252

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

other attached packages:
[1] devtools_1.13.3

loaded via a namespace (and not attached):
[1] httr_1.3.1 compiler_3.4.1 R6_2.2.2 tools_3.4.1 withr_2.0.0 curl_2.8.1 memoise_1.1.0 knitr_1.17 git2r_0.19.0 digest_0.6.12

@lutsik
Copy link
Member

lutsik commented Sep 20, 2017

Dear Lucas,

As stated in our vignette, at the moment MeDeCom runs on *nix-like platforms only. Windows support is on our list of priorities.

Best regards,

Pavlo

@lutsik lutsik closed this as completed Sep 20, 2017
@lutsik lutsik changed the title Package installation failed Package installation on Windows fails Feb 24, 2020
@lutsik
Copy link
Member

lutsik commented Feb 24, 2020

I fixed this and a few other "easy" problems (see branch "remove_mpi"). The compilation (on x64) now proceeds to cppTAfact.cpp and segfaults at the same place somewhere in Eigen:
`
....Eigen/src/core/products/GeneralMatrixVector.h:322:1 : Internal compiler error: Segmentation fault
'
@dQuz could you perhaps have a closer look?

On i386 compilation terminates earlier due to reaching memory limits (I am pretty sure cppTAfact is not going to work on 32-bit, @nikitaved can you comment?).

@lutsik lutsik reopened this Feb 24, 2020
@lutsik
Copy link
Member

lutsik commented Mar 4, 2020

The package now compiles on Windows (branch remove_mpi), but the execution times increased, due to inability to use multicore functionality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants