virtualstaticvoid / heroku-buildpack-r

Heroku buildpack for R - Makes deploying R on Heroku easy
MIT License
304 stars 235 forks source link

Package install fails for topicsmodels #23

Closed metalaureate closed 10 years ago

metalaureate commented 10 years ago

Hi Chris,

Got another one for you - sorry - any guidance on why the topicsmodels package fails to install on Heroku? It installs fine on my Mac. I don't understand the errors. Thanks for your help!

trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/topicmodels_0.1-12.tar.gz'
Content type 'application/x-gzip' length 845348 bytes (825 Kb)
opened URL
downloaded 825 Kb

* installing *source* package 'topicmodels' ...
** package 'topicmodels' successfully unpacked and MD5 sums checked
** libs
gcc -std=gnu99 -I/app/vendor/R/lib64/R/include -DNDEBUG  -I/app/vendor/glibc-2.7/string/ -I/app/vendor/glibc-2.7/time    -fpic  -g -O2  -c cokus.c -o cokus.o
gcc -std=gnu99 -I/app/vendor/R/lib64/R/include -DNDEBUG  -I/app/vendor/glibc-2.7/string/ -I/app/vendor/glibc-2.7/time    -fpic  -g -O2  -c common.c -o common.o
gcc -std=gnu99 -I/app/vendor/R/lib64/R/include -DNDEBUG  -I/app/vendor/glibc-2.7/string/ -I/app/vendor/glibc-2.7/time    -fpic  -g -O2  -c ctm.c -o ctm.o
ctm.c:29:25: error: gsl/gsl_rng.h: No such file or directory
ctm.c:30:28: error: gsl/gsl_vector.h: No such file or directory
ctm.c:31:28: error: gsl/gsl_matrix.h: No such file or directory
In file included from ctm.c:33:
gsl-wrappers.h:32: warning: type defaults to 'int' in declaration of 'gsl_vector'
gsl-wrappers.h:32: error: expected ';', ',' or ')' before '*' token
gsl-wrappers.h:33: error: expected ')' before '*' token
gsl-wrappers.h:34: error: expected ')' before '*' token
gsl-wrappers.h:35: warning: type defaults to 'int' in declaration of 'gsl_matrix'
gsl-wrappers.h:35: error: expected ';', ',' or ')' before '*' token
gsl-wrappers.h:36: error: expected ')' before '*' token
gsl-wrappers.h:37: error: expected ')' before '*' token
gsl-wrappers.h:38: error: expected ')' before '*' token
gsl-wrappers.h:39: warning: type defaults to 'int' in declaration of 'gsl_vector'
gsl-wrappers.h:39: error: expected ';', ',' or ')' before '*' token
gsl-wrappers.h:40: warning: type defaults to 'int' in declaration of 'gsl_matrix'
gsl-wrappers.h:40: error: expected ';', ',' or ')' before '*' token
gsl-wrappers.h:41: error: expected declaration specifiers or '...' before 'gsl_vector'
gsl-wrappers.h:42: error: expected declaration specifiers or '...' before 'gsl_matrix'
gsl-wrappers.h:43: error: expected declaration specifiers or '...' before 'gsl_vector'
gsl-wrappers.h:44: error: expected declaration specifiers or '...' before 'gsl_matrix'
gsl-wrappers.h:45: error: expected ')' before '*' token
gsl-wrappers.h:46: error: expected ')' before '*' token
gsl-wrappers.h:47: error: expected ')' before '*' token
gsl-wrappers.h:48: error: expected ')' before '*' token
gsl-wrappers.h:49: error: expected ')' before '*' token
gsl-wrappers.h:50: warning: type defaults to 'int' in declaration of 'gsl_vector'
gsl-wrappers.h:50: error: expected ';', ',' or ')' before '*' token
gsl-wrappers.h:51: error: expected ')' before '*' token
gsl-wrappers.h:52: error: expected ')' before '*' token
gsl-wrappers.h:53: error: expected ')' before '*' token
In file included from ctm.c:34:
ctm.h:40: error: expected specifier-qualifier-list before 'gsl_matrix'
ctm.h:55: error: expected specifier-qualifier-list before 'gsl_matrix'
ctm.c: In function 'new_llna_model':
ctm.c:45: error: 'llna_model' has no member named 'mu'
ctm.c:45: warning: implicit declaration of function 'gsl_vector_calloc'
ctm.c:46: error: 'llna_model' has no member named 'cov'
ctm.c:46: warning: implicit declaration of function 'gsl_matrix_calloc'
ctm.c:47: error: 'llna_model' has no member named 'inv_cov'
ctm.c:48: error: 'llna_model' has no member named 'log_beta'
ctm.c: In function 'new_llna_ss':
ctm.c:62: error: 'llna_ss' has no member named 'mu_ss'
ctm.c:63: error: 'llna_ss' has no member named 'cov_ss'
ctm.c:64: error: 'llna_ss' has no member named 'beta_ss'
ctm.c:64: error: 'llna_model' has no member named 'log_beta'
ctm.c:65: error: 'llna_ss' has no member named 'ndata'
ctm.c: In function 'del_llna_ss':
ctm.c:73: warning: implicit declaration of function 'gsl_vector_free'
ctm.c:73: error: 'llna_ss' has no member named 'mu_ss'
ctm.c:74: warning: implicit declaration of function 'gsl_matrix_free'
ctm.c:74: error: 'llna_ss' has no member named 'cov_ss'
ctm.c:75: error: 'llna_ss' has no member named 'beta_ss'
ctm.c: In function 'reset_llna_ss':
ctm.c:81: warning: implicit declaration of function 'gsl_matrix_set_all'
ctm.c:81: error: 'llna_ss' has no member named 'beta_ss'
ctm.c:82: error: 'llna_ss' has no member named 'cov_ss'
ctm.c:83: warning: implicit declaration of function 'gsl_vector_set_all'
ctm.c:83: error: 'llna_ss' has no member named 'mu_ss'
ctm.c:84: error: 'llna_ss' has no member named 'ndata'
ctm.c: In function 'write_ss':
ctm.c:90: error: 'llna_ss' has no member named 'cov_ss'
ctm.c:90: error: too many arguments to function 'printf_matrix'
ctm.c:91: error: 'llna_ss' has no member named 'beta_ss'
ctm.c:91: error: too many arguments to function 'printf_matrix'
ctm.c:92: error: 'llna_ss' has no member named 'mu_ss'
ctm.c:92: error: too many arguments to function 'printf_vector'
ctm.c: In function 'corpus_init':
ctm.c:103: error: 'gsl_rng' undeclared (first use in this function)
ctm.c:103: error: (Each undeclared identifier is reported only once
ctm.c:103: error: for each function it appears in.)
ctm.c:103: error: 'r' undeclared (first use in this function)
ctm.c:103: warning: implicit declaration of function 'gsl_rng_alloc'
ctm.c:103: error: 'gsl_rng_taus' undeclared (first use in this function)
ctm.c:108: warning: implicit declaration of function 'gsl_rng_set'
ctm.c:113: warning: implicit declaration of function 'vset'
ctm.c:113: error: 'llna_model' has no member named 'mu'
ctm.c:114: warning: implicit declaration of function 'mset'
ctm.c:114: error: 'llna_model' has no member named 'cov'
ctm.c:116: warning: implicit declaration of function 'matrix_inverse'
ctm.c:116: error: 'llna_model' has no member named 'cov'
ctm.c:116: error: 'llna_model' has no member named 'inv_cov'
ctm.c:117: error: 'llna_model' has no member named 'log_det_inv_cov'
ctm.c:117: warning: implicit declaration of function 'log_det'
ctm.c:117: error: 'llna_model' has no member named 'inv_cov'
ctm.c:126: warning: implicit declaration of function 'gsl_rng_uniform'
ctm.c:131: warning: implicit declaration of function 'minc'
ctm.c:131: error: 'llna_model' has no member named 'log_beta'
ctm.c:135: error: 'llna_model' has no member named 'log_beta'
ctm.c:137: error: 'llna_model' has no member named 'log_beta'
ctm.c:139: warning: implicit declaration of function 'mget'
ctm.c:139: error: 'llna_model' has no member named 'log_beta'
ctm.c:143: error: 'llna_model' has no member named 'log_beta'
ctm.c:145: error: 'llna_model' has no member named 'log_beta'
ctm.c:146: error: 'llna_model' has no member named 'log_beta'
ctm.c:149: warning: implicit declaration of function 'gsl_rng_free'
ctm.c: In function 'random_init':
ctm.c:164: error: 'gsl_rng' undeclared (first use in this function)
ctm.c:164: error: 'r' undeclared (first use in this function)
ctm.c:164: error: 'gsl_rng_taus' undeclared (first use in this function)
ctm.c:170: error: 'llna_model' has no member named 'mu'
ctm.c:171: error: 'llna_model' has no member named 'cov'
ctm.c:180: error: 'llna_model' has no member named 'log_beta'
ctm.c:183: error: 'llna_model' has no member named 'log_beta'
ctm.c:183: error: 'llna_model' has no member named 'log_beta'
ctm.c:185: error: 'llna_model' has no member named 'cov'
ctm.c:185: error: 'llna_model' has no member named 'inv_cov'
ctm.c:186: error: 'llna_model' has no member named 'log_det_inv_cov'
ctm.c:186: error: 'llna_model' has no member named 'inv_cov'
ctm.c: In function 'write_llna_model':
ctm.c:207: error: 'llna_model' has no member named 'log_beta'
ctm.c:212: error: 'llna_model' has no member named 'mu'
ctm.c:212: error: too many arguments to function 'printf_vector'
ctm.c:214: error: 'llna_model' has no member named 'cov'
ctm.c:214: error: too many arguments to function 'printf_matrix'
ctm.c:216: error: 'llna_model' has no member named 'inv_cov'
ctm.c:216: error: too many arguments to function 'printf_matrix'
ctm.c:219: error: 'llna_model' has no member named 'log_det_inv_cov'
ctm.c:224: error: 'llna_model' has no member named 'log_beta'
ctm.c:224: error: too many arguments to function 'printf_matrix'
make: *** [ctm.o] Error 1
ERROR: compilation failed for package 'topicmodels'
* removing '/app/vendor/R/lib64/R/library/topicmodels'

