I am trying to get LLVM/clang on a shared cluster that does not allow me to sudo at all. Is there any workaround to this so I can get llvm up and running?
LLVM does not require any sudo in order to be compiled / used. Just grab the release sources and compile according to the instructions (https://llvm.org/docs/GettingStarted.html#compiling-the-llvm-suite-source-code). You may want to check the prerequisites as well, as compilers might be quite old on these clusters.
Related
I'm running Centos 7 and am trying to build hipSYCL (see here)
The issue is that hipSYCL needs to have cmake info from the LLVM build (via the LLVM_DIR cmake variable).
This is problematic for me because building LLVM requires a massive 35Gb for the libraries and exes. I don't have that much memory to spare.
I did find a build of llvm-toolset-8.0 online for Centos 7 and installed it, but to my surprise, that didn't seem to work with LLVM_DIR because there's no cmake files (since I didn't build it locally).
So, my question would be, is there a way to build hipSYCL using pre-built LLVM-clang?
If I'm missing or misunderstanding something, I'd appreciate any help.
LLVM publishes the necessary cmake files, and the binary OS packages I've seen include it, generally in a directory called /usr/lib/llvm*/lib/cmake and in a package called something like llvm-*-dev.
I'm testing clickhouse. Finally I installed ClickHouse on my virtual machine. But I've got some problem to make it.
--> Finished Dependency Resolution
Error: Package: clickhouse-server-1.1.54236-4.el6.x86_64 (clickhouse)
Requires: libbfd-2.20.51.0.2-5.44.el6.so()(64bit)
But, I already have this "binutils-2.20.51.0.2-5.47". (More recent version)
[root#node01 ~]# rpm -qa | grep "binutils"
binutils-2.20.51.0.2-5.47.el6_9.1.x86_64
So, I removed binutils-2.20.51.0.2-5.47 and install binutils-2.20.51.0.2-5.44, it works well.
Is this common issue?
Thanks.
Chan.
The BFD libraries are only intended for internal use by binutils and related tools. There is no ABI stability even within the same release of CentOS (or Red Hat Enterprise Linux). This is why the library name can change from minor release to minor release, breaking RPM dependencies in this way.
You need to talk to whoever builds clickhouse. They need to bundle their own version of BFD if they truly need it, or use supported libraries such as libelf from elfutils if they need only a tiny subset.
I just build clang on Windows following this. To make it kind of complete it seems the compiler lldb should be made also.
How do I build lldb with mingw? Or it should be build with clang?
The people who work on the Windows port of lldb use Visual Studio. The instructions for building lldb on Windows are here:
http://lldb.llvm.org/build.html#BuildingLldbOnWindows
Basically follow the build instructions for Linux:
http://lldb.llvm.org/build.html#BuildingLldbOnLinux
I recommend you to use ninja for windows instead of make (it's faster) but that's up to you.
Preferably use a mingw build of python. You find instructions on this here:
Build Python with Mingw and gcc
Alternatively you can use cmake for python build:
https://github.com/python-cmake-buildsystem/python-cmake-buildsystem
In the chapter "Building LLDB" itself use the latest stable source from llvm, cland and lldb and rename the folder as shown in the directory hierarchy image.
If you want to try building llvm and clang with clang, try to put a build of clang + llvm in your path (and avoid VC + gcc). In this case you might need a clang-build of python too. I did not try this out.
If you get build errors try to use the headers from predef.sf.net.
I'm trying to use luagraph, a binding to the graphviz library:
http://luagraph.luaforge.net/index.html
To install, I'm using luarocks in Mac OS X. The following command is executed in bash:
luarocks install luagraph
The output is the following:
Installing https://luarocks.org/luagraph-1.0.4-1.src.rock... Using
https://luarocks.org/luagraph-1.0.4-1.src.rock... switching to 'build'
mode
Error: Could not find expected file graphviz/graph.h, or
graphviz/graph.h for GRAPHVIZ -- you may have to install GRAPHVIZ in
your system and/or pass GRAPHVIZ_DIR or GRAPHVIZ_INCDIR to the
luarocks command. Example: luarocks install luagraph
GRAPHVIZ_DIR=/usr/local
I have been installed graphviz using homebrew, but I can't figure out how to pass GRAPHVIZ_DIR or GRAPHVIZ_INCDIR properly.
How can I install luagraph?
I've updated LuaGRAPH a couple of weeks ago. It now supports the newest version of Graphviz based on the cgraph library instead of the old graph library.
There is one drawback: I couldn't get luagraph to run on Windows using mingw because of some runtime library issues (compiler and dll compatibility probably). Please look at the README file for more details.
I personally never produced a rockspec for this module. This was created by someone else based on a fork of my luagraph library.
Installation without Luarocks is simple. Download from
https://github.com/hleuwer/luagraph
and follow the instruction in the documentation and the README file. You need adopt a simple config file which is included by make.
Herbert
Well, luaGRAPH is still the top result when searching for lua and graph. So the question is still standing.
And, unfortunately, the answer is: luagraph is OLD, the last update happened before the ubuntu 14.04 was released. And there seem to be some notable changes in the system itself, the flags the error message show do not seem to work. On top of that, graphviz is now about 20 releases newer than the luarock recommends.
There now is a bare bone alternative lua package: graphviz
It is extremely basic, and documentation in not at all informative, but at least it works.
update: Luagraph may be working again, but not through rocks. See the other answer.
Z3's dependency on libgmp.so.3 is unresolved in the linux package, leaving the user to provide this library. However, this library is very old and is not readily available.
Does anyone know a method for getting around this issue? I am currently running x86_64 and cannot get around this missing dependency without a great deal of hassle.
Is it possible the linux packages could be fixed such they include the expected library in the distribution?
You can get GMP3 by executing sudo apt install libgmp3-dev.
I'm not a Linux expert, but this is the command I used to install GMP before I compiled Z3.
When I installed the virtual machine for running Linux 64, I think I didn't find a package for the more recent versions of GMP.
I will try again. If it doesn't work, I will download the most recent GMP tar ball and build it from scratch.
BTW, the Z3 for Linux 32 comes with two .so files. One of them has GMP statically linked.
The trick I used for building this .so file didn't work for the 64 bit version.
As I said, I'm not a Linux expert, any suggestions on how to build a better Z3 library for Linux x86_64 users are welcome.