GR.jl
GR.jl copied to clipboard
GR build error on FreeBSD
Hi,
It seems the main error is that the BDS binary does not exist. Is it a source error or does the binary really not exist?
Building GR → `~/.julia/packages/GR/f1Iqi/deps/build.log`
┌ Error: Error building `GR`:
│ tar: Error opening archive: Failed to open 'downloads/gr-0.42.0-FreeBSD-x86_64.tar.gz'
│ [ Info: Downloading pre-compiled GR 0.42.0 FreeBSD binary
┌ Error: Download failed: curl: (22) The requested URL returned error: 404 Not Found
versioninfo() Julia Version 1.2.0 Commit c6da87ff4b (2019-08-20 00:03 UTC) Platform Info: OS: FreeBSD (x86_64-unknown-freebsd11.2) CPU: Intel(R) Xeon(R) CPU E5-1620 0 @ 3.60GHz WORD_SIZE: 64 LIBM: libopenlibm LLVM: libLLVM-6.0.1 (ORCJIT, sandybridge)
We don't provide binaries for FreeBSD. You will have to build gr
from source and install it in /usr/local
or in your home directory. Please refer to the GR documentation for further information.
Building on FreeBSD 12.1 is easy. Here is what I did:
-
Get gr-master.zip from https://github.com/sciapp/gr
-
cd ~/build unzip -q ../Downloads/gr-master.zip
-
Edit lib/Preflight: a) #!/usr/local/bin/bash b) if [ -f /usr/local/bin/python3.7 ]
-
Edit Makefile:
GRDIR = /opt/gr CONFIG = xft=no
UNAME := $(shell uname)
- Edit gr-master/lib/gr3/gr3_internals.h:
#elif defined(linux) || defined(FreeBSD) /* OpenGL Extension to the X Window System (GLX) on Linux */ #define GR3_USE_GLX #include "gr3_glx.h" #elif defined(_WIN32)
-
make
-
sudo gmake install
-
In julia,
ENV["GRDIR"] = "/opt/gr" ] add GR
I find this to not work on
# uname -a
FreeBSD 12.2-Stable r366737 GENERIC amd64
I don't see the point of 3)
.
In the mean time, It looks like the 4)
was merged in v0.51.0
For the rest, I have to run gmake
to get anywhere. make
breaks on the Makefile syntax (line 67).
I my case, the gmake Makedefs
does not find much.
#gmake Makedefs
Building GR Framework
---------------------
C: yes [FreeBSD clang version 10.0.1 ([email protected]:llvm/llvm-project.git llvmorg-10.0.1-0-gef32c611aa2)]
C++: yes [FreeBSD clang version 10.0.1 ([email protected]:llvm/llvm-project.git llvmorg-10.0.1-0-gef32c611aa2)]
Python: no [not found]
LaTeX: yes [version 3.14159265-2.6-1.40.16]
dvipng: yes [version 1.15]
Qt4: no [Qt4 API not found]
Qt5: yes [version 5.15.0]
wxWidgets: no [wx-config not found]
GTK+: yes [version 2.24.32]
X11: no [X11 API not found]
Xft: no [disabled]
Ghostscript: no [GS API not found]
GLFW: no [GLFW 3.x API not found]
OpenGL: no [OpenGL API not found]
0MQ: no [0MQ 3.x API not found]
ffmpeg: no [required APIs not found]
Cairo: no [Cairo not found]
libtiff: no [libtiff not found]
I can manually tell it where things are.
Eg. to find python
go to lib/Preflight:94
and the 3.7
after python
and so on.
Which, for obvious reasons, is not a great solution.
Any ideas what could have broken it and how to conveniently unbreak the (g)make
?