The downloaded source packages are in
        '/tmp/RtmpPBRvbA/downloaded_packages'
Updating HTML index of packages in '.Library'
Making packages.html  ... done
Warning message:
In install.packages("topicmodels") :
  installation of package 'topicmodels' had non-zero exit status
virtualstaticvoid commented 10 years ago

This appears to be due to the GNU Scientific Library (GSL) libraries missing.

ctm.c:29:25: error: gsl/gsl_rng.h: No such file or directory
ctm.c:30:28: error: gsl/gsl_vector.h: No such file or directory
ctm.c:31:28: error: gsl/gsl_matrix.h: No such file or directory

This library will need to be included in the buildpack.

metalaureate commented 10 years ago

Could point me in the direction of how to add them to the build pack?

On Dec 1, 2013, at 5:32 AM, Chris Stefano notifications@github.com wrote:

This appears to be due to the GNU Scientific Library (GSL) libraries missing.

ctm.c:29:25: error: gsl/gsl_rng.h: No such file or directory ctm.c:30:28: error: gsl/gsl_vector.h: No such file or directory ctm.c:31:28: error: gsl/gsl_matrix.h: No such file or directory This library will need to be included in the buildpack.

— Reply to this email directly or view it on GitHub.

virtualstaticvoid commented 10 years ago

