www.idziorek.net | blog | contact

Various Notes on Building

Webkit

Let’s compile a release with debug info and install to /usr/local

wget https://webkitgtk.org/releases/webkitgtk-2.20.0.tar.xz
tar -xvf webkitgtk-2.20.0.tar.xz
cd webkitgtk-2.20.0
# install all the libs that will be reported missing in the next step.
# I could not find the woff2 stuff in debian so skipped it... 
cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -DUSE_WOFF2=NO -GNinja
# this takes about 30minutes on my i7-4790K .. zzzzz..zzz
ninja
sudo ninja install
pkg-config

pkg-config uses our new build now:

[1] https://trac.webkit.org/wiki/BuildingGtk
[2] https://webkitgtk.org/

GCC

This is how I build gcc (5.2.0) and binutils (2.25.1). Check [5] first.

    $ ../binutils-x.y.z/configure --disable-nls --with-sysroot --enable-targets=all
    $ make -j4
    $ make install
    $ ../gcc-x.y.z/configure --disable-nls --enable-languages=c,c++ --enable-threads
    $ make -j4
    $ make install
REF:

[1] binutils and gcc README files.
[2] https://gcc.gnu.org/install/
[3] http://wiki.osdev.org/Building_GCC
[4] http://stackoverflow.com/questions/1726042/recipe-for-compiling-binutils-gcc-together
[5] https://gcc.gnu.org/install/prerequisites.html

Linux

cd linux-source-[xxx]
make mrproper
cp someconfig .config -i
make oldconfig
make menuconfig
make localmodconfig
make localyesconfig
make
(OPT) make modules
su
make install
(OPT) make modules_install
(OPT) update-intiramfs -c -k [kernel-postfix]

(REMOVE UNWANTED FILES FROM BOOT!)
update-grub
grub-install /dev/sda
reboot

Clang

http://llvm.org/releases/3.7.0/docs/CMake.html
http://clang.llvm.org/get_started.html
put MAKEFLAGS="-j8" or similar in front of your CMake invocations.

extracted llvm to ~/temp/clang/llvm-3.7.0.src/
extracted clang to ~/temp/clang/llvm-3.7.0.src/tools/clang/ 
extracted compiler-rt to ~/temp/clang/llvm-3.7.0.src/projects/compiler-rt 
extracted libcxx to ~/temp/clang/llvm-3.7.0.src/projects/libcxx

$ cd ~/temp/clang/llvm-3.7.0-build
$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/miguel/opt/llvm-3.7.0 ../llvm-3.7.0.src
$ cmake --build .
$ cmake --build . --target install