I adapted the linux-install_dependencies for Arch linux distribution. It uses pacman (the arch linux package manager) to install the following dependencies :
Code: Select all
subversion doxygen make automake autoconf cmake unzip gcc g++ libgtk2.0-dev libglade2-dev libitpp-dev libgsl0-dev libexpat1-dev libois-dev libreadline5-dev libzzip-dev libtool libxaw7-dev libpcre3-dev libfreeimage-dev libglu1-mesa-dev libalut-dev libvorbis-dev
Code: Select all
Pthreadstubs / clearlooks / boost / itpp_external / ois / cg / ogre.
Below is the relevant code. It should be put just after the line
Code: Select all
echo "Checking native dependencies..."
Code: Select all
if [[ "`grep Arch /etc/issue 2> /dev/null`" != "" ]]; then
ov_native_package_installed=true
ov_native_package_log_file="$ov_target_folder_log/native-packages.log"
ov_arch_packages="cmake pkgconfig expat xml2 gettext xproto zlib libpng freetype2 fontconfig libtool xtrans libxslt libxau xcb-proto libxcb kbproto inputproto libxdmcp libx11 libxext xextproto renderproto libxdmcp libxrender libice libsm libxt libxmu libxpm libxaw xf86vidmodeproto xextproto randrproto glib pixman cairo pango atk gtk libglade glade freeimage zziplib libxrandr libxxf86vm"
for package in $ov_arch_packages; do
ov_pacman_output=`pacman -Qs $package 2>&1`
ov_pacman_retcode=$?
if [[ $ov_pacman_retcode != 0 ]]; then
ov_native_package_installed=false
fi;
if [[ "$ov_pacman_output" == "" ]]; then
ov_native_package_installed=false
fi;
done;
if [[ $ov_native_package_installed == false ]]; then
echo " You are currently running Arch"
echo ""
echo " It is possible to install native packages in order to avoid some potential"
echo " errors / save time. Such installation requires root access. If you want"
echo " to continue with native packages, answer 'yes' (recommanded)"
echo ""
if [[ -e "$ov_target_folder_hit/native-packages.hit" || $ov_native_package_forced == true ]]; then
echo " Do you want to install native packages (y) ? automatically selected yes"
ov_answer=yes
else
echo -n " Do you want to install native packages (y) ?"
read ov_answer
fi;
if [[ $ov_answer == "yes" || $ov_answer == "y" || $ov_answer == "" ]]; then
echo " Installing native packages on background..."
# sudo -k # revokes root privilege
# sudo apt-get --assume-yes install $ov_ubuntu_packages > $ov_native_package_log_file 2>&1
# sudo -k # revokes root privilege
su -c "pacman -S $ov_ubuntu_packages > $ov_native_package_log_file 2>&1"
# su -C "yaourt -S itpp"
echo " Installing native packages on background... done."
ov_should_hit_native=true
ov_native_package_installed=true
else
echo " All right, we will compile everything..."
fi;
else
if [[ -e "$ov_target_folder_hit/native-packages.hit" ]]; then
echo " You are currently running Arch and all required native packages were"
echo " installed previously, continuing..."
ov_should_hit_native=true
ov_native_package_installed=true
else
echo " You are currently running Arch and all necessary native dependencies are"
echo " already installed."
echo ""
echo " It is possible to install use those native packages in order to avoid some potential"
echo " errors / save time. Such installation requires root access. If you want"
echo " to continue with native packages, answer 'yes' (recommanded)"
echo ""
if [[ $ov_native_package_forced == true ]]; then
echo " Do you want to use native packages (y) ? automatically selected yes"
ov_should_hit_native=true
ov_native_package_installed=true
else
echo -n " Do you want to use native packages (y) ?"
read ov_answer
if [[ $ov_answer == "yes" || $ov_answer == "y" || $ov_answer == "" ]]; then
ov_should_hit_native=true
ov_native_package_installed=true
fi;
fi;
fi;
fi;
if [[ $ov_should_hit_native == true ]]; then
ov_hit_package "native-packages"
ov_hit_package "pkgconfig"
ov_hit_package "cmake"
ov_hit_package "expat"
ov_hit_package "libxml"
ov_hit_package "gettext"
# ov_hit_package "pthreadstubs"
ov_hit_package "zlib"
ov_hit_package "libpng"
ov_hit_package "freetype"
ov_hit_package "fontconfig"
ov_hit_package "libtool"
ov_hit_package "libxproto"
ov_hit_package "libxextproto"
ov_hit_package "libxtrans"
ov_hit_package "libxslt"
ov_hit_package "libxau"
ov_hit_package "libxcbproto"
ov_hit_package "libxcb"
ov_hit_package "libkbproto"
ov_hit_package "libinputproto"
ov_hit_package "libxdmcp"
ov_hit_package "libx11"
ov_hit_package "libxext"
ov_hit_package "renderproto"
ov_hit_package "libxdmcp"
ov_hit_package "libxrender"
ov_hit_package "libice"
ov_hit_package "libsm"
ov_hit_package "libxt"
ov_hit_package "libxmu"
ov_hit_package "libxpm"
ov_hit_package "libxaw"
ov_hit_package "libxf86vidmodeproto"
ov_hit_package "libXxf86vm"
ov_hit_package "librandrproto"
ov_hit_package "libXrandr"
ov_hit_package "mesa"
ov_hit_package "glib"
ov_hit_package "pixman"
ov_hit_package "cairo"
ov_hit_package "pango"
ov_hit_package "atk"
ov_hit_package "gtk"
# ov_hit_package "clearlooks"
ov_hit_package "libglade"
ov_hit_package "glade"
# ov_hit_package "boost"
# ov_hit_package "itpp_external"
ov_hit_package "itpp"
ov_hit_package "gsl"
ov_hit_package "freeimage"
# ov_hit_package "ois"
ov_hit_package "zziplib"
# ov_hit_package "cg"
# ov_hit_package "ogre"
# mkdir "$ov_target_folder_lib/OGRE" 2> /dev/null
# rm "$ov_target_folder_lib/OGRE/Plugins.cfg" 2> /dev/null
# echo "# Define plugin folder" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "PluginFolder=/usr/lib/OGRE" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "# Define plugins" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "Plugin=RenderSystem_GL" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "Plugin=Plugin_ParticleFX" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "Plugin=Plugin_BSPSceneManager" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "Plugin=Plugin_OctreeSceneManager" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
# echo "#Plugin=Plugin_CgProgramManager" >> "$ov_target_folder_lib/OGRE/Plugins.cfg"
else
ov_hit_package "no-native-packages"
fi;
fi;
[EDIT]
I forgot something for the compilation to work properly on Arch Linux.
If you have a problem during the building of clearlooks you can just add this piece of code before the line 184 (starting with ./configure --prefix=...)
Code: Select all
if [ "$ov_current_package" == "clearlooks" ]; then
cd $ov_target_folder_arch/$ov_current_package_archive_name
echo "autoreconf needed"
autoreconf --force --install --symlink
fi;