Ok, I've created a new branch gsl, which includes it in the build.

Giving it a test at the moment.

metalaureate commented 10 years ago

Am I correctly installing it by changing .builpack url to

https://github.com/virtualstaticvoid/heroku-buildpack-r.git#65e118b

because I'm getting same error as before

and on heroku find . -name "gsl*" does not yield any relevant files

bwarren2 commented 10 years ago

Try https://github.com/virtualstaticvoid/heroku-buildpack-r/#gsl as your buildpack url

On Sun, Dec 1, 2013 at 1:36 PM, Simon Hill notifications@github.com wrote:

Am I correctly installing it by changing .builpack url to

https://github.com/virtualstaticvoid/heroku-buildpack-r.git#65e118b

because I'm getting same error as before

  • installing source package 'topicmodels' ... * package 'topicmodels' successfully unpacked and MD5 sums checked * libs "ctm.c:29:25: error: gsl/gsl_rng.h: No such file or directory ctm.c:30:28: error: gsl/gsl_vector.h: No such file or directory ctm.c:31:28: error: gsl/gsl_matrix.h: No such file or directory"

and on heroku find . -name "gsl*" does not yield any relevant files

— Reply to this email directly or view it on GitHubhttps://github.com/virtualstaticvoid/heroku-buildpack-r/issues/23#issuecomment-29579703 .

metalaureate commented 10 years ago

Thanks - yep same error

-----> Building runtime environment
=====> Downloading Buildpack: https://github.com/virtualstaticvoid/heroku-buildpack-r/
=====> Detected Framework: R
       Vendoring R 2.15.1
       Downloading and unpacking R binaries
       Executing init.r script

...

* installing *source* package 'topicmodels' ...
** package 'topicmodels' successfully unpacked and MD5 sums checked
** libs
ctm.c:29:25: error: gsl/gsl_rng.h: No such file or directory
ctm.c:30:28: error: gsl/gsl_vector.h: No such file or directory
ctm.c:31:28: error: gsl/gsl_matrix.h: No such file or directory
In file included from ctm.c:33:
...
make: *** [ctm.o] Error 1
ERROR: compilation failed for package 'topicmodels'
metalaureate commented 10 years ago

Any ideas if I am doing something wrong?

virtualstaticvoid commented 10 years ago

Hi Simon

Sorry I haven't been able to look more into this. I should have time later in the week.

metalaureate commented 10 years ago

No problem, thanks, let me know if there is anything I can do to help.

Sent from my phone.

On Dec 3, 2013, at 6:03 AM, Chris Stefano notifications@github.com wrote:

Hi Simon

Sorry I haven't been able to look more into this. I should have time later in the week. — Reply to this email directly or view it on GitHub.

virtualstaticvoid commented 10 years ago

@metalaureate I've created a new branch gsl2 and built the R binaries with the gsl library included. I deployed the build to S3.

Also, I created a test application, however it's reporting that the topicsmodels package is not available (for R version 2.15.1).

Would you mind having a go at getting topicsmodels installed. You can use https://github.com/virtualstaticvoid/heroku-buildpack-r.git#gsl2 as the buildpack Url.

metalaureate commented 10 years ago

I get these errors, which look like the same errors:

* installing *source* package 'topicmodels' ...
** package 'topicmodels' successfully unpacked and MD5 sums checked
** libs
ctm.c:29:25: error: gsl/gsl_rng.h: No such file or directory
ctm.c:30:28: error: gsl/gsl_vector.h: No such file or directory
ctm.c:31:28: error: gsl/gsl_matrix.h: No such file or directory
In file included from ctm.c:33:
gsl-wrappers.h:32: warning: type defaults to 'int' in declaration of 'gsl_vector'
gsl-wrappers.h:32: error: expected ';', ',' or ')' before '*' token
gsl-wrappers.h:33: error: expected ')' before '*' token
gsl-wrappers.h:34: error: expected ')' before '*' token
gsl-wrappers.h:35: warning: type defaults to 'int' in declaration of 'gsl_matrix'
...
ctm.c:224: error: 'llna_model' has no member named 'log_beta'
ctm.c:224: error: too many arguments to function 'printf_matrix'
make: *** [ctm.o] Error 1
ERROR: compilation failed for package 'topicmodels'
virtualstaticvoid commented 10 years ago

Hi Simon. After quite a bit of testing, I've finally managed to get the topicmodels package compiling, The gsl branch is updated accordingly.

Give it a go to confirm please.

metalaureate commented 10 years ago

Hi Chris,

Thanks - I installed gsl2 - correct?

topicsmodels now installs, but now the following fail:

Warning messages: 1: In install.packages(p, dependencies = TRUE) : installation of package 'rJava' had non-zero exit status 2: In install.packages(p, dependencies = TRUE) : installation of package 'RWekajars' had non-zero exit status 3: In install.packages(p, dependencies = TRUE) : installation of package 'RWeka' had non-zero exit status 4: In install.packages(p, dependencies = TRUE) : installation of package 'Snowball' had non-zero exit status

all now fail (they passed before). They are dependencies for tm - the term matrix library.

If you do not have root privileges, run R CMD javareconf -e to set all Java-related variables and then install rJava. ERROR: configuration failed for package 'rJava'

virtualstaticvoid commented 10 years ago

Do you have an init.r script with all these packages so I can test? Thanks.

metalaureate commented 10 years ago
#
# Example R code to install packages
# See http://cran.r-project.org/doc/manuals/R-admin.html#Installing-packages for details
#

###########################################################
# Update this line with the R packages to install:

my_packages = c("RJSONIO","RPostgreSQL","plyr","tm","XML","Snowball","slam","topicmodels")

###########################################################

install_if_missing = function(p) {
    if (p %in% rownames(installed.packages()) == FALSE) {
        install.packages(p, dependencies = TRUE)
    }
    else {
        cat(paste("Skipping already installed package:", p, "\n"))
    }
}
invisible(sapply(my_packages, install_if_missing))
virtualstaticvoid commented 10 years ago

Hi Simon

Thanks, I rebuilt the binaries as there seemed to be an issue with the linking to Java, and updated the gsl2 branch. Using your list of packages, I was able to get them all to install. There were a couple of compiler warnings though.

Build Log:

$ ./install 
Initialized empty Git repository in ~/heroku-buildpack-r/buildpack/test/gsl/.git/
[master (root-commit) f8b840d] initial
 3 files changed, 41 insertions(+)
 create mode 100755 init.r
 create mode 100755 install
 create mode 100644 prog.r
Creating frozen-tundra-7336... done, stack is cedar
BUILDPACK_URL=https://github.com/virtualstaticvoid/heroku-buildpack-r.git#gsl2
http://frozen-tundra-7336.herokuapp.com/ | git@heroku.com:frozen-tundra-7336.git

Git remote heroku added
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (5/5), 890 bytes | 0 bytes/s, done.
Total 5 (delta 0), reused 0 (delta 0)

-----> Fetching custom git buildpack... done
-----> R app detected
       Vendoring R 2.15.1
       Downloading and unpacking R binaries
       Executing init.r script
trying URL 'http://cran.revolutionanalytics.com/src/contrib/RJSONIO_1.0-3.tar.gz'
Content type 'application/x-gzip' length 1171725 bytes (1.1 Mb)
opened URL
==================================================
downloaded 1.1 Mb

* installing *source* package 'RJSONIO' ...
** package 'RJSONIO' successfully unpacked and MD5 sums checked
** libs
In file included from libjson/Source/JSONAllocator.h:4,
                 from JSONAllocator.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONMemory.h:6,
                 from libjson/Source/JSONChildren.h:6,
                 from JSONChildren.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from JSONDebug.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONNode.h:4,
                 from JSONIterators.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONMemory.h:6,
                 from JSONMemory.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONNode.h:4,
                 from JSONNode.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONNode.h:4,
                 from JSONNode_Mutex.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONPreparse.h:4,
                 from JSONPreparse.cpp:10:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONStream.h:4,
                 from JSONStream.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONValidator.h:4,
                 from JSONValidator.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONNode.h:4,
                 from libjson/Source/JSONWorker.h:4,
                 from JSONWorker.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/JSONNode.h:4,
                 from JSONWriter.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/JSONDefs.h:10,
                 from libjson/Source/JSONDebug.h:4,
                 from libjson/Source/internalJSONNode.h:4,
                 from internalJSONNode.cpp:1:
libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from libjson/Source/../Source/JSONDefs.h:10,
                 from libjson/Source/../libjson.h:4,
                 from libjson.cpp:8:
libjson/Source/../Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
libjson/Source/../Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from ./libjson/Source/JSONDefs.h:10,
                 from ./libjson/libjson.h:4,
                 from Rlibjson.h:1,
                 from rlibjson.c:1:
./libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
./libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
In file included from ./libjson/Source/JSONDefs.h:10,
                 from ./libjson/libjson.h:4,
                 from Rlibjson.h:1,
                 from rparser.c:1:
./libjson/Source/../JSONOptions.h:120:1: warning: "JSON_STREAM" redefined
<command-line>: warning: this is the location of the previous definition
./libjson/Source/../JSONOptions.h:256:1: warning: "JSON_VALIDATE" redefined
<command-line>: warning: this is the location of the previous definition
installing to /app/vendor/R/lib64/R/library/RJSONIO/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (RJSONIO)
Updating HTML index of packages in '.Library'
Making packages.html  ... done
also installing the dependency 'DBI'

trying URL 'http://cran.revolutionanalytics.com/src/contrib/DBI_0.2-7.tar.gz'
Content type 'application/x-gzip' length 194699 bytes (190 Kb)
opened URL
==================================================
downloaded 190 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/RPostgreSQL_0.4.tar.gz'
Content type 'application/x-gzip' length 477352 bytes (466 Kb)
opened URL
==================================================
downloaded 466 Kb

* installing *source* package 'DBI' ...
** package 'DBI' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
Creating a generic function for 'summary' from package 'base' in package 'DBI'
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (DBI)
* installing *source* package 'RPostgreSQL' ...
** package 'RPostgreSQL' successfully unpacked and MD5 sums checked
** libs
RS-PostgreSQL.c: In function 'RS_PostgreSQL_createDataMappings':
RS-PostgreSQL.c:446: warning: passing argument 1 of 'Rf_protect' from incompatible pointer type
installing to /app/vendor/R/lib64/R/library/RPostgreSQL/libs
** R
** inst
** preparing package for lazy loading
Creating a generic function for 'format' from package 'base' in package 'RPostgreSQL'
Creating a generic function for 'print' from package 'base' in package 'RPostgreSQL'
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (RPostgreSQL)
Updating HTML index of packages in '.Library'
Making packages.html  ... done
also installing the dependencies 'digest', 'stringr', 'evaluate', 'abind', 'testthat', 'foreach', 'doMC', 'itertools', 'iterators'

trying URL 'http://cran.revolutionanalytics.com/src/contrib/digest_0.6.4.tar.gz'
Content type 'application/x-gzip' length 79309 bytes (77 Kb)
opened URL
==================================================
downloaded 77 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/stringr_0.6.2.tar.gz'
Content type 'application/x-gzip' length 20636 bytes (20 Kb)
opened URL
==================================================
downloaded 20 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/evaluate_0.5.1.tar.gz'
Content type 'application/x-gzip' length 17396 bytes (16 Kb)
opened URL
==================================================
downloaded 16 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/abind_1.4-0.tar.gz'
Content type 'application/x-gzip' length 19642 bytes (19 Kb)
opened URL
==================================================
downloaded 19 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/testthat_0.7.1.tar.gz'
Content type 'application/x-gzip' length 26806 bytes (26 Kb)
opened URL
==================================================
downloaded 26 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/foreach_1.4.1.tar.gz'
Content type 'application/x-gzip' length 359347 bytes (350 Kb)
opened URL
==================================================
downloaded 350 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/doMC_1.3.1.tar.gz'
Content type 'application/x-gzip' length 153626 bytes (150 Kb)
opened URL
==================================================
downloaded 150 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/itertools_0.1-1.tar.gz'
Content type 'application/x-gzip' length 15595 bytes (15 Kb)
opened URL
==================================================
downloaded 15 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/iterators_1.0.6.tar.gz'
Content type 'application/x-gzip' length 287154 bytes (280 Kb)
opened URL
==================================================
downloaded 280 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/plyr_1.8.tar.gz'
Content type 'application/x-gzip' length 384462 bytes (375 Kb)
opened URL
==================================================
downloaded 375 Kb

