iup-stack/README.md

111 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# IUP-stack
Стек библиотеки IUP
## Download
```sh
wget https://sourceforge.net/projects/imtoolkit/files/3.15/Docs%20and%20Sources/im-3.15_Sources.tar.gz
wget https://sourceforge.net/projects/canvasdraw/files/5.14/Docs%20and%20Sources/ftgl-2.1.5_Sources.tar.gz
wget https://sourceforge.net/projects/canvasdraw/files/5.14/Docs%20and%20Sources/freetype-2.10.2_Sources.tar.gz
wget https://sourceforge.net/projects/canvasdraw/files/5.14/Docs%20and%20Sources/pdflib_lite-7.0.5_Sources.tar.gz
wget https://sourceforge.net/projects/canvasdraw/files/5.14/Docs%20and%20Sources/cd-5.14_Sources.tar.gz
wget https://sourceforge.net/projects/iup/files/3.30/Docs%20and%20Sources/iup-3.30_Sources.tar.gz
wget https://www.lua.org/ftp/lua-5.4.4.tar.gz
```
## Сборка
Экспорт переменных, где `/root/iup/` путь к репозиторию, а `Linux62_64` релиз ядра (возможен другой путь после компиляции):
```sh
export USE_GTK3=Yes
export USE_PKGCONFIG=Yes
export USE_LUA_VERSION=54
export USE_LUA54=Yes
export LUA_LIB=/root/iup/lua-5.4.4/src
export LUA_INC=/root/iup/lua-5.4.4/src
export IM_LIB=/root/iup/im/lib/Linux62_64
export IM_INC=/root/iup/im/include
export FTGL_LIB=/root/iup/ftgl/lib/Linux62_64
export FTGL_INC=/root/iup/ftgl/include
export PDFLIB_LIB=/root/iup/pdflib7/lib/Linux62_64
export PDFLIB_INC=/root/iup/pdflib7/include
export CD_LIB=/root/iup/cd/lib/Linux62_64
export CD_INC=/root/iup/cd/include
```
### lua
```sh
cd lua-5.4.4
make linux
ln -s liblua.a src/liblua54.a
```
Для компиляции из под Lua 5.4 необходимо создать ссылки:
```sh
mkdir -p /root/iup/lua54/bin/Linux62_64
ln -sf $LUA_LIB/lua /root/iup/lua54/bin/Linux62_64/lua54
```
### pdflib7
```sh
cd pdflib7
make
```
### ftgl
```sh
cd ftgl
make
```
### fftw
Библиотеку необходимо собрать [2 раза](https://www.linuxfromscratch.org/blfs/view/stable-systemd/general/fftw.html) - для одинарной точности и двойной точности (`--enable-sse`, `--enable-float`)
```sh
cd fftw
./configure --enable-shared --enable-sse --prefix=/usr
make -j16
make install
make clean
./configure --enable-shared --enable-float --prefix=/usr
make -j16
make install
```
### im
```sh
cd im
make
```
### cd
```sh
cd cd
make
```
### iup
Применить патч для ядра Linux v6:
```sh
cd iup
patch -p1 < without-lua-prefix-with-linux6.patch
make
```
### Сборка одним скриптом
```sh
./build.sh
```