Difference between revisions of "LLVM Lite for Python"

From Supercomputación y Cálculo Científico UIS
 
Line 5: Line 5:
 
==== Descargar el software de llvm-3.6 ====
 
==== Descargar el software de llvm-3.6 ====
  
cd /usr/local/src
+
cd /usr/local/src wget [http://llvm.org/releases/3.7.0/llvm-3.7.0.src.tar.xz http://llvm.org/releases/3.7.0/llvm-3.7.0.src.tar.xz]
wget http://llvm.org/releases/3.7.0/llvm-3.7.0.src.tar.xz
 
  
 
==== Desempaquetar ====
 
==== Desempaquetar ====
  
tar xJvf llvm-3.7.0.src.tar.xz
+
tar xJvf llvm-3.7.0.src.tar.xz
  
 
==== Compilar ====
 
==== Compilar ====
  
cd llvm-3.7.0.src
+
cd llvm-3.7.0.src mkdir mybuild cd !$ cmake .. make -j25
mkdir mybuild
 
cd !$
 
cmake ..
 
make -j25
 
  
 
==== Mover los binarios a un directorio general de instalación ====
 
==== Mover los binarios a un directorio general de instalación ====
  
cd ..
+
cd .. mv mybuild /usr/local/llvm-3.7.0 rsync -av /usr/local/src/llvm-3.7.0.src/include/ /usr/local/llvm-3.7.0/include/
mv mybuild /usr/local/llvm-3.7.0
 
rsync -av /usr/local/src/llvm-3.7.0.src/include/ /usr/local/llvm-3.7.0/include/
 
  
 
==== Descargar los fuentes de llvmlite ====
 
==== Descargar los fuentes de llvmlite ====
  
mkdir /usr/local/src/llvmlite
+
mkdir /usr/local/src/llvmlite cd /usr/local/src/llvmlite pip2 install -d ./ llvmlite tar xvzf llvmlite-0.8.0.tar.gz
cd /usr/local/src/llvmlite
 
pip2 install -d ./ llvmlite
 
tar xvzf llvmlite-0.8.0.tar.gz
 
  
 
==== Modificar Makefile ====
 
==== Modificar Makefile ====
  
cd llvmlite-0.8.0/ffi/
+
cd llvmlite-0.8.0/ffi/
  
 
==== Edite el archivo ====
 
==== Edite el archivo ====
  
Makefile.linux
+
Makefile.linux
  
 
Y modifique las siguientes líneas para que se vean así
 
Y modifique las siguientes líneas para que se vean así
  
CXXFLAGS = $(LLVM_CXXFLAGS) -flto -L/usr/local/llvm-3.6/lib/ -I/usr/local/llvm-3.6/include
+
<nowiki>CXXFLAGS = $(LLVM_CXXFLAGS) -flto -L/usr/local/llvm-3.6/lib/ -I/usr/local/llvm-3.6/include LDFLAGS = -flto `$(LLVM_CONFIG) --ldflags` -Wl,--exclude-libs=ALL -L/usr/local/llvm-3.6/lib/ -I/usr/local/llvm-3.6/include LIBS = $(LLVM_LIBS) #-lLLVMOProfileJIT</nowiki>
LDFLAGS = -flto `$(LLVM_CONFIG) --ldflags` -Wl,--exclude-libs=ALL -L/usr/local/llvm-3.6/lib/ -I/usr/local/llvm-3.6/include
 
LIBS = $(LLVM_LIBS) #-lLLVMOProfileJIT
 
  
7) Configurar la variable de ambiente
+
==== Configurar la variable de ambiente ====
  
export LLVM_CONFIG=/usr/local/llvm-3.7.0/bin/llvm-config
+
export LLVM_CONFIG=/usr/local/llvm-3.7.0/bin/llvm-config
  
8) Editar el archivo
+
==== Editar el archivo ====
  
ffi/targets.cpp
+
ffi/targets.cpp
  
 
Y cambiar la siguiente línea
 
Y cambiar la siguiente línea
  
llvm/Analysis/TargetLibraryInfo.h
+
llvm/Analysis/TargetLibraryInfo.h
  
Por  
+
Por
  
llvm/Target/TargetLibraryInfo.h
+
llvm/Target/TargetLibraryInfo.h
  
9) Compilar
+
==== Compilar ====
  
cd /usr/local/src/llvmlite/llvmlite-0.8.0
+
cd /usr/local/src/llvmlite/llvmlite-0.8.0 python setup.py build python setup.py install
python setup.py build
 
python setup.py install
 

Latest revision as of 20:58, 2 June 2016

Volver a Administración del SC3

Procedimiento para instalar llvmlite en Debian 8. Hay problemas al hacerlo con pip2 pues tiene como requisito llmv-3.6 y debian sólo tiene la versión 3.5

Descargar el software de llvm-3.6

cd /usr/local/src wget http://llvm.org/releases/3.7.0/llvm-3.7.0.src.tar.xz

Desempaquetar

tar xJvf llvm-3.7.0.src.tar.xz

Compilar

cd llvm-3.7.0.src mkdir mybuild cd !$ cmake .. make -j25

Mover los binarios a un directorio general de instalación

cd .. mv mybuild /usr/local/llvm-3.7.0 rsync -av /usr/local/src/llvm-3.7.0.src/include/ /usr/local/llvm-3.7.0/include/

Descargar los fuentes de llvmlite

mkdir /usr/local/src/llvmlite cd /usr/local/src/llvmlite pip2 install -d ./ llvmlite tar xvzf llvmlite-0.8.0.tar.gz

Modificar Makefile

cd llvmlite-0.8.0/ffi/

Edite el archivo

Makefile.linux

Y modifique las siguientes líneas para que se vean así

CXXFLAGS = $(LLVM_CXXFLAGS) -flto -L/usr/local/llvm-3.6/lib/ -I/usr/local/llvm-3.6/include LDFLAGS = -flto `$(LLVM_CONFIG) --ldflags` -Wl,--exclude-libs=ALL -L/usr/local/llvm-3.6/lib/ -I/usr/local/llvm-3.6/include LIBS = $(LLVM_LIBS) #-lLLVMOProfileJIT

Configurar la variable de ambiente

export LLVM_CONFIG=/usr/local/llvm-3.7.0/bin/llvm-config

Editar el archivo

ffi/targets.cpp

Y cambiar la siguiente línea

llvm/Analysis/TargetLibraryInfo.h

Por

llvm/Target/TargetLibraryInfo.h

Compilar

cd /usr/local/src/llvmlite/llvmlite-0.8.0 python setup.py build python setup.py install