You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

413 lines
20 KiB

#!/bin/bash
# 请将脚本放在 /home/yuanjiajia/dev/c++/LinuxCompile 目录下运行
# first_run.sh
# 分界线 开始
export BOUNDARYSTART=">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
# 分界线 结束
export BOUNDARYEND="<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<\
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<\
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"
echo $BOUNDARYSTART
sudo apt update
sudo apt install -y libtool-bin cmake flex bison libgtk-3-dev libgl1-mesa-dev python3-dev python3-numpy git patchelf
git clone https://github.com/LuxCoreRender/LuxCore.git
echo $BOUNDARYEND
# build-64-sse2
echo $BOUNDARYSTART
unset CC CXX
export 'LDFLAGS=-static-libgcc -static-libstdc++'
export PYTHON_CMD=python3
export SHELLROOT=/home/yuanjiajia/dev/c++/LinuxCompile
export CORE_COUNT=9
export 'MAKEOPTS=-j 9'
export 'CFLAGS=-w -mtune=generic -mno-ssse3 -mmmx -msse -msse2 -O2 -pipe -mfpmath=sse -fPIC'
export 'CXXFLAGS=-w -mtune=generic -mno-ssse3 -mmmx -msse -msse2 -O2 -pipe -mfpmath=sse -fPIC'
export CHOST=
export CBUILD=
echo $BOUNDARYEND
# prepare
echo $BOUNDARYSTART
cd /home/yuanjiajia/dev/c++/LinuxCompile
wget -c -O /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/linux_deps.tgz https://github.com/LuxCoreRender/LinuxCompileDeps/releases/download/luxcorerender_v2.6alpha0/linux_deps.tgz
tar zxvf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/linux_deps.tgz -C /home/yuanjiajia/dev/c++/LinuxCompile/distfiles
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/bin
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/share
ln -vfs /usr/lib/gcc/x86_64-linux-gnu/9/libstdc++.a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libstdc++.a # libstdc++.a路径跟据自己的实际位置修改
ln -vfs /usr/lib/x86_64-linux-gnu/libpython3.8.a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libpython3.8.a # libpython3.8.a路径跟据自己的实际位置修改
echo $BOUNDARYEND
# build
echo $BOUNDARYSTART
cd /home/yuanjiajia/dev/c++/LinuxCompile
mkdir -p tempDIR
echo $BOUNDARYEND
# STAGE 0.1 -- zlib
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 0.1 -- zlib\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/zlib-1.2.11.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/zlib-1.2.11
./configure --static --64 --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 0.2 -- bzip2
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 0.2 -- bzip2\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/bzip2-1.0.8.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/bzip2-1.0.8
patch Makefile /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/bzip2-1.0.8-fpic.patch
sleep 2
make -j 17
make install PREFIX=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 0.3 -- lzma
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 0.3 -- lzma\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar --xz -xf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/xz-5.0.5.tar.xz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/xz-5.0.5
./configure --enable-static --disable-shared --disable-scripts --disable-xz --disable-xzdec --disable-lzmadec --disable-lzmainfo --disable-lzma-links --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 1.1 -- Boost
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 1.1 -- Boost\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/boost_1_72_0.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/boost_1_72_0
patch libs/python/src/exec.cpp /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/boost.python-1.72.0.patch
sleep 2
./bootstrap.sh --with-toolset=gcc --without-icu --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/boost --with-python=/usr/bin/python3.8 --with-python-root=/usr
./b2 -j 9 --debug-configuration -d0 -aq --toolset=gcc 'cflags=-w -mtune=generic -mno-ssse3 -mmmx -msse -msse2 -O2 -pipe -mfpmath=sse -fPIC' 'cxxflags=-w -mtune=generic -mno-ssse3 -mmmx -msse -msse2 -O2 -pipe -mfpmath=sse -fPIC' --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2 --layout=system --with-date_time --with-filesystem --with-iostreams --with-locale --with-program_options --with-python --with-regex --with-serialization --with-system --with-thread --with-chrono threading=multi link=static release install
mv -f /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libboost_python38.a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libboost_python.a
mv -f /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libboost_numpy38.a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libboost_numpy.a
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 1.2 -- Jpeg
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 1.2 -- Jpeg\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/jpegsrc.v9d.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/jpeg-9d
cp /usr/bin/libtool .
sleep 2
./configure --enable-static --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
make -j 17
cp -vf .libs/libjpeg.a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cp -vf cderror.h cdjpeg.h jconfig.h jdct.h jerror.h jinclude.h jmemsys.h jmorecfg.h jpegint.h jpeglib.h jversion.h transupp.h /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 1.3 -- Tiff
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 1.3 -- Tiff\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/tiff-4.0.9.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/tiff-4.0.9
./configure --enable-static --disable-shared --disable-jbig --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 1.4 -- PNG
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 1.4 -- PNG\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/libpng-1.6.37.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/libpng-1.6.37
./configure --enable-static --disable-shared --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
cd /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
ln -vs libpng16 libpng
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 1.5 -- FreeType
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 1.5 -- FreeType\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xjf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/freetype-2.4.11.tar.bz2 -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/freetype-2.4.11
./configure --enable-static --disable-shared --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 1.6 -- OpenEXR
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 1.6 -- OpenEXR\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/openexr-2.4.1.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/openexr-2.4.1
cd IlmBase
./bootstrap
./configure --enable-static --disable-shared --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
sleep 2
cd ../OpenEXR
./bootstrap
./configure --enable-static --disable-shared --prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2 --with-ilmbase-prefix=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
sleep 2
make -j 17
make install
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 2.1 -- OpenImageIO
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 2.1 -- OpenImageIO\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/oiio-2.2.13.1.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/oiio-2.2.13.1
cp -vf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/oiio-2.2.13.1-compiler.cmake src/cmake/compiler.cmake
if CMAKE_BUILD_PARALLEL_LEVEL=17 CMAKE_PREFIX_PATH=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2 make -j 17 BOOST_HOME=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2 \
ILMBASE_HOME=/home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2 VERBOSE=1 USE_FFMPEG=0 EMBEDPLUGINS=1 USE_OPENGL=0 USE_QT=0 USE_GIF=0 USE_OPENJPEG=0 USE_OPENSSL=0 USE_FIELD3D=0 \
USE_OCIO=0 USE_OPENCV=0 USE_PYTHON=0 BUILD_SHARED_LIBS=0 LINKSTATIC=1 OIIO_BUILD_TOOLS=0 OIIO_BUILD_TESTS=0 STOP_ON_WARNING=0 ; then
echo -e "\n * openimageio 编译成功\n"
else
echo -e "\n !!! openimageio 编译失败\n"
exit 1
fi
sleep 2
cp -vr dist/linux64/include dist/linux64/lib dist/linux64/share /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
cd /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
mv -v libOpenImageIO.a libOpenImageIOBase.a
ar -rcT libOpenImageIO.a libOpenImageIOBase.a libpng.a libjpeg.a libtiff.a libHalf.a libIex.a libIexMath.a libIlmImf.a libIlmThread.a libImath.a libz.a libbz2.a liblzma.a libfreetype.a
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 4.1 -- Embree
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 4.1 -- Embree\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/embree-3.12.2.x86_64.linux.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/embree-3.12.2.x86_64.linux
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cp -av include/embree3 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
cp -av lib/libembree3.so lib/libembree3.so.3 lib/libtbb.so lib/libtbb.so.12 lib/libtbb.so.12.1 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
rm /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so
rm /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12
cp /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12.1 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libembree3.so.3 /usr/local/lib/libembree3.so.3
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libembree3.so /usr/local/liblibembree3.so
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 4.2 -- Oidn
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 4.2 -- Oidn\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/oidn-1.4.0.x86_64.linux.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/oidn-1.4.0.x86_64.linux
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cp -av include/OpenImageDenoise /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
cp -av lib/libOpenImageDenoise.so lib/libOpenImageDenoise.so.1 lib/libOpenImageDenoise.so.1.4.0 lib/libtbb.so lib/libtbb.so.12 lib/libtbb.so.12.2 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
rm /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so
rm /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12
cp /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12.1 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libOpenImageDenoise.so /usr/local/lib/libOpenImageDenoise.so
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libOpenImageDenoise.so.1 /usr/local/lib/libOpenImageDenoise.so.1
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libOpenImageDenoise.so.1.4.0 /usr/local/lib/libOpenImageDenoise.so.1.4.0
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 4.3 -- C-blosc
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 4.3 -- C-blosc\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/c-blosc-1.17.1-bin.tgz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/c-blosc-1.17.1-bin
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cp -vr include/blosc-export.h include/blosc.h /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
cp -vr lib/libblosc.a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 4.4 -- TBB
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 4.4 -- TBB\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/tbb2019_20191006oss_lin.tgz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/tbb2019_20191006oss
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cp -vr include/serial include/tbb /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
cp -vr ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb_debug.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb_debug.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc_debug.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc_debug.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc_proxy_debug.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc_proxy_debug.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc_proxy.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc_proxy.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbbmalloc.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb_preview_debug.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb_preview_debug.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb_preview.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb_preview.so.2 ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb.so ../tbb2019_20191006oss/lib/intel64/gcc4.8/libtbb.so.2 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.2 /usr/local/lib/libtbb.so.2
sudo ln -s /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12 /usr/local/lib/libtbb.so.12
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 4.5 -- NVRTC
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 4.5 -- NVRTC\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
tar -xzf /home/yuanjiajia/dev/c++/LinuxCompile/distfiles/cuda11.0-nvrtc.tar.gz -C /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR
cd /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/cuda11.0-nvrtc
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/include
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
cp -avr targets/x86_64-linux/lib/libnvrtc-builtins.so targets/x86_64-linux/lib/libnvrtc-builtins.so.11.0 targets/x86_64-linux/lib/libnvrtc-builtins.so.11.0.194 targets/x86_64-linux/lib/libnvrtc.so targets/x86_64-linux/lib/libnvrtc.so.11.0 targets/x86_64-linux/lib/libnvrtc.so.11.0.194 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib
patchelf --print-rpath /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc.so
patchelf --set-rpath ./ /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc-builtins.so
patchelf --print-rpath /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc-builtins.so
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# STAGE 5 -- LuxCore
echo $BOUNDARYSTART
echo -e "\n ****** STAGE 5 -- LuxCore\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/tempDIR/*
cd /home/yuanjiajia/dev/c++/LinuxCompile/LuxCore
cmake -G 'Unix Makefiles' -Wno-dev -D LUXRAYS_CUSTOM_CONFIG=cmake/SpecializedConfig/Config_Linux-Static.cmake -D PYTHON_LIBRARY:FILEPATH= -D PYTHON_INCLUDE_DIR:PATH=/usr/include/python3.8 -D PYTHON_INCLUDE_DIRS:PATH=/usr/include/python3.8 .
cmake --build . -- -j 9
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cd /home/yuanjiajia/dev/c++/LinuxCompile
echo $BOUNDARYEND
# 编译已经完成,正在完成最后的安装部署
echo $BOUNDARYSTART
echo -e "\n ****** 编译已经完成,正在完成最后的安装部署\n\n"
rm -rf /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
mkdir /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp LuxCore/lib/pyluxcoretools.zip /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp LuxCore/bin/luxcoreui /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp LuxCore/lib/pyluxcore.so /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libOpenImageDenoise.so.1 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libembree3.so.3 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.12 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libtbb.so.2 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp -a /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc-builtins.so /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc-builtins.so.11.0 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc-builtins.so.11.0.194 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc.so /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc.so.11.0 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/lib/libnvrtc.so.11.0.194 /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp LuxCore/README.md /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp LuxCore/COPYING.txt /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
cp LuxCore/AUTHORS.txt /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore
mkdir -p /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cp LuxCore/scenes/cornell/cornell.cfg /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cp LuxCore/scenes/cornell/cornell.scn /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cp LuxCore/scenes/cornell/Khaki.ply /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cp LuxCore/scenes/cornell/HalveRed.ply /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cp LuxCore/scenes/cornell/DarkGreen.ply /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cp LuxCore/scenes/cornell/Grey.ply /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2/LuxCore/scenes/cornell
cd /home/yuanjiajia/dev/c++/LinuxCompile/target-64-sse2
tar -cvjf LuxCore.tar.bz2 LuxCore
cd ..
echo -e "\n * 安装成功 $TARGET/$LUX_TAG"
echo -e " * 恭喜你,LuxCore已经编译安装成功\n"
echo $BOUNDARYEND