-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update require build tools in README #18530
Conversation
Notes: - LLVM fails to build unless you have Python 2.7+ installed: - cmake fails to build libgit2 unless the version is at least 3.1.2. For details see: https://cmake.org/Bug/view.php?id=15386
the issue with cmake is linux specific, so the minimum version isn't the same everywhere |
@tkelman fair criticism. Would changing it to |
That sounds good to me. As a future note, when we switch to llvm-3.9+, we will need to update this again to say CMake >= 3.4.3 |
It's not true for all Linux distros though, only those with certain versions of openssl. Maybe just put this as a build troubleshooting note along with what the error looks like. |
@tkelman I've added a row to build troubleshooting. I've left in the |
@@ -217,6 +217,7 @@ Install or contact your systems administrator to install a more recent version o | |||
------------------------|--------------------- | |||
OpenBLAS build failure | Set one of the following build options in `Make.user` and build again: <ul><li> `OPENBLAS_TARGET_ARCH=BARCELONA` (AMD CPUs) or `OPENBLAS_TARGET_ARCH=NEHALEM` (Intel CPUs)<ul>Set `OPENBLAS_DYNAMIC_ARCH = 0` to disable compiling multiple architectures in a single binary.</ul></li><li> `OPENBLAS_NO_AVX2 = 1` disables AVX2 instructions, allowing OpenBLAS to compile with `OPENBLAS_DYNAMIC_ARCH = 1` using old versions of binutils </li><li> `USE_SYSTEM_BLAS=1` uses the system provided `libblas` <ul><li>Set `LIBBLAS=-lopenblas` and `LIBBLASNAME=libopenblas` to force the use of the system provided OpenBLAS when multiple BLAS versions are installed. </li></ul></li></ul><p> If you get an error that looks like ```../kernel/x86_64/dgemm_kernel_4x4_haswell.S:1709: Error: no such instruction: `vpermpd $ 0xb1,%ymm0,%ymm0'```, then you need to set `OPENBLAS_DYNAMIC_ARCH = 0` or `OPENBLAS_NO_AVX2 = 1`, or you need a newer version of `binutils` (2.18 or newer). ([Issue #7653](https://github.com/JuliaLang/julia/issues/7653)) | |||
Illegal Instruction error | Check if your CPU supports AVX while your OS does not (e.g. through virtualization, as described in [this issue](https://github.com/JuliaLang/julia/issues/3263)). | |||
<a name="LibGit2-Build-Failure"/> LibGit2 build failure | If LibGit2 configuration step reports `CMake Error at /usr/share/cmake-3.0/Modules/FindOpenSSL.cmake:294 (list):` then the version [OpenSSL and CMake are probably incompatible](https://cmake.org/Bug/view.php?id=15386). The recommended solution is to upgrade the version of CMake to 3.1.2 or above. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
versions of
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catch
upgrading isn't strictly necessary yet if you don't hit this issue, and can be a bit messy unless you just use the cmake binaries. there will be a stricter minimum version when we switch to llvm 3.9 or higher. many of the stable/LTS linux distros still have cmake 2.8.x which still works for now |
Fair enough. I'll remove the version requirement out of the build tool section |
* Update require build tools Notes: - LLVM fails to build unless you have Python 2.7+ installed: - cmake fails to build libgit2 unless the version is at least 3.1.2. For details see: https://cmake.org/Bug/view.php?id=15386 * Fix Python link * Add build troubleshooting row * Remove CMake version requirement (cherry picked from commit a0cec60)
I've been building Julia 0.5 from source in a Docker container and noticed that the required build tools needed a slight update:
For details see: https://cmake.org/Bug/view.php?id=15386