Comments (12)
Yip, it did include tcl/tk, but if I run the capabilities()
function I see that it isn't available:
> capabilities()
jpeg png tiff tcltk X11 aqua
TRUE TRUE TRUE FALSE FALSE FALSE
http/ftp sockets libxml fifo cledit iconv
TRUE TRUE TRUE TRUE FALSE TRUE
NLS profmem cairo ICU long.double libcurl
TRUE TRUE TRUE FALSE TRUE TRUE
I'll investigate this further.
from heroku-buildpack-r.
from heroku-buildpack-r.
The problem is when the app runs and tries to use the packages.
To solve the gfortran missing reference I just added these lines to the compile file, just before it runs the init.r:
mkdir -p ~/.R
echo "F77=/app/.apt/usr/bin/gfortran-4.8">> ~/.R/Makevars
After it was solved solved I found out that the R binaries used do not provide tcl/tk support. It is usually built when R is compiled and it is a major component of geoR. You know how I can add support to it without having to recompile everything myself?
Should we close this issue and open another one for this tcl/tk problem?
Thank you for the fast reply :)
from heroku-buildpack-r.
Also, just to confirm, did this work before? There have been recent changes to the buildpack compile process, so I'm hoping I haven't broken something.
from heroku-buildpack-r.
In the meantime, I've created a geoR test application to try replicate your issue, however I'm getting a different issue:
Compile log during git push heroku ...
:
$ ./install
...
Initialized empty Git repository in /tmp/tmp.uy6FNBBbx6/.git/
[master (root-commit) 04c4202] initial
3 files changed, 286 insertions(+)
create mode 100755 init.r
create mode 100755 install
create mode 100644 prog.r
Creating app... done, ⬢ fathomless-journey-23462, stack is cedar-14
Setting buildpack to https://github.com/virtualstaticvoid/heroku-buildpack-r.git#cedar-14... done
https://fathomless-journey-23462.herokuapp.com/ | https://git.heroku.com/fathomless-journey-23462.git
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 2.88 KiB | 0 bytes/s, done.
Total 5 (delta 0), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Fetching set buildpack https://github.com/virtualstaticvoid/heroku-buildpack-r.git#cedar-14... done
remote: -----> R app detected
remote: Vendoring R 3.2.4 for cedar-14 stack (20160322-0811)
remote: Downloading and unpacking R binaries (http://heroku-buildpack-r.s3.amazonaws.com/cedar-14/R-3.2.4-binaries-20160322-0811.tar.gz)
remote: Executing init.r script
remote:
remote: =====> init.r Starting...
remote: also installing the dependencies ‘RandomFieldsUtils’, ‘sp’, ‘splancs’, ‘RandomFields’, ‘scatterplot3d’, ‘geoRglm’
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/RandomFieldsUtils_0.2.1.1.tar.gz'
remote: Content type 'application/octet-stream' length 116236 bytes (113 KB)
remote: ==================================================
remote: downloaded 113 KB
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/sp_1.2-3.tar.gz'
remote: Content type 'application/octet-stream' length 1179462 bytes (1.1 MB)
remote: ==================================================
remote: downloaded 1.1 MB
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/splancs_2.01-38.tar.gz'
remote: Content type 'application/octet-stream' length 99248 bytes (96 KB)
remote: ==================================================
remote: downloaded 96 KB
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/RandomFields_3.1.16.tar.gz'
remote: Content type 'application/octet-stream' length 1798789 bytes (1.7 MB)
remote: ==================================================
remote: downloaded 1.7 MB
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/scatterplot3d_0.3-37.tar.gz'
remote: Content type 'application/octet-stream' length 585767 bytes (572 KB)
remote: ==================================================
remote: downloaded 572 KB
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/geoRglm_0.9-8.tar.gz'
remote: Content type 'application/octet-stream' length 201150 bytes (196 KB)
remote: ==================================================
remote: downloaded 196 KB
remote:
remote: trying URL 'http://cran.revolutionanalytics.com/src/contrib/geoR_1.7-5.2.tar.gz'
remote: Content type 'application/octet-stream' length 421612 bytes (411 KB)
remote: ==================================================
remote: downloaded 411 KB
remote:
remote: * installing *source* package ‘RandomFieldsUtils’ ...
remote: ** package ‘RandomFieldsUtils’ successfully unpacked and MD5 sums checked
remote: configure: creating ./config.status
remote: config.status: creating src/Makevars
remote: PKG_CXXFLAGS = $(SHLIB_OPENMP_CXXFLAGS)
remote: PKG_LIBS = $(SHLIB_OPENMP_CXXFLAGS) $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
remote: ** libs
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c RFoptions.cc -o RFoptions.o
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c R_init.cc -o R_init.o
remote: gfortran -fpic -g -O2 -flto -c bckslvmodified.f -o bckslvmodified.o
remote: gfortran -fpic -g -O2 -flto -c cholmodified.f -o cholmodified.o
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c kleinkram.cc -o kleinkram.o
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c options.cc -o options.o
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c solve.cc -o solve.o
remote: gfortran -fpic -g -O2 -flto -c spamown.f -o spamown.o
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c sqrt.cc -o sqrt.o
remote: g++ -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fopenmp -fpic -g -O2 -flto -c struve.cc -o struve.o
remote: g++ -shared -L/app/vendor/R/lib/R/lib -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/app/.apt/usr/lib/libblas -L/app/.apt/usr/lib/lapack -o RandomFieldsUtils.so RFoptions.o R_init.o bckslvmodified.o cholmodified.o kleinkram.o options.o solve.o spamown.o sqrt.o struve.o -fopenmp -llapack -lblas -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu -L/app/.apt/usr/lib/gcc -lgfortran -lm -lquadmath -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu -L/app/.apt/usr/lib/gcc -lgfortran -lm -lquadmath -L/app/vendor/R/lib/R/lib -lR
remote: /usr/bin/ld: /app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8/libgomp.a(env.o): relocation R_X86_64_32 against `gomp_global_icv' can not be used when making a shared object; recompile with -fPIC
remote: /app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8/libgomp.a: error adding symbols: Bad value
remote: collect2: error: ld returned 1 exit status
remote: make: *** [RandomFieldsUtils.so] Error 1
remote: ERROR: compilation failed for package ‘RandomFieldsUtils’
remote: * removing ‘/app/vendor/R/lib/R/library/RandomFieldsUtils’
remote: * installing *source* package ‘sp’ ...
remote: ** package ‘sp’ successfully unpacked and MD5 sums checked
remote: ** libs
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c Rcentroid.c -o Rcentroid.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c gcdist.c -o gcdist.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c init.c -o init.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c pip.c -o pip.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c pip2.c -o pip2.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c sp_xports.c -o sp_xports.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c surfaceArea.c -o surfaceArea.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c zerodist.c -o zerodist.o
remote: gcc -std=gnu99 -shared -g -O2 -flto -fpic -L/app/vendor/R/lib/R/lib -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/app/.apt/usr/lib/libblas -L/app/.apt/usr/lib/lapack -o sp.so Rcentroid.o gcdist.o init.o pip.o pip2.o sp_xports.o surfaceArea.o zerodist.o -L/app/.apt/usr/lib -L/app/.apt/usr/lib/x86_64-linux-gnu -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/app/.apt/usr/lib/libblas -L/app/.apt/usr/lib/lapack -L/app/vendor/R/lib/R/lib -lR
remote: installing to /app/vendor/R/lib/R/library/sp/libs
remote: ** R
remote: ** data
remote: ** demo
remote: ** inst
remote: ** preparing package for lazy loading
remote: ** help
remote: *** installing help indices
remote: ** building package indices
remote: ** installing vignettes
remote: ** testing if installed package can be loaded
remote: * DONE (sp)
remote: * installing *source* package ‘scatterplot3d’ ...
remote: ** package ‘scatterplot3d’ successfully unpacked and MD5 sums checked
remote: ** R
remote: ** inst
remote: ** preparing package for lazy loading
remote: ** help
remote: *** installing help indices
remote: ** building package indices
remote: ** installing vignettes
remote: ** testing if installed package can be loaded
remote: * DONE (scatterplot3d)
remote: * installing *source* package ‘splancs’ ...
remote: ** package ‘splancs’ successfully unpacked and MD5 sums checked
remote: ** libs
remote: gfortran -fpic -g -O2 -flto -c areapl.f -o areapl.o
remote: gfortran -fpic -g -O2 -flto -c cncvwt.f -o cncvwt.o
remote: gfortran -fpic -g -O2 -flto -c dokhat.f -o dokhat.o
remote: gfortran -fpic -g -O2 -flto -c inpip.f -o inpip.o
remote: gfortran -fpic -g -O2 -flto -c ipippa.f -o ipippa.o
remote: gfortran -fpic -g -O2 -flto -c iplace.f -o iplace.o
remote: gfortran -fpic -g -O2 -flto -c k12hat.f -o k12hat.o
remote: gfortran -fpic -g -O2 -flto -c kernel3d.f -o kernel3d.o
remote: gfortran -fpic -g -O2 -flto -c khvc.f -o khvc.o
remote: gfortran -fpic -g -O2 -flto -c khvmat.f -o khvmat.o
remote: gfortran -fpic -g -O2 -flto -c krnnrm.f -o krnnrm.o
remote: gfortran -fpic -g -O2 -flto -c krnqne.f -o krnqne.o
remote: gfortran -fpic -g -O2 -flto -c krnqrt.f -o krnqrt.o
remote: gfortran -fpic -g -O2 -flto -c nndist.f -o nndist.o
remote: gfortran -fpic -g -O2 -flto -c plarea.f -o plarea.o
remote: gcc -std=gnu99 -I/app/vendor/R/lib/R/include -DNDEBUG -I/app/.apt/usr/include -I/usr/local/include -fpic -g -O2 -flto -c ptinpoly.c -o ptinpoly.o
remote: gfortran -fpic -g -O2 -flto -c sekhat.f -o sekhat.o
remote: gfortran -fpic -g -O2 -flto -c sort.f -o sort.o
remote: gfortran -fpic -g -O2 -flto -c sort2.f -o sort2.o
remote: gfortran -fpic -g -O2 -flto -c stkhat.f -o stkhat.o
remote: gfortran -fpic -g -O2 -flto -c stsecal.f -o stsecal.o
remote: gfortran -fpic -g -O2 -flto -c tribble.f -o tribble.o
remote: gfortran -fpic -g -O2 -flto -c twodimmse.f -o twodimmse.o
remote: gfortran -fpic -g -O2 -flto -c weight.f -o weight.o
remote: gcc -std=gnu99 -shared -g -O2 -flto -fpic -L/app/vendor/R/lib/R/lib -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/app/.apt/usr/lib/libblas -L/app/.apt/usr/lib/lapack -o splancs.so areapl.o cncvwt.o dokhat.o inpip.o ipippa.o iplace.o k12hat.o kernel3d.o khvc.o khvmat.o krnnrm.o krnqne.o krnqrt.o nndist.o plarea.o ptinpoly.o sekhat.o sort.o sort2.o stkhat.o stsecal.o tribble.o twodimmse.o weight.o -L/app/.apt/usr/lib -L/app/.apt/usr/lib/x86_64-linux-gnu -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/app/.apt/usr/lib/libblas -L/app/.apt/usr/lib/lapack -L/app/.apt/usr/lib/gcc/x86_64-linux-gnu -L/app/.apt/usr/lib/gcc -lgfortran -lm -lquadmath -L/app/vendor/R/lib/R/lib -lR
remote: installing to /app/vendor/R/lib/R/library/splancs/libs
remote: ** R
remote: ** data
remote: ** inst
remote: ** preparing package for lazy loading
remote: ** help
remote: *** installing help indices
remote: ** building package indices
remote: ** testing if installed package can be loaded
remote: * DONE (splancs)
remote: ERROR: dependency ‘RandomFieldsUtils’ is not available for package ‘RandomFields’
remote: * removing ‘/app/vendor/R/lib/R/library/RandomFields’
remote: ERROR: dependency ‘RandomFields’ is not available for package ‘geoR’
remote: * removing ‘/app/vendor/R/lib/R/library/geoR’
remote: ERROR: dependency ‘geoR’ is not available for package ‘geoRglm’
remote: * removing ‘/app/vendor/R/lib/R/library/geoRglm’
remote:
remote: The downloaded source packages are in
remote: ‘/tmp/RtmpVIyK1o/downloaded_packages’
remote: Updating HTML index of packages in '.Library'
remote: Making 'packages.html' ... done
remote: Warning messages:
remote: 1: In install.packages(p, dependencies = TRUE) :
remote: installation of package ‘RandomFieldsUtils’ had non-zero exit status
remote: 2: In install.packages(p, dependencies = TRUE) :
remote: installation of package ‘RandomFields’ had non-zero exit status
remote: 3: In install.packages(p, dependencies = TRUE) :
remote: installation of package ‘geoR’ had non-zero exit status
remote: 4: In install.packages(p, dependencies = TRUE) :
remote: installation of package ‘geoRglm’ had non-zero exit status
remote:
...omitted the rest of the log
The problem seems to start with the RandomFieldsUtils
package failing to build:
remote: /usr/bin/ld: /app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8/libgomp.a(env.o): relocation R_X86_64_32 against `gomp_global_icv' can not be used when making a shared object; recompile with -fPIC
remote: /app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8/libgomp.a: error adding symbols: Bad value
remote: collect2: error: ld returned 1 exit status
remote: make: *** [RandomFieldsUtils.so] Error 1
I can't replicate the gfortran issue though.
from heroku-buildpack-r.
On the question of tcl/tk
, R is compiled with this included. See the build_r#L134 file in the build project.
I'm going to check whether the 20151120-0000
build included this though ~ need to find the build log.
from heroku-buildpack-r.
I have noticed that a project that pushes to cloud foundry just fine as of build e366cc3 now fails immediately during the buildpack compile phase. Issues seem to start at build 1f9a873
logs:
2016-07-18T13:10:43.16-0500 [STG/22] OUT -----> Downloaded app package (8.7M)
2016-07-18T13:10:48.25-0500 [STG/22] OUT -----> Downloaded app buildpack cache (133M)
2016-07-18T13:10:48.43-0500 [STG/0] OUT Staging failed: Buildpack compilation step failed
2016-07-18T13:10:48.43-0500 [STG/0] ERR
2016-07-18T13:10:48.57-0500 [API/0] ERR encountered error: App staging failed in the buildpack compile phase
from heroku-buildpack-r.
Thank you very much for your time :)
It is weird you can't replicate the gfortran problem, but it's ok. It worked fine after I inserted the lines I mentioned.
I didn't get this error you showed with the RandomForest package, but I am using the compile file from this commit e366cc3
I have no idea why tcl/tk is not available though
from heroku-buildpack-r.
I've figured out the tcl/tk issue and fixed it. There was an issue resolving tclConfig.sh
and tkConfig.sh
during the build process. It's fixed in the heroku-buildpack-r-build project.
I'll do some further tests, and then make a new build of R 3.3.1 to include the fix.
from heroku-buildpack-r.
That is awesome!
Could you rebuild the R 3.2.2 too, please?
Thank you :)
from heroku-buildpack-r.
I've created the builds as requested. You can use the cedar-14-refresh branch to give it a test to confirm.
Also #75 pull request, which I'll merge once testing is complete.
from heroku-buildpack-r.
I've merged #75 which fixes this.
from heroku-buildpack-r.
Related Issues (20)
- I would really appreciate a walkthrough for a regular R user HOT 3
- renv 12 in my renv.lock file breaks the 'compilation' HOT 5
- GPG error HOT 3
- Rplumber test application delivers error HOT 5
- Increasing timeout HOT 1
- Support heroku-20 stack HOT 1
- Building with dokku HOT 2
- IsoSpecR not installed
- Skip BUILD_DIR to /app rsync when building in /app
- There is no package called 'renv' HOT 2
- Multiple-app hosting unavailable HOT 6
- Timeout when installing HOT 3
- Slow build time - Caching issue? HOT 2
- Authentication/Browser Problem when deployed. HOT 7
- Add Support for Heroku-22 HOT 9
- Add telegram.bot example and default packages HOT 6
- Use reticulate package HOT 1
- Aptfile installation fails HOT 1
- Could I use cloud native build packs? HOT 2
- renv 1.0.2 Error in if (n == 1) word else paste(word, "s", sep = ""): app[web.1]: the condition has length > 1 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from heroku-buildpack-r.