install_ffead-cpp-dependencies.sh 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #!/bin/bash
  2. apt update -yqq && apt install --no-install-recommends -yqq autoconf-archive unzip uuid-dev odbc-postgresql unixodbc unixodbc-dev \
  3. apache2 apache2-dev libapr1-dev libaprutil1-dev memcached libmemcached-dev redis-server libssl-dev \
  4. zlib1g-dev cmake make clang-format-9 ninja-build libcurl4-openssl-dev git libpq-dev \
  5. wget build-essential pkg-config libpcre3-dev curl libgtk2.0-dev libgdk-pixbuf2.0-dev bison flex libreadline-dev
  6. apt-get install --reinstall ca-certificates
  7. cd $IROOT
  8. mkdir /usr/local/share/ca-certificates/cacert.org
  9. wget -P /usr/local/share/ca-certificates/cacert.org http://www.cacert.org/certs/root.crt http://www.cacert.org/certs/class3.crt
  10. update-ca-certificates
  11. git config --global http.sslCAinfo /etc/ssl/certs/ca-certificates.crt
  12. #redis will not start correctly on bionic with this config
  13. sed -i "s/bind .*/bind 127.0.0.1/g" /etc/redis/redis.conf
  14. echo never > /sys/kernel/mm/transparent_hugepage/enabled
  15. echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
  16. sysctl vm.overcommit_memory=1
  17. service apache2 stop
  18. service memcached stop
  19. service redis-server stop
  20. cd $IROOT
  21. git clone https://github.com/efficient/libcuckoo.git
  22. cd libcuckoo
  23. git checkout 8785773896d74f72b6224e59d37f5f8c3c1e022a -b works
  24. cmake -DCMAKE_INSTALL_PREFIX=/usr .
  25. make install
  26. cd $IROOT
  27. rm -rf libcuckoo
  28. wget -q https://downloads.mysql.com/archives/get/p/10/file/mysql-connector-odbc_8.0.21-1ubuntu20.04_amd64.deb
  29. dpkg -i mysql-connector-odbc_8.0.21-1ubuntu20.04_amd64.deb
  30. wget -q https://downloads.mysql.com/archives/get/p/10/file/mysql-connector-odbc-setup_8.0.21-1ubuntu20.04_amd64.deb
  31. dpkg -i mysql-connector-odbc-setup_8.0.21-1ubuntu20.04_amd64.deb
  32. rm -f *.deb
  33. wget -q https://github.com/mongodb/mongo-c-driver/releases/download/1.4.2/mongo-c-driver-1.4.2.tar.gz
  34. tar xf mongo-c-driver-1.4.2.tar.gz
  35. rm -f mongo-c-driver-1.4.2.tar.gz
  36. cd mongo-c-driver-1.4.2/ && \
  37. ./configure --disable-automatic-init-and-cleanup && \
  38. make && make install
  39. cd $IROOT
  40. rm -rf mongo-c-driver-1.4.2
  41. wget -q https://github.com/redis/hiredis/archive/v1.0.0.tar.gz
  42. tar xf v1.0.0.tar.gz
  43. rm -f v1.0.0.tar.gz
  44. cd hiredis-1.0.0/
  45. cmake . && make install
  46. cd $IROOT
  47. rm -rf hiredis-1.0.0
  48. cd $IROOT
  49. wget -q https://github.com/microsoft/mimalloc/archive/v2.0.2.tar.gz
  50. tar xf v2.0.2.tar.gz
  51. rm -f v2.0.2.tar.gz
  52. cd mimalloc-2.0.2
  53. mkdir -p out/release
  54. cd out/release
  55. cmake ../.. -DCMAKE_BUILD_TYPE=Release
  56. make && make install
  57. cd $IROOT
  58. rm -rf mimalloc-2.0.2
  59. wget -q https://github.com/microsoft/snmalloc/archive/0.5.3.tar.gz
  60. tar xf 0.5.3.tar.gz
  61. rm -f 0.5.3.tar.gz
  62. cd snmalloc-0.5.3
  63. mkdir build
  64. cd build
  65. cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release
  66. ninja
  67. cd $IROOT