Dear Uwe,
|One more question: Which version of fftw do you need for these symbols? The system requirement for fftw is fftw-3.3.4 or above. I have tried to build that on fftw-3.3.4, as well as on fftw-3.3.6. Thank you very much. Best regards, Senren ________________________________ From: Uwe Ligges <lig...@statistik.tu-dortmund.de> Sent: 01 December 2017 05:33:44 To: Dirk Eddelbuettel; Tan, Senren Cc: r-package-devel@r-project.org Subject: Re: [R-pkg-devel] Errors in the pre-test after submitting the R package On 30.11.2017 19:57, Dirk Eddelbuettel wrote: > > Hi Senren, > > On 30 November 2017 at 16:49, Tan, Senren wrote: > | Thank you very much for your reply. > > My pleasure. You did well here. > > | I have been trying to look at the R package fftw developed by Olaf and Uwe > over the last few days. And I have tried to make use of the configure.ac. > file in their source package to generate the configure script. I tried R CMD > Check on my Mac, as well as on some machines running Linux. It seems that I > could pass all the R CMD Checks on these Unix / Linux machines. > > Great! [ Configure/autoconf are hated by many but it is really just a shell > scripting variant. I don't mind it as much. And great when it works. ] > > | Also, I have come across the following website > https://cran.r-project.org/bin/windows/contrib/ThirdPartySoftware.html, on > which it seems to suggest that the C library fftw3 (with the make variable > LIB_FFTW) is installed on the CRAN build machine for Windows. > > Yes! > | > | So, I tried the following Makevars.win. > | > | PKG_CPPFLAGS = -I$(LIB_FFTW)/include -I$(LIB_FFTW) > | CXX11 = g++ > | PKG_CXXFLAGS = -std=c++11 > | PKG_LIBS = -L$(LIB_FFTW)/lib${R_ARCH} -lfftw3 > > That looks correct to me (assuming LIB_FFTW is the chosen name). I do > something similar with my packages linking to the GNU GSL. > > | However, when I tried to re-submit the package to CRAN, I still got the > same error message on the pre-test as follows, suggesting that the machine > had not detected the fftw3 library. > | > | ********************************************** > | WARNING: this package has a configure script > | It probably needs manual configuration > | ********************************************** > | > | ** libs > | > | *** arch - i386 > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c RcppExports.cpp -o RcppExports.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c cont_ks_dist.cpp -o cont_ks_dist.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c crossprob_new.cc -o crossprob_new.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c fftw_wrappers.cc -o fftw_wrappers.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c fftwconvolver.cc -o fftwconvolver.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c one_sided_noncrossing_probability.cc -o > one_sided_noncrossing_probability.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c one_sided_noncrossing_probability_n2.cc -o > one_sided_noncrossing_probability_n2.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c one_sided_noncrossing_probability_n2logn.cc -o > one_sided_noncrossing_probability_n2logn.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c poisson_pmf.cc -o poisson_pmf.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c read_boundaries_file.cc -o read_boundaries_file.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c string_utils.cc -o string_utils.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -std=gnu++11 > -I"D:/RCompile/recent/R/include" -DNDEBUG > -Id:/Rcompile/CRANpkg/extralibs215/local215/include > -Id:/Rcompile/CRANpkg/extralibs215/local215 > -I"d:/RCompile/CRANpkg/lib/3.5/Rcpp/include" > -I"d:/Compiler/gcc-4.9.3/local330/include" -std=c++11 -O2 -Wall > -mtune=core2 -c two_sided_noncrossing_probability.cc -o > two_sided_noncrossing_probability.o > | d:/Compiler/gcc-4.9.3/mingw_32/bin/g++ -shared -s -static-libgcc -o > KSgeneral.dll tmp.def RcppExports.o cont_ks_dist.o crossprob_new.o > fftw_wrappers.o fftwconvolver.o one_sided_noncrossing_probability.o > one_sided_noncrossing_probability_n2.o > one_sided_noncrossing_probability_n2logn.o poisson_pmf.o > read_boundaries_file.o string_utils.o two_sided_noncrossing_probability.o > -Ld:/Rcompile/CRANpkg/extralibs215/local215/lib/i386 -lfftw3 > -Ld:/Compiler/gcc-4.9.3/local330/lib/i386 > -Ld:/Compiler/gcc-4.9.3/local330/lib -LD:/RCompile/recent/R/bin/i386 -lR > > That looks like it expanded right. > > What I would do now is take one of the working packages, create a local > tarball _and put my name and email into Maintainer_ because that way the > win-builder test log will come back to me. And then submit, and compare. > > | fftw_wrappers.o:fftw_wrappers.cc:(.text+0x125): undefined reference to > `_imp__fftw_plan_dft_r2c_1d' > | fftw_wrappers.o:fftw_wrappers.cc:(.text+0x14f): undefined reference to > `_imp__fftw_destroy_plan' > | fftw_wrappers.o:fftw_wrappers.cc:(.text+0x29b): undefined reference to > `_imp__fftw_execute' > | fftw_wrappers.o:fftw_wrappers.cc:(.text+0x315): undefined reference to > `_imp__fftw_plan_dft_c2r_1d' > | fftw_wrappers.o:fftw_wrappers.cc:(.text+0x33f): undefined reference to > `_imp__fftw_destroy_plan' > | fftw_wrappers.o:fftw_wrappers.cc:(.text+0x3bb): undefined reference to > `_imp__fftw_execute' > | collect2.exe: error: ld returned 1 exit status > | no DLL was created > > And I presume this works locally for you, ie these symbols are in fact in the > DLL you try to use? One more question: Which version of fftw do you need for these symbols? Best, Uwe Ligges > | I was wondering whether I should include in the configure.ac file a few > lines about downloading the library fftw3 when it is not available on the > machine? Or have I made some mistakes in the Makevars.win file? > > You could -- but if it works on *nix you can leave it alone. > > | Thank you very much and I apologize for any inconvenience I may have caused > you. > > You are using the mailing list for the very purpose it was created for so no > apology needed or accepted! > > Cheers, Dirk > [[alternative HTML version deleted]] ______________________________________________ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel