build.sh 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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 libmysqlclient-dev
  7. sudo apt install -y libssl-dev
  8. sudo apt install -y xorg libx11-dev libgl1-mesa-dev
  9. sudo apt install -y openssl
  10. sudo apt install -y libboost-dev
  11. sudo apt install -y libmysqlcppconn-dev
  12. sudo apt install -y libleveldb-dev
  13. sudo apt install -y libsoci-dev
  14. sudo apt install -y unixodbc-dev
  15. sudo apt install -y liblua5.4-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. if [ ! -d "HP-Socket" ]; then
  29. # 下载HPSOCKET
  30. git clone -b v5.9.1 https://github.com/ldcsaa/HP-Socket.git
  31. cd HP-Socket/Linux
  32. chmod 777 script/*
  33. echo "Y" | ./script/compile.sh
  34. fi
  35. cd $src_dir/3rdparty
  36. # 安装HPSocket
  37. sudo cp HP-Socket/Linux/lib/hpsocket/x64/*.a /usr/local/lib/
  38. sudo cp HP-Socket/Linux/lib/hpsocket/x64/*.so /lib/x86_64-linux-gnu/
  39. sudo cp HP-Socket/Linux/lib/hpsocket/x64/*.so.5 /lib/x86_64-linux-gnu/
  40. sudo cp -r HP-Socket/Linux/include/* /usr/local/include/
  41. sudo mv /usr/local/include/hpsocket /usr/local/include/HPSocket
  42. # 安装mysql-connector-cpp
  43. cd $src_dir/3rdparty
  44. if [ ! -d "mysql-connector-cpp" ]; then
  45. git clone https://github.com/mysql/mysql-connector-cpp.git
  46. cd mysql-connector-cpp
  47. mkdir build
  48. cd build
  49. cmake ../ -DCMAKE_BUILD_TYPE=Release -DWITH_JDBC=true
  50. make -j8
  51. sudo make install
  52. fi
  53. ######核心######
  54. cd $install_dir
  55. cmake $src_dir .
  56. make -j8
  57. sudo make install
  58. sudo cp -r $src_dir/include/* /usr/local/include/