[Llvm-bgq-discuss] so how does it work
Hal Finkel
hfinkel at anl.gov
Tue Sep 3 20:43:40 CDT 2013
----- Original Message -----
>
> Hello all,
>
>
> I am Tim, happy developer with 4 racks of BG/Q and the only user ^_^'
> . I am a big fan of C++11 and Clang.
> I am familiar about compiler (install) but install Clang on BGQ seems
> a little bit tricky.
>
>
> So, I first downloaded clang following the standard procedure (all
> steps)
>
>
> http://clang.llvm.org/get_started.html
>
>
> I downloaded the patch r189357-20130827 (v2) (should I also download
> the patch r189327-20130827 ?) from
> http://trac.alcf.anl.gov/projects/llvm-bgq/wiki/WikiStart .
> This patch have 4 .sh scripts. Should I compile first Clang/llvm as
> usual ( http://clang.llvm.org/get_started.html ) or should I apply
> .sh script (and in witch order) ?
Here's essentially the procedure that I use:
[First, adjust all necessary paths in the build scripts]. By default, these install into /home/projects/llvm
svn co -r<REV> http://llvm.org/svn/llvm-project/llvm/trunk llvm-trunk
(cd llvm-trunk/tools && svn co -r<REV> http://llvm.org/svn/llvm-project/cfe/trunk clang)
(cd llvm-trunk && patch -p1 < ../llvm-bgq-r<REV>-<DATE>.patch)
(cd llvm-trunk/tools/clang && patch -p1 < ../../../clang-bgq-r<REV>-<DATE>.patch)
mkdir llvm-trunk-build
(cd llvm-trunk-build && ../llvm-trunk/configure)
(cd llvm-trunk-build && ../llvm-trunk-build.sh)
Copy bgclang (and its symlinks) into /home/projects/llvm/r<REV>-<DATE>/bin. (and maybe setup some more symlinks, see below)
svn co http://llvm.org/svn/llvm-project/libcxx/trunk libcxx-trunk
mkdir libcxx-trunk-build
(cd libcxx-trunk-build && ../libcxx-trunk-build.sh)
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt-trunk
(cd compiler-rt-trunk && patch -p0 < ../compiler-rt-bgq-r<REV>-<DATE>.patch)
mkdir compiler-rt-trunk-build
./compiler-rt-trunk-build.sh
Download http://shibatch.sourceforge.net/download/sleef-2.80.tar.gz (SLEEF from http://shibatch.sourceforge.net/).
tar -xvzf sleef-2.80.tar.gz
(cd sleef-2.80 && patch -p1 < ../sleef-bgq-<DATE>.patch)
(cd sleef-2.80/simd && ../../sleef-build.sh)
copy mpi and info libstdc++fixup into /home/projects/llvm. The current /home/projects/llvm on vesta is setup with:
lrwxrwxrwx bin -> current/bin
lrwxrwxrwx compiler-rt -> compiler-rt-r189356
drwxr-sr-x compiler-rt-r189356
lrwxrwxrwx current -> r189357-20130827
lrwxrwxrwx docs -> current/docs
lrwxrwxrwx include -> current/include
lrwxrwxrwx lib -> current/lib
lrwxrwxrwx libc++ -> libc++.r189359
drwxr-sr-x libc++.r189359
drwxr-sr-x libstdc++fixup
drwxrwsr-x mpi
drwxr-sr-x r189357-20130827
lrwxrwxrwx scan-build -> current/scan-build
lrwxrwxrwx scan-view -> current/scan-view
lrwxrwxrwx share -> current/share
lrwxrwxrwx sleef -> sleef-20130827
drwxr-sr-x sleef-20130827
drwxr-sr-x wbin
where wbin is an optional convenience directory:
lrwxrwxrwx bgclang -> ../bin/bgclang
lrwxrwxrwx bgclang++ -> ../bin/bgclang++
lrwxrwxrwx bgclang++11 -> ../bin/bgclang++11
lrwxrwxrwx powerpc64-bgq-linux-clang -> ../bin/powerpc64-bgq-linux-clang
lrwxrwxrwx powerpc64-bgq-linux-clang++ -> ../bin/powerpc64-bgq-linux-clang++
lrwxrwxrwx powerpc64-bgq-linux-clang++11 -> ../bin/powerpc64-bgq-linux-clang++11
I'm probably leaving something out, but please feel free to ask more questions! :)
-Hal
>
>
> Best,
>
>
> Tim
>
> _______________________________________________
> llvm-bgq-discuss mailing list
> llvm-bgq-discuss at lists.alcf.anl.gov
> https://lists.alcf.anl.gov/mailman/listinfo/llvm-bgq-discuss
>
--
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-bgq-discuss
mailing list