Comments (8)
This kind of error would imply that gcc is not compiling with C++11 features enabled. What is the output from:
llvm-config --cxxflags
from llvmlite.
$ llvm-config --cxxflags
-I/usr/lib/llvm-3.5/include -DNDEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -g -O2 -fomit-frame-pointer -fvisibility-inlines-hidden -fno-exceptions -fPIC -Woverloaded-virtual -ffunction-sections -fdata-sections -Wcast-qual
from llvmlite.
Hmm... We should be adding the appropriate C++11 flag somewhere. As a workaround, can you try adding -std=c++11
to this line: https://github.com/numba/llvmlite/blob/master/ffi/Makefile.linux#L6
from llvmlite.
Thanks! Seems like it worked. Compile now does not raise any errors. The next error i'm getting is
/usr/bin/ld: cannot find -ledit
from llvmlite.
Found it. it was a missing dependency on libedit-dev. Now it it seems the build completes. By the way, Linker.h needed a symbolic link because LLVM moved it up one dir.
from llvmlite.
Oh, now I remember the source of this issue! The problem is that Ubuntu 14.04 ships a pre-release version of LLVM 3.5. It is from 5 months prior to the official LLVM 3.5 release, and there are various differences, like ones you have discovered.
You should be aware that we do not test Numba with this pre-release version of LLVM. If you run into trouble, you'll want to build the official LLVM release from scratch.
from llvmlite.
That seems to be the case. Apt-get fetched svn201651, dated Feb 19, but the release is Sep 3.
At any rate, I already managed to compile with the shipped version. LLVM have a binary for ubuntu, and Debian looks like it ships something more recent (it has the libedit dependency), so these are two options to look at before building. Something is broken in the supply chain in Ubuntu. Maybe put a note on the readme?
from llvmlite.
Yes, if an Ubuntu LTS release is shipping a pre-release LLVM, we should warn people.
from llvmlite.
Related Issues (20)
- Another suspiciously prunable nrt refcount pattern HOT 1
- Use Alias Analysis for pruning NRT-related refct calls HOT 4
- Force static linking for libLLVM HOT 3
- llvmlite 0.42.0 Checklist
- Symbol not found when building on arm64 platform macOSX HOT 1
- Add flag to IRBuilder.if_else to control whether an "endif" block should be created
- Add `numba` and `llvmlite` `musl` wheels for `alpine` support HOT 8
- RuntimeError: No available targets are compatible with triple "arm-unknown-linux-gnu" HOT 4
- Add "align" option for `IRBuilder.alloca` HOT 1
- llvmlite 0.43.0rc1 Checklist HOT 4
- Upload wheels and sdist to PyPI. (upload from `ci_artifacts`). HOT 1
- A concrete case for potential ref-pruning chances
- LLVM update plan? HOT 3
- llvmlite.binding.TargetMachine.emit_object() emits unknown object format on Windows HOT 2
- Enable `interleave` for Loop Optimization HOT 4
- Expose module simplification pipeline and extension points with new pass manager
- llvmlite 0.43.0 Checklist HOT 1
- How to solve: Issue with `llvmlite` installation in Termux due to LLVM version mismatch HOT 5
- llvmlite do not work with llvm 18.1.7 on MacOS Sonoma (Apple M1) HOT 6
- macOS CI needs updating: macOS builds browning out
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 llvmlite.