Comments (4)
Hello,
Thanks a lot for your interest. The 'master' branch is somewhat outdated. Please check the 'bigmerge' branch, which is under active development and should become 'master' within maybe a month or so. It now supports LLVM 3.7-8.0 (and I'm checking regularly on LLVM ToT as well), and the test suite runs somewhat reliably. I just checked xl2, and it looks OK too.
Regarding Ubuntu, you pointed out I was insufficiently testing it. I only had an Ubuntu 16 VM, which fails to compile some recorder stuff because GCC 5.0.4 is old and is not too smart about "friend name injection", so it fails with an error about _recorder_arg not being found on GCPtr (it's a compiler bug, and one that is not too easy to workaround).
I've just finished installing Ubuntu 18, and I will try tomorrow. Chances are you would be more lucky there (I hope). But if not, I will fix it quickly.
I will respond to your questions regarding dev plans on Grenouille Bouillie.
from xl.
I checked out bigmerge, and FYI I'll post the output for make
now:
make[1]: Entering directory '/home/pp/git/xl'
[BEGIN] opt linux in [top]
make[2]: Entering directory '/home/pp/git/xl/recorder'
[BEGIN] opt linux in [top]recorder/
[BUILD] librecorder.so
[END] opt linux in [top]recorder/
make[2]: Leaving directory '/home/pp/git/xl/recorder'
make[2]: Entering directory '/home/pp/git/xl/src'
/bin/bash: llvm-config: command not found
[INFO] Building with LLVM version
[BEGIN] opt linux in [top]src/
[VARIANT] lib
make[3]: Entering directory '/home/pp/git/xl/src'
/bin/bash: llvm-config: command not found
[INFO] Building with LLVM version
[BEGIN] opt linux in [top]src/[lib]
/bin/bash: llvm-config: command not found
/bin/bash: llvm-config: command not found
/bin/bash: llvm-config: command not found
[COMPILE 1/34] llvm-crap.cpp
In file included from llvm-crap.cpp:40:0:
llvm-crap.h:44:20: error: operator '<' has no left operand
#elif LLVM_VERSION < 370
^
In file included from llvm-crap.h:51:0,
from llvm-crap.cpp:40:
llvm-crap.h:311:19: error: operator '>=' has no left operand
# if LLVM_VERSION >= 350 && LLVM_VERSION < 360
^~
llvm-crap.h:319:19: error: operator '>=' has no left operand
# if LLVM_VERSION >= 370 && LLVM_VERSION < 380
^~
llvm-crap.h:324:19: error: operator '>=' has no left operand
# if LLVM_VERSION >= 400
^~
In file included from llvm-crap.cpp:40:0:
llvm-crap.h:55:10: fatal error: llvm/IR/Type.h: No such file or directory
#include <llvm/IR/Type.h>
^~~~~~~~~~~~~~~~
compilation terminated.
../make-it-quick/rules.mk:465: recipe for target '/home/pp/git/xl/.objects/linux/opt/src/llvm-crap.cpp.o' failed
make[3]: *** [/home/pp/git/xl/.objects/linux/opt/src/llvm-crap.cpp.o] Error 1
make[3]: Leaving directory '/home/pp/git/xl/src'
../make-it-quick/rules.mk:364: recipe for target 'lib.variant' failed
make[2]: *** [lib.variant] Error 2
make[2]: Leaving directory '/home/pp/git/xl/src'
make-it-quick/rules.mk:361: recipe for target 'src.recurse' failed
make[1]: *** [src.recurse] Error 2
make[1]: Leaving directory '/home/pp/git/xl'
real 0m0.527s
user 0m0.307s
sys 0m0.189s
5 Errors, 0 Warnings in /home/pp/git/xl/.logs/build-linux-opt-20190411-143453.log
make-it-quick/rules.mk:203: recipe for target 'opt' failed
make: *** [opt] Error 2
Really appreciate all the years of work you put into this, and I hope many people will be able to benefit from it.
from xl.
/bin/bash: llvm-config: command not found
You need to install llvm :-) apt-get install llvm-dev
should do it.
I'll make sure the build aborts right away instead of trying to compile stuff.
from xl.
Thanks, I did check for llvm but don't know very much about it. I had libllvm7 and 6.0 but that was all. Now it has installed llvm-6.0, and YES it builds!
from xl.
Related Issues (20)
- Cleanup the runtime from old / obsolete functions
- Convert XL native modules to XL_NATIVE
- Implement modules
- Error evaluation rules
- Remove remnants of bytecode interpreter (or, alternatively, fix it) HOT 5
- Fast compiler similar to what was used in Tao3D HOT 1
- Improve llvm-crap to deal with deprecated functions in LLVM 9.0.1
- Chat room? HOT 1
- [Comment/Suggestion] The Definition Operator HOT 5
- Conceptual question: how is this language different than other prologs? HOT 1
- Imperative flavour: continue & break in loops HOT 4
- Add to https://github.com/kostya/benchmarks/
- NULL/nil/none/void/... value considered harmful (a "billion dollar mistake" of Tony Hoare) HOT 10
- Treat float literals as decimal float literals and not as binary float literals HOT 2
- Nubie feedback - can't build HOT 4
- Can't build native/HelloWorld HOT 3
- Basic Examples Compiler Explanation HOT 1
- Data Inheritance HOT 1
- A small scheme VM HOT 1
- Typo in opcodes.h HOT 1
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 xl.