install_ffead-cpp-dependencies.sh 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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 libhiredis-dev libcurl4-openssl-dev libpq-dev
  5. #redis will not start correctly on bionic with this config
  6. sed -i "s/bind .*/bind 127.0.0.1/g" /etc/redis/redis.conf
  7. echo never > /sys/kernel/mm/transparent_hugepage/enabled
  8. echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
  9. sysctl vm.overcommit_memory=1
  10. service apache2 stop
  11. service memcached stop
  12. service redis-server stop
  13. cd $IROOT
  14. git clone https://github.com/efficient/libcuckoo.git
  15. cd libcuckoo
  16. git checkout 8785773896d74f72b6224e59d37f5f8c3c1e022a -b works
  17. cmake -DCMAKE_INSTALL_PREFIX=/usr .
  18. make install
  19. cd $IROOT
  20. rm -rf libcuckoo
  21. mkdir -p /usr/lib/x86_64-linux-gnu/odbc
  22. wget -q https://downloads.mysql.com/archives/get/p/10/file/mysql-connector-odbc-8.0.19-linux-ubuntu18.04-x86-64bit.tar.gz
  23. tar xf mysql-connector-odbc-8.0.19-linux-ubuntu18.04-x86-64bit.tar.gz
  24. mv mysql-connector-odbc-8.0.19-linux-ubuntu18.04-x86-64bit/lib/libmyodbc8* /usr/lib/x86_64-linux-gnu/odbc/
  25. mysql-connector-odbc-8.0.19-linux-ubuntu18.04-x86-64bit/bin/myodbc-installer -d -a -n "MySQL" -t "DRIVER=/usr/lib/x86_64-linux-gnu/odbc/libmyodbc8w.so;"
  26. rm -f mysql-connector-odbc-8.0.19-linux-ubuntu18.04-x86-64bit.tar.gz
  27. rm -rf mysql-connector-odbc-8.0.19-linux-ubuntu18.04-x86-64bit
  28. #wget -q https://cdn.mysql.com/archives/mysql-connector-odbc-5.3/mysql-connector-odbc-5.3.11-linux-ubuntu16.04-x86-64bit.tar.gz
  29. #tar xf mysql-connector-odbc-5.3.11-linux-ubuntu16.04-x86-64bit.tar.gz
  30. #mv mysql-connector-odbc-5.3.11-linux-ubuntu16.04-x86-64bit/lib/libmyodbc5* /usr/lib/x86_64-linux-gnu/odbc/
  31. #mysql-connector-odbc-5.3.11-linux-ubuntu16.04-x86-64bit/bin/myodbc-installer -d -a -n "MySQL" -t "DRIVER=/usr/lib/x86_64-linux-gnu/odbc/libmyodbc5w.so;"
  32. #rm -f mysql-connector-odbc-5.3.11-linux-ubuntu16.04-x86-64bit.tar.gz
  33. #rm -rf mysql-connector-odbc-5.3.11-linux-ubuntu16.04-x86-64bit
  34. wget -q https://github.com/mongodb/mongo-c-driver/releases/download/1.4.2/mongo-c-driver-1.4.2.tar.gz
  35. tar xf mongo-c-driver-1.4.2.tar.gz
  36. rm -f mongo-c-driver-1.4.2.tar.gz
  37. cd mongo-c-driver-1.4.2/ && \
  38. ./configure --disable-automatic-init-and-cleanup && \
  39. make && make install
  40. cd $IROOT
  41. rm -rf mongo-c-driver-1.4.2
  42. #wget -q https://github.com/redis/hiredis/archive/v0.13.3.tar.gz
  43. #tar xf v0.13.3.tar.gz
  44. #rm -f v0.13.3.tar.gz
  45. #cd hiredis-0.13.3/
  46. #make
  47. #PREFIX=/usr make install
  48. #cd $IROOT
  49. #rm -rf hiredis-0.13.3
  50. cd $IROOT
  51. wget -q https://github.com/microsoft/mimalloc/archive/v1.6.3.tar.gz
  52. tar xf v1.6.3.tar.gz
  53. rm -f v1.6.3.tar.gz
  54. cd mimalloc-1.6.3
  55. mkdir -p out/release
  56. cd out/release
  57. cmake ../.. -DCMAKE_BUILD_TYPE=Release
  58. make && make install
  59. cd $IROOT
  60. rm -rf mimalloc-1.6.3
  61. wget -q https://github.com/microsoft/snmalloc/archive/0.4.2.tar.gz
  62. tar xf 0.4.2.tar.gz
  63. rm -f 0.4.2.tar.gz
  64. cd snmalloc-0.4.2
  65. mkdir build
  66. cd build
  67. cmake -G Ninja .. -DCMAKE_BUILD_TYPE=Release
  68. ninja
  69. cd $IROOT