build.sh 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #!/bin/bash
  2. # 安装软件
  3. sudo apt update
  4. sudo apt install -y g++
  5. sudo apt install -y cmake
  6. sudo apt install -y libssl-dev
  7. sudo apt install -y xorg libx11-dev libgl1-mesa-dev
  8. sudo apt install -y openssl
  9. sudo apt install -y libboost-dev
  10. sudo apt install -y libmysqlcppconn-dev
  11. sudo apt install -y libleveldb-dev
  12. sudo apt install -y libsoci-dev
  13. sudo apt install -y unixodbc-dev
  14. sudo apt install -y libz-dev
  15. sudo apt install -y libmimalloc-dev
  16. # 初始化变量
  17. src_dir=$(pwd)
  18. cd ..
  19. root_dir=$(pwd)
  20. install_dir=$(pwd)/ylib_linux_build
  21. # 创建必要文件夹
  22. if [ ! -d $install_dir ]; then
  23. mkdir $install_dir
  24. fi
  25. ##########################开始编译#########################
  26. ######3rdparty######
  27. # cd $src_dir/3rdparty
  28. # hp_socket_lib ="/usr/local/lib64/libhpsocket.a"
  29. # if [ -e "$hp_socket_lib" ]; then
  30. # echo "hpsocket installed"
  31. # else
  32. # # 下载HPSOCKET
  33. # if [ ! -d "HP-Socket" ]; then
  34. # git clone https://github.com/ldcsaa/HP-Socket.git
  35. # cd HP-Socket/Linux
  36. # # 删除已经存在的库
  37. # rm -rf dependent/x64/include/openssl
  38. # rm -rf dependent/x64/include/zconf.h
  39. # rm -rf dependent/x64/include/zlib.h
  40. # rm -rf dependent/x64/lib/libcrypto.a
  41. # rm -rf dependent/x64/lib/libjemalloc_pic.a
  42. # rm -rf dependent/x64/lib/libmimalloc.a
  43. # rm -rf dependent/x64/lib/libssl.a
  44. # rm -rf dependent/x64/lib/libz.a
  45. # chmod 777 script/*
  46. # echo "Y" | ./script/compile.sh
  47. # echo "Y" | ./script/install.sh
  48. # cd $src_dir/3rdparty
  49. # # 安装HPSocket
  50. # sudo cp -f HP-Socket/Linux/lib/hpsocket/x64/*.a /usr/local/lib/
  51. # sudo cp -f HP-Socket/Linux/lib/hpsocket/x64/*.so /lib/x86_64-linux-gnu/
  52. # sudo cp -f HP-Socket/Linux/lib/hpsocket/x64/*.so.5 /lib/x86_64-linux-gnu/
  53. # sudo cp -r -f HP-Socket/Linux/include/* /usr/local/include/
  54. # sudo mv /usr/local/include/hpsocket /usr/local/include/HPSocket
  55. # fi
  56. # fi
  57. # 安装mysql-connector-cpp
  58. cd $src_dir/3rdparty
  59. #if [ ! -d "mysql-connector-cpp" ]; then
  60. # git clone --branch 8.4.0 https://github.com/mysql/mysql-connector-cpp.git
  61. # cd mysql-connector-cpp
  62. # mkdir build
  63. # cd build
  64. # # 设置临时SWAP交换空间16G
  65. # sudo dd if=/dev/zero of=/tempswap bs=1M count=16384
  66. # sudo mkswap /tempswap
  67. # sudo swapon /tempswap
  68. # echo "MySQL Connector 编译较慢请耐心等待..."
  69. # cmake ../ -DCMAKE_BUILD_TYPE=Release -DWITH_JDBC=true
  70. # make
  71. # sudo cp build/jdbc/libmysqlcppconn.so /lib/x86_64-linux-gnu/libmysqlcppconn.so
  72. # sudo cp -r jdbc/cppconn /usr/local/include
  73. # # 删除交换
  74. # sudo swapoff /tempswap
  75. # sudo rm /tempswap
  76. #fi
  77. ######核心######
  78. cd $install_dir
  79. cmake $src_dir .
  80. make -j4
  81. sudo make install