[Bioc-devel] Bioconductor using 64-bit R build
sfalcon at fhcrc.org
Wed Jan 6 01:47:10 CET 2010
On 1/5/10 2:44 PM, Fraser Sim wrote:
> I then tried to compile limma which also worked fine. See the sessionInfo
> for confirmation. Unfortunately, when I tried to compile genefilter, it
> failed when compiling the RSQLite package.
> Here is the output.
> ** libs
> making DLL ...
> gcc -I"C:/Users/fjsim/DOWNLO~1/R-64BI~1/include"
> -DRSQLITE_USE_BUNDLED_SQLITE -O3 -Wall -std=gnu99 -c RS-DBI.c -o
> In file included from RS-DBI.c:19:0:
> RS-DBI.h:45:7: error: conflicting types for 'getpid'
> pc-mingw32/include/process.h:150:15: note: previous declaration of 'getpid'
> was here
> make: *** [RS-DBI.o] Error 1
> ... done
> ERROR: compilation failed for package 'RSQLite'
> * removing 'C:/Users/fjsim/Downloads/R-64Bit-for-Win64/library/RSQLite'
> Any ideas what I should try next to get RSQLite? It would be great to have
> R/Bioconductor working on 64-bit Windows and I'm willing to help out.
So the error seems to indicate a conflict in the definition of the
return type for getpid. RS-DBI.h in RSQLite has this:
/* Microsoft Visual C++ uses int _getpid() */
#define getpid _getpid
#define pid_t int
Now I would not expect a mingw compiler to define MSVC, but I could be
wrong and that could be where process.h is being included. This would
make some sense in that pid_t is probably not an int in win64 and so the
declaration of getpid() fails.
Or something else is going on related to this. I don't have an
environment to test, but am willing to review patches for RSQLite if you
can find something that works.
Perhaps that's enough to help you start tracking down the issue?
Program in Computational Biology | Fred Hutchinson Cancer Research Center
More information about the Bioc-devel