* installing *source* package 'digest' ...
** package 'digest' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/digest/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (digest)
* installing *source* package 'stringr' ...
** package 'stringr' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (stringr)
* installing *source* package 'abind' ...
** package 'abind' successfully unpacked and MD5 sums checked
** R
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (abind)
* installing *source* package 'iterators' ...
** package 'iterators' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (iterators)
* installing *source* package 'plyr' ...
** package 'plyr' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/plyr/libs
** R
** data
**  moving datasets to lazyload DB
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (plyr)
* installing *source* package 'evaluate' ...
** package 'evaluate' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (evaluate)
* installing *source* package 'foreach' ...
** package 'foreach' successfully unpacked and MD5 sums checked
** R
** demo
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (foreach)
* installing *source* package 'itertools' ...
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (itertools)
* installing *source* package 'testthat' ...
** package 'testthat' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (testthat)
* installing *source* package 'doMC' ...
** package 'doMC' successfully unpacked and MD5 sums checked
** R
** demo
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (doMC)
Updating HTML index of packages in '.Library'
Making packages.html  ... done
Warning: dependency 'Rgraphviz' is not available
also installing the dependencies 'slam', 'filehash', 'proxy', 'SnowballC', 'XML'

trying URL 'http://cran.revolutionanalytics.com/src/contrib/slam_0.1-30.tar.gz'
Content type 'application/x-gzip' length 41156 bytes (40 Kb)
opened URL
==================================================
downloaded 40 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/filehash_2.2-1.tar.gz'
Content type 'application/x-gzip' length 133446 bytes (130 Kb)
opened URL
==================================================
downloaded 130 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/proxy_0.4-10.tar.gz'
Content type 'application/x-gzip' length 61418 bytes (59 Kb)
opened URL
==================================================
downloaded 59 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/SnowballC_0.5.tar.gz'
Content type 'application/x-gzip' length 150561 bytes (147 Kb)
opened URL
==================================================
downloaded 147 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/XML_3.98-1.1.tar.gz'
Content type 'application/x-gzip' length 1582216 bytes (1.5 Mb)
opened URL
==================================================
downloaded 1.5 Mb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/tm_0.5-9.1.tar.gz'
Content type 'application/x-gzip' length 487072 bytes (475 Kb)
opened URL
==================================================
downloaded 475 Kb

* installing *source* package 'slam' ...
** package 'slam' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/slam/libs
** R
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (slam)
* installing *source* package 'filehash' ...
** package 'filehash' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/filehash/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (filehash)
* installing *source* package 'proxy' ...
** package 'proxy' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/proxy/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (proxy)
* installing *source* package 'SnowballC' ...
** package 'SnowballC' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/SnowballC/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (SnowballC)
* installing *source* package 'XML' ...
** package 'XML' successfully unpacked and MD5 sums checked
rm: cannot remove `a.out.dSYM': Is a directory
** libs
EventParse.c: In function 'RS_XML_textHandler':
EventParse.c:419: warning: cast from pointer to integer of different size
NodeGC.c: In function 'R_xmlFreeDoc':
NodeGC.c:40: warning: cast from pointer to integer of different size
NodeGC.c: In function 'initDocRefCounter':
NodeGC.c:178: warning: assignment makes integer from pointer without a cast
NodeGC.c: In function 'incrementDocRefBy':
NodeGC.c:185: warning: cast from pointer to integer of different size
NodeGC.c: In function 'getNodeCount':
NodeGC.c:213: warning: cast from pointer to integer of different size
NodeGC.c: In function 'internal_incrementNodeRefCount':
NodeGC.c:229: warning: cast from pointer to integer of different size
NodeGC.c: In function 'R_getXMLRefCount':
NodeGC.c:240: warning: cast from pointer to integer of different size
NodeGC.c: In function 'checkDescendantsInR':
NodeGC.c:249: warning: cast from pointer to integer of different size
NodeGC.c: In function 'internal_decrementNodeRefCount':
NodeGC.c:269: warning: cast from pointer to integer of different size
NodeGC.c:307: warning: cast from pointer to integer of different size
NodeGC.c: In function 'clearNodeMemoryManagement':
NodeGC.c:385: warning: cast from pointer to integer of different size
XMLTree.c: In function 'R_createXMLNodeRefDirect':
XMLTree.c:1057: warning: cast from pointer to integer of different size
XMLTree.c: In function 'R_createXMLNodeRef':
XMLTree.c:1098: warning: cast from pointer to integer of different size
XMLTree.c:1099: warning: cast from pointer to integer of different size
XMLTree.c:1103: warning: assignment makes integer from pointer without a cast
XMLTree.c: In function 'R_xmlSearchNs':
XMLTree.c:1695: warning: comparison of distinct pointer types lacks a cast
installing to /app/vendor/R/lib64/R/library/XML/libs
** R
** inst
** preparing package for lazy loading
Creating a generic function for 'source' from package 'base' in package 'XML'
in method for 'xmlAttrsToDataFrame' with signature '"AsIs"': no definition for class "AsIs"
in method for 'readKeyValueDB' with signature '"AsIs"': no definition for class "AsIs"
in method for 'readSolrDoc' with signature '"AsIs"': no definition for class "AsIs"
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (XML)
* installing *source* package 'tm' ...
** package 'tm' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/tm/libs
** R
** data
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (tm)
Updating HTML index of packages in '.Library'
Making packages.html  ... done
also installing the dependencies 'RWekajars', 'RWeka', 'rJava'

trying URL 'http://cran.revolutionanalytics.com/src/contrib/RWekajars_3.7.10-1.tar.gz'
Content type 'application/x-gzip' length 5751089 bytes (5.5 Mb)
opened URL
==================================================
downloaded 5.5 Mb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/RWeka_0.4-21.tar.gz'
Content type 'application/x-gzip' length 410287 bytes (400 Kb)
opened URL
==================================================
downloaded 400 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/rJava_0.9-5.tar.gz'
Content type 'application/x-gzip' length 567468 bytes (554 Kb)
opened URL
==================================================
downloaded 554 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/Snowball_0.0-10.tar.gz'
Content type 'application/x-gzip' length 283355 bytes (276 Kb)
opened URL
==================================================
downloaded 276 Kb

* installing *source* package 'rJava' ...
** package 'rJava' successfully unpacked and MD5 sums checked
** libs
Note: examples/rtest.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: examples/rtest2.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
installing via 'install.libs.R' to /app/vendor/R/lib64/R/library/rJava
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (rJava)
* installing *source* package 'RWekajars' ...
** package 'RWekajars' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (RWekajars)
* installing *source* package 'RWeka' ...
** package 'RWeka' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (RWeka)
* installing *source* package 'Snowball' ...
** package 'Snowball' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (Snowball)
Updating HTML index of packages in '.Library'
Making packages.html  ... done
also installing the dependencies 'bitops', 'RCurl', 'modeltools', 'lasso2', 'lda', 'OAIHarvester'

trying URL 'http://cran.revolutionanalytics.com/src/contrib/bitops_1.0-6.tar.gz'
Content type 'application/x-gzip' length 8734 bytes
opened URL
==================================================
downloaded 8734 bytes

trying URL 'http://cran.revolutionanalytics.com/src/contrib/RCurl_1.95-4.1.tar.gz'
Content type 'application/x-gzip' length 870915 bytes (850 Kb)
opened URL
==================================================
downloaded 850 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/modeltools_0.2-21.tar.gz'
Content type 'application/x-gzip' length 14794 bytes (14 Kb)
opened URL
==================================================
downloaded 14 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/lasso2_1.2-18.tar.gz'
Content type 'application/x-gzip' length 258765 bytes (252 Kb)
opened URL
==================================================
downloaded 252 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/lda_1.3.2.tar.gz'
Content type 'application/x-gzip' length 360892 bytes (352 Kb)
opened URL
==================================================
downloaded 352 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/OAIHarvester_0.1-6.tar.gz'
Content type 'application/x-gzip' length 216920 bytes (211 Kb)
opened URL
==================================================
downloaded 211 Kb

trying URL 'http://cran.revolutionanalytics.com/src/contrib/topicmodels_0.1-12.tar.gz'
Content type 'application/x-gzip' length 845348 bytes (825 Kb)
opened URL
==================================================
downloaded 825 Kb

* installing *source* package 'bitops' ...
** package 'bitops' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/bitops/libs
** R
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (bitops)
* installing *source* package 'modeltools' ...
** package 'modeltools' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
Creating a generic function for 'na.fail' from package 'stats' in package 'modeltools'
Creating a generic function for 'na.pass' from package 'stats' in package 'modeltools'
Creating a generic function for 'na.omit' from package 'stats' in package 'modeltools'
Creating a generic function from function 'MEapply' in package 'modeltools'
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (modeltools)
* installing *source* package 'lasso2' ...
** package 'lasso2' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/lasso2/libs
** R
** data
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (lasso2)
* installing *source* package 'lda' ...
** package 'lda' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/lda/libs
** R
** data
** demo
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded

* DONE (lda)
* installing *source* package 'RCurl' ...
** package 'RCurl' successfully unpacked and MD5 sums checked
** libs
curl.c: In function 'getCurlInfoElement':
curl.c:689: warning: call to '_curl_easy_getinfo_err_curl_slist' declared with attribute warning: curl_easy_getinfo expects a pointer to struct curl_slist * for this info
curl.c: In function 'R_curl_easy_setopt':
curl.c:169: warning: call to '_curl_easy_setopt_err_write_callback' declared with attribute warning: curl_easy_setopt expects a curl_write_callback argument for this option
curl.c:171: warning: call to '_curl_easy_setopt_err_write_callback' declared with attribute warning: curl_easy_setopt expects a curl_write_callback argument for this option
curl.c:179: warning: call to '_curl_easy_setopt_err_debug_cb' declared with attribute warning: curl_easy_setopt expects a curl_debug_callback argument for this option
curl.c:187: warning: call to '_curl_easy_setopt_err_write_callback' declared with attribute warning: curl_easy_setopt expects a curl_write_callback argument for this option
curl.c:194: warning: call to '_curl_easy_setopt_err_progress_cb' declared with attribute warning: curl_easy_setopt expects a curl_progress_callback argument for this option
myUTF8.c: In function 'StringValue':
myUTF8.c:284: warning: passing argument 1 of 'Rf_mkCharLenCE' from incompatible pointer type
installing to /app/vendor/R/lib64/R/library/RCurl/libs
** R
** data
** inst
** preparing package for lazy loading
Creating a generic function for 'close' from package 'base' in package 'RCurl'
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (RCurl)
* installing *source* package 'topicmodels' ...
** package 'topicmodels' successfully unpacked and MD5 sums checked
** libs
installing to /app/vendor/R/lib64/R/library/topicmodels/libs
** R
** data
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (topicmodels)
* installing *source* package 'OAIHarvester' ...
** package 'OAIHarvester' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded

* DONE (OAIHarvester)
Updating HTML index of packages in '.Library'
Making packages.html  ... done
       R 2.15.1 successfully installed
-----> Discovering process types
       Procfile declares types -> (none)

-----> Compiled slug size: 160.4MB
-----> Launching... done, v4
       http://frozen-tundra-7336.herokuapp.com deployed to Heroku

To git@heroku.com:frozen-tundra-7336.git
 * [new branch]      master -> master

Running `R --no-save` attached to terminal... up, run.6241
WARNING: ignoring environment value of R_HOME

R version 2.15.1 (2012-06-22) -- "Roasted Marshmallows"
Copyright (C) 2012 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
Platform: x86_64-unknown-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> q()
metalaureate commented 10 years ago

Thanks! It broke Rserve somehow!

In the past, I have run:

var childProcess = require('child_process'),
    rserve;

rserve = childProcess.exec('R CMD Rserve --no-save', function (error, stdout, stderr) {
    if (error) {
        console.log(error.stack);
        console.log('Error code: '+error.code);
        console.log('Signal received: '+error.signal);
    }
    console.log('Child Process STDOUT: '+stdout);
    console.log('Child Process STDERR: '+stderr);
});

(I read your stackoverflow answer, to use the Procfile - the problem with that is dynos are isolated, so there is no easy way to get node to talk to rio if they are on separate dynos).

I get this error

Rserve call failed 2013-12-11T23:29:01.601391+00:00 app[worker.1]: Rserve initialization process exited with exit code 2 2013-12-11T23:29:01.603511+00:00 app[worker.1]: Error: Command failed: exec: 62: Rserve: not found Child Process STDOUT: WARNING: ignoring environment value of R_HOME

If I use your regular branch, Rserve starts fine, and there is no message about ignoring R_HOME. :(

Is the universe trying to tell me something?

virtualstaticvoid commented 10 years ago

@metalaureate I'd be interested to learn more how you are using the buildpack. I haven't used Rserve before.

I think @NebJ may have found the issue. I've merged pull request 24 with the changes.

metalaureate commented 10 years ago

That fixed it! You guys rock my world. Thank you.

@virtualstaticvoid I can say that you should never try to do what I am doing. It turns out to be a completely retarded use of Heroku. But since you asked, I work as a product manager in a machine learning team building consumer applications. I'm constantly building product app prototypes of concepts that involve ML algorithms usually modeled in R. For web app prototyping, I use angular.js, node.js, postgres, redis, and I take the models created by my team in R and run them as a client service using Rserve wrapped in https://github.com/albertosantini/node-rio, while they build out the Scala, Hbase, Hadoop stuff. Does that make sense?

It works great for prototyping, but Heroku should never be used like this in production, of course, because the small slug size and small memory limits of the dynos make this kind of thing unworkable, to say nothing of the other issues.

virtualstaticvoid commented 10 years ago

Wow, okay that clears that up :-)

As a side note, I've been looking into buildpack unit testing, so I should include some of the R packages you use to make sure nothing gets broken in future.

metalaureate commented 10 years ago

That would be awesome, thank you again.

NebJ commented 10 years ago

Great idea about buildpack unit testing! You should have a look to https://github.com/ddollar/heroku-anvil

EDIT: Since the buildpack use absolute path like /app/vendor..., it does not work on heroku-anvil.

mikechriskelly commented 8 years ago

Did this break again in a later update? Using master branch topicmodels fails to install, and using the old gsl2 branch the R app won't compile on cedar 14 stack. Problem still seems to be GSL. If I add the GSL buildpack before this one and set the correct LD_LIBRARY_PATH, I can successfully install topicmodels from the R command line in heroku, but it still fails during the build. Any suggestions?