From 3b39974b19f174572288f7285b452bea4782bbeb Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Tue, 24 Mar 2020 19:32:45 -0400 Subject: [PATCH 1/7] fix cmake param in build eosio for all platforms --- .../02_manual-build/03_platforms/amazon_linux-2-pinned.md | 2 +- .../02_manual-build/03_platforms/amazon_linux-2-unpinned.md | 2 +- .../02_manual-build/03_platforms/centos-7.7-pinned.md | 2 +- .../02_manual-build/03_platforms/centos-7.7-unpinned.md | 2 +- .../02_manual-build/03_platforms/macos-10.14-pinned.md | 2 +- .../02_manual-build/03_platforms/macos-10.14-unpinned.md | 2 +- .../02_manual-build/03_platforms/ubuntu-16.04-pinned.md | 2 +- .../02_manual-build/03_platforms/ubuntu-18.04-pinned.md | 2 +- .../02_manual-build/03_platforms/ubuntu-18.04-unpinned.md | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md index 2cde1ba4a..c07215ee6 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md @@ -111,7 +111,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATIONOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md index 804e50fa2..bff1b31ff 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md @@ -87,7 +87,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_CXX_COMPILER='clang++' -DCMAKE_C_COMPILER='clang' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_CXX_COMPILER='clang++' -DCMAKE_C_COMPILER='clang' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md index ead772956..8d0df7ff2 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md @@ -121,7 +121,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md index d43af1306..4db46a848 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md @@ -97,7 +97,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && source /opt/rh/devtoolset-8/enable && cmake -DCMAKE_BUILD_TYPE='Release' -DLLVM_DIR='/opt/rh/llvm-toolset-7.0/root/usr/lib64/cmake/llvm' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && source /opt/rh/devtoolset-8/enable && cmake -DCMAKE_BUILD_TYPE='Release' -DLLVM_DIR='/opt/rh/llvm-toolset-7.0/root/usr/lib64/cmake/llvm' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md index 826e59fb0..07311c6ae 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md @@ -88,7 +88,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(getconf _NPROCESSORS_ONLN) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md index 826b3a1bf..a86193617 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md @@ -67,7 +67,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(getconf _NPROCESSORS_ONLN) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md index d127b13bd..50025e6d6 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md @@ -110,7 +110,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md index 81e7952c9..e59237a90 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md @@ -110,7 +110,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md index 6def97a51..c39644326 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md @@ -87,7 +87,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_CXX_COMPILER='clang++-7' -DCMAKE_C_COMPILER='clang-7' -DLLVM_DIR='/usr/lib/llvm-7/lib/cmake/llvm' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true .. +cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_CXX_COMPILER='clang++-7' -DCMAKE_C_COMPILER='clang-7' -DLLVM_DIR='/usr/lib/llvm-7/lib/cmake/llvm' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` From b066a5dd13e4cfcfaa81681b3a85eb6c6608fdd0 Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Mon, 6 Apr 2020 19:20:11 -0400 Subject: [PATCH 2/7] add caution message to avoid changing EOSIO_BUILD_LOCATION --- .../02_manual-build/03_platforms/amazon_linux-2-pinned.md | 4 ++++ .../02_manual-build/03_platforms/amazon_linux-2-unpinned.md | 4 ++++ .../02_manual-build/03_platforms/centos-7.7-pinned.md | 4 ++++ .../02_manual-build/03_platforms/centos-7.7-unpinned.md | 4 ++++ .../02_manual-build/03_platforms/macos-10.14-pinned.md | 4 ++++ .../02_manual-build/03_platforms/macos-10.14-unpinned.md | 4 ++++ .../02_manual-build/03_platforms/ubuntu-16.04-pinned.md | 4 ++++ .../02_manual-build/03_platforms/ubuntu-18.04-pinned.md | 4 ++++ .../02_manual-build/03_platforms/ubuntu-18.04-unpinned.md | 4 ++++ 9 files changed, 36 insertions(+) diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md index c07215ee6..30011df2f 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md @@ -108,6 +108,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md index bff1b31ff..47ca7a71a 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md @@ -84,6 +84,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md index 8d0df7ff2..75f32f3de 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md @@ -118,6 +118,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md index 4db46a848..9800684dc 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md @@ -94,6 +94,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md index 07311c6ae..cabb7a8bc 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md @@ -85,6 +85,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md index a86193617..b3f89ccfa 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md @@ -64,6 +64,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md index 50025e6d6..994fa568a 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md @@ -107,6 +107,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md index e59237a90..5dd8c7ed9 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md @@ -107,6 +107,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md index c39644326..a2e1eaf26 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md @@ -84,6 +84,10 @@ cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-drive ## Build EOSIO These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. + +[[caution | `EOSIO_BUILD_LOCATION` environment variable]] +| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. + ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION From 26830245e6d03b167dcb9bad93473d73f8c53023 Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Mon, 6 Apr 2020 22:05:08 -0400 Subject: [PATCH 3/7] fix typo in amazon linux 2 manual build instructions --- .../02_manual-build/03_platforms/amazon_linux-2-pinned.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md index 30011df2f..e0aa43cc5 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md @@ -115,7 +115,7 @@ These commands build the EOSIO software on the specified OS. Make sure to [Insta ```sh export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATIONOSIO_LOCATION +cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION cd $EOSIO_BUILD_LOCATION && make -j$(nproc) ``` From eee61a1d4bead3ba3860362fd7607c8d3d464189 Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Mon, 6 Apr 2020 23:07:18 -0400 Subject: [PATCH 4/7] remove pinned instructions for manual builds --- .../03_platforms/amazon_linux-2-pinned.md | 140 ---------------- .../03_platforms/centos-7.7-pinned.md | 150 ------------------ .../03_platforms/macos-10.14-pinned.md | 117 -------------- .../03_platforms/ubuntu-16.04-pinned.md | 139 ---------------- .../03_platforms/ubuntu-18.04-pinned.md | 139 ---------------- 5 files changed, 685 deletions(-) delete mode 100644 docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md delete mode 100644 docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md delete mode 100644 docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md delete mode 100644 docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md delete mode 100644 docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md deleted file mode 100644 index e0aa43cc5..000000000 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-pinned.md +++ /dev/null @@ -1,140 +0,0 @@ ---- -content_title: Amazon Linux 2 (pinned) ---- - -This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Amazon Linux 2. - -[[info | Building EOSIO is for Advanced Developers]] -| If you are new to EOSIO, it is recommended that you install the [EOSIO Prebuilt Binaries](../../../00_install-prebuilt-binaries.md) instead of building from source. - -Select a task below, then copy/paste the shell commands to a Unix terminal to execute: - -* [Download EOSIO Repository](#download-eosio-repository) -* [Install EOSIO Dependencies](#install-eosio-dependencies) -* [Build EOSIO](#build-eosio) -* [Install EOSIO](#install-eosio) -* [Test EOSIO](#test-eosio) -* [Uninstall EOSIO](#uninstall-eosio) - -[[info | Building EOSIO on another OS?]] -| Visit the [Build EOSIO from Source](../../index.md) section. - -## Download EOSIO Repository -These commands set the EOSIO directories, install git, and clone the EOSIO repository. -```sh -# set EOSIO directories -export EOSIO_LOCATION=~/eosio/eos -export EOSIO_INSTALL_LOCATION=$EOSIO_LOCATION/../install -mkdir -p $EOSIO_INSTALL_LOCATION -# install git -yum update -y && yum install -y git -# clone EOSIO repository -git clone https://github.com/EOSIO/eos.git $EOSIO_LOCATION -cd $EOSIO_LOCATION && git submodule update --init --recursive -``` - -## Install EOSIO Dependencies -These commands install the EOSIO software dependencies. Make sure to [Download the EOSIO Repository](#download-eosio-repository) first and set the EOSIO directories. -```sh -# install dependencies -yum install -y which sudo procps-ng util-linux autoconf automake \ - libtool make bzip2 bzip2-devel openssl-devel gmp-devel libstdc++ libcurl-devel \ - libusbx-devel python3 python3-devel python-devel libedit-devel doxygen \ - graphviz patch gcc gcc-c++ vim-common jq -# build cmake -export PATH=$EOSIO_INSTALL_LOCATION/bin:$PATH -cd $EOSIO_INSTALL_LOCATION && curl -LO https://cmake.org/files/v3.13/cmake-3.13.2.tar.gz && \ - tar -xzf cmake-3.13.2.tar.gz && \ - cd cmake-3.13.2 && \ - ./bootstrap --prefix=$EOSIO_INSTALL_LOCATION && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/cmake-3.13.2.tar.gz $EOSIO_INSTALL_LOCATION/cmake-3.13.2 -# build clang -cd $EOSIO_INSTALL_LOCATION && git clone --single-branch --branch release_80 https://git.llvm.org/git/llvm.git clang8 && cd clang8 && git checkout 18e41dc && \ - cd tools && git clone --single-branch --branch release_80 https://git.llvm.org/git/lld.git && cd lld && git checkout d60a035 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/polly.git && cd polly && git checkout 1bc06e5 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang.git clang && cd clang && git checkout a03da8b && \ - cd tools && mkdir extra && cd extra && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && git checkout 6b34834 && \ - cd $EOSIO_INSTALL_LOCATION/clang8/projects && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxx.git && cd libcxx && git checkout 1853712 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxxabi.git && cd libcxxabi && git checkout d7338a4 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libunwind.git && cd libunwind && git checkout 57f6739 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/compiler-rt.git && cd compiler-rt && git checkout 5bc7979 && \ - mkdir $EOSIO_INSTALL_LOCATION/clang8/build && cd $EOSIO_INSTALL_LOCATION/clang8/build && \ - cmake -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_ENABLE_LIBCXX=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_INCLUDE_DOCS=OFF -DLLVM_OPTIMIZED_TABLEGEN=ON -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=Release .. && \ - make -j $(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/clang8 -# build llvm -cd $EOSIO_INSTALL_LOCATION && git clone --depth 1 --single-branch --branch release_80 https://github.com/llvm-mirror/llvm.git llvm && \ - cd llvm && \ - mkdir build && \ - cd build && \ - cmake -G 'Unix Makefiles' -DLLVM_TARGETS_TO_BUILD=host -DLLVM_BUILD_TOOLS=false -DLLVM_ENABLE_RTTI=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_EXE_LINKER_FLAGS=-pthread -DCMAKE_SHARED_LINKER_FLAGS=-pthread -DLLVM_ENABLE_PIC=NO .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/llvm -# build boost -cd $EOSIO_INSTALL_LOCATION && curl -LO https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2 && \ - tar -xjf boost_1_71_0.tar.bz2 && \ - cd boost_1_71_0 && \ - ./bootstrap.sh --with-toolset=clang --prefix=$EOSIO_INSTALL_LOCATION && \ - ./b2 toolset=clang cxxflags='-stdlib=libc++ -D__STRICT_ANSI__ -nostdinc++ -I$EOSIO_INSTALL_LOCATION/include/c++/v1 -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fpie' linkflags='-stdlib=libc++ -pie' link=static threading=multi --with-iostreams --with-date_time --with-filesystem --with-system --with-program_options --with-chrono --with-test -q -j$(nproc) install && \ - rm -rf $EOSIO_INSTALL_LOCATION/boost_1_71_0.tar.bz2 $EOSIO_INSTALL_LOCATION/boost_1_71_0 -# build mongodb -cd $EOSIO_INSTALL_LOCATION && curl -LO https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.6.3.tgz && \ - tar -xzf mongodb-linux-x86_64-amazon-3.6.3.tgz && rm -f mongodb-linux-x86_64-amazon-3.6.3.tgz && \ - mv $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-amazon-3.6.3/bin/* $EOSIO_INSTALL_LOCATION/bin/ && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-amazon-3.6.3 -# build mongodb c driver -cd $EOSIO_INSTALL_LOCATION && curl -LO https://github.com/mongodb/mongo-c-driver/releases/download/1.13.0/mongo-c-driver-1.13.0.tar.gz && \ - tar -xzf mongo-c-driver-1.13.0.tar.gz && cd mongo-c-driver-1.13.0 && \ - mkdir -p build && cd build && \ - cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DENABLE_BSON=ON -DENABLE_SSL=OPENSSL -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_STATIC=ON -DENABLE_ICU=OFF -DENABLE_SNAPPY=OFF -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0 -# build mongodb cxx driver -cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o mongo-cxx-driver-r3.4.0.tar.gz && \ - tar -xzf mongo-cxx-driver-r3.4.0.tar.gz && cd mongo-cxx-driver-r3.4.0 && \ - sed -i 's/\"maxAwaitTimeMS\", count/\"maxAwaitTimeMS\", static_cast(count)/' src/mongocxx/options/change_stream.cpp && \ - sed -i 's/add_subdirectory(test)//' src/mongocxx/CMakeLists.txt src/bsoncxx/CMakeLists.txt && \ - mkdir -p build && cd build && \ - cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0 -``` - -## Build EOSIO -These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. - -[[caution | `EOSIO_BUILD_LOCATION` environment variable]] -| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. - -```sh -export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build -mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && $EOSIO_INSTALL_LOCATION/bin/cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION -cd $EOSIO_BUILD_LOCATION && make -j$(nproc) -``` - -## Install EOSIO -This command installs the EOSIO software on the specified OS. Make sure to [Build EOSIO](#build-eosio) first. -```sh -cd $EOSIO_BUILD_LOCATION && make install -``` - -## Test EOSIO -These commands validate the EOSIO software installation on the specified OS. This task is optional but recommended. Make sure to [Install EOSIO](#install-eosio) first. -```sh -$EOSIO_INSTALL_LOCATION/bin/mongod --fork --logpath $(pwd)/mongod.log --dbpath $(pwd)/mongodata -cd $EOSIO_BUILD_LOCATION && make test -``` - -## Uninstall EOSIO -These commands uninstall the EOSIO software from the specified OS. -```sh -xargs rm < $EOSIO_BUILD_LOCATION/install_manifest.txt -rm -rf $EOSIO_BUILD_LOCATION -``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md deleted file mode 100644 index 75f32f3de..000000000 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-pinned.md +++ /dev/null @@ -1,150 +0,0 @@ ---- -content_title: Centos 7.7 (pinned) ---- - -This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Centos 7.7. - -[[info | Building EOSIO is for Advanced Developers]] -| If you are new to EOSIO, it is recommended that you install the [EOSIO Prebuilt Binaries](../../../00_install-prebuilt-binaries.md) instead of building from source. - -Select a task below, then copy/paste the shell commands to a Unix terminal to execute: - -* [Download EOSIO Repository](#download-eosio-repository) -* [Install EOSIO Dependencies](#install-eosio-dependencies) -* [Build EOSIO](#build-eosio) -* [Install EOSIO](#install-eosio) -* [Test EOSIO](#test-eosio) -* [Uninstall EOSIO](#uninstall-eosio) - -[[info | Building EOSIO on another OS?]] -| Visit the [Build EOSIO from Source](../../index.md) section. - -## Download EOSIO Repository -These commands set the EOSIO directories, install git, and clone the EOSIO repository. -```sh -# set EOSIO directories -export EOSIO_LOCATION=~/eosio/eos -export EOSIO_INSTALL_LOCATION=$EOSIO_LOCATION/../install -mkdir -p $EOSIO_INSTALL_LOCATION -# install git -yum update -y && yum install -y git -# clone EOSIO repository -git clone https://github.com/EOSIO/eos.git $EOSIO_LOCATION -cd $EOSIO_LOCATION && git submodule update --init --recursive -``` - -## Install EOSIO Dependencies -These commands install the EOSIO software dependencies. Make sure to [Download the EOSIO Repository](#download-eosio-repository) first and set the EOSIO directories. -```sh -# install dependencies -yum update -y && \ - yum install -y epel-release && \ - yum --enablerepo=extras install -y centos-release-scl && \ - yum --enablerepo=extras install -y devtoolset-8 && \ - yum --enablerepo=extras install -y which autoconf automake libtool make bzip2 doxygen \ - graphviz bzip2-devel openssl-devel gmp-devel ocaml libicu-devel python python-devel \ - rh-python36 file libusbx-devel libcurl-devel patch vim-common jq -# build cmake -export PATH=$EOSIO_INSTALL_LOCATION/bin:$PATH -cd $EOSIO_INSTALL_LOCATION && curl -LO https://cmake.org/files/v3.13/cmake-3.13.2.tar.gz && \ - source /opt/rh/devtoolset-8/enable && \ - source /opt/rh/rh-python36/enable && \ - tar -xzf cmake-3.13.2.tar.gz && \ - cd cmake-3.13.2 && \ - ./bootstrap --prefix=$EOSIO_INSTALL_LOCATION && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/cmake-3.13.2.tar.gz $EOSIO_INSTALL_LOCATION/cmake-3.13.2 -# apply clang patch -cp -f $EOSIO_LOCATION/scripts/clang-devtoolset8-support.patch /tmp/clang-devtoolset8-support.patch -# build clang -cd $EOSIO_INSTALL_LOCATION && git clone --single-branch --branch release_80 https://git.llvm.org/git/llvm.git clang8 && cd clang8 && git checkout 18e41dc && \ - cd tools && git clone --single-branch --branch release_80 https://git.llvm.org/git/lld.git && cd lld && git checkout d60a035 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/polly.git && cd polly && git checkout 1bc06e5 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang.git clang && cd clang && git checkout a03da8b && \ - patch -p2 < /tmp/clang-devtoolset8-support.patch && \ - cd tools && mkdir extra && cd extra && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && git checkout 6b34834 && \ - cd $EOSIO_INSTALL_LOCATION/clang8/projects && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxx.git && cd libcxx && git checkout 1853712 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxxabi.git && cd libcxxabi && git checkout d7338a4 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libunwind.git && cd libunwind && git checkout 57f6739 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/compiler-rt.git && cd compiler-rt && git checkout 5bc7979 && \ - mkdir $EOSIO_INSTALL_LOCATION/clang8/build && cd $EOSIO_INSTALL_LOCATION/clang8/build && \ - source /opt/rh/devtoolset-8/enable && \ - source /opt/rh/rh-python36/enable && \ - cmake -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_ENABLE_LIBCXX=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_INCLUDE_DOCS=OFF -DLLVM_OPTIMIZED_TABLEGEN=ON -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=Release .. && \ - make -j $(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/clang8 -# build llvm -cd $EOSIO_INSTALL_LOCATION && git clone --depth 1 --single-branch --branch release_80 https://github.com/llvm-mirror/llvm.git llvm && \ - cd llvm && \ - mkdir build && \ - cd build && \ - cmake -G 'Unix Makefiles' -DLLVM_TARGETS_TO_BUILD=host -DLLVM_BUILD_TOOLS=false -DLLVM_ENABLE_RTTI=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_EXE_LINKER_FLAGS=-pthread -DCMAKE_SHARED_LINKER_FLAGS=-pthread -DLLVM_ENABLE_PIC=NO .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/llvm -# build boost -cd $EOSIO_INSTALL_LOCATION && curl -LO https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2 && \ - tar -xjf boost_1_71_0.tar.bz2 && \ - cd boost_1_71_0 && \ - ./bootstrap.sh --with-toolset=clang --prefix=$EOSIO_INSTALL_LOCATION && \ - ./b2 toolset=clang cxxflags='-stdlib=libc++ -D__STRICT_ANSI__ -nostdinc++ -I$EOSIO_INSTALL_LOCATION/include/c++/v1 -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fpie' linkflags='-stdlib=libc++ -pie' link=static threading=multi --with-iostreams --with-date_time --with-filesystem --with-system --with-program_options --with-chrono --with-test -q -j$(nproc) install && \ - rm -rf $EOSIO_INSTALL_LOCATION/boost_1_71_0.tar.bz2 $EOSIO_INSTALL_LOCATION/boost_1_71_0 -# build mongodb -cd $EOSIO_INSTALL_LOCATION && curl -LO https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.6.3.tgz && \ - tar -xzf mongodb-linux-x86_64-amazon-3.6.3.tgz && rm -f mongodb-linux-x86_64-amazon-3.6.3.tgz && \ - mv $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-amazon-3.6.3/bin/* $EOSIO_INSTALL_LOCATION/bin/ && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-amazon-3.6.3 -# build mongodb c driver -cd $EOSIO_INSTALL_LOCATION && curl -LO https://github.com/mongodb/mongo-c-driver/releases/download/1.13.0/mongo-c-driver-1.13.0.tar.gz && \ - tar -xzf mongo-c-driver-1.13.0.tar.gz && cd mongo-c-driver-1.13.0 && \ - mkdir -p build && cd build && \ - cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DENABLE_BSON=ON -DENABLE_SSL=OPENSSL -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_STATIC=ON -DENABLE_ICU=OFF -DENABLE_SNAPPY=OFF -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0 -# build mongodb cxx driver -cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o mongo-cxx-driver-r3.4.0.tar.gz && \ - tar -xzf mongo-cxx-driver-r3.4.0.tar.gz && cd mongo-cxx-driver-r3.4.0 && \ - sed -i 's/\"maxAwaitTimeMS\", count/\"maxAwaitTimeMS\", static_cast(count)/' src/mongocxx/options/change_stream.cpp && \ - sed -i 's/add_subdirectory(test)//' src/mongocxx/CMakeLists.txt src/bsoncxx/CMakeLists.txt && \ - mkdir -p build && cd build && \ - cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0 -``` - -## Build EOSIO -These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. - -[[caution | `EOSIO_BUILD_LOCATION` environment variable]] -| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. - -```sh -export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build -mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION -cd $EOSIO_BUILD_LOCATION && make -j$(nproc) -``` - -## Install EOSIO -This command installs the EOSIO software on the specified OS. Make sure to [Build EOSIO](#build-eosio) first. -```sh -cd $EOSIO_BUILD_LOCATION && make install -``` - -## Test EOSIO -These commands validate the EOSIO software installation on the specified OS. This task is optional but recommended. Make sure to [Install EOSIO](#install-eosio) first. -```sh -$EOSIO_INSTALL_LOCATION/bin/mongod --fork --logpath $(pwd)/mongod.log --dbpath $(pwd)/mongodata -cd $EOSIO_BUILD_LOCATION && make test -``` - -## Uninstall EOSIO -These commands uninstall the EOSIO software from the specified OS. -```sh -xargs rm < $EOSIO_BUILD_LOCATION/install_manifest.txt -rm -rf $EOSIO_BUILD_LOCATION -``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md deleted file mode 100644 index cabb7a8bc..000000000 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-pinned.md +++ /dev/null @@ -1,117 +0,0 @@ ---- -content_title: MacOS 10.14 (pinned compiler) ---- - -This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on MacOS 10.14. - -[[info | Building EOSIO is for Advanced Developers]] -| If you are new to EOSIO, it is recommended that you install the [EOSIO Prebuilt Binaries](../../../00_install-prebuilt-binaries.md) instead of building from source. - -Select a task below, then copy/paste the shell commands to a Unix terminal to execute: - -* [Download EOSIO Repository](#download-eosio-repository) -* [Install EOSIO Dependencies](#install-eosio-dependencies) -* [Build EOSIO](#build-eosio) -* [Install EOSIO](#install-eosio) -* [Test EOSIO](#test-eosio) -* [Uninstall EOSIO](#uninstall-eosio) - -[[info | Building EOSIO on another OS?]] -| Visit the [Build EOSIO from Source](../../index.md) section. - -## Download EOSIO Repository -These commands set the EOSIO directories, install git, and clone the EOSIO repository. -```sh -# set EOSIO directories -export EOSIO_LOCATION=~/eosio/eos -export EOSIO_INSTALL_LOCATION=$EOSIO_LOCATION/../install -mkdir -p $EOSIO_INSTALL_LOCATION -# install git -brew update && brew install git -# clone EOSIO repository -git clone https://github.com/EOSIO/eos.git $EOSIO_LOCATION -cd $EOSIO_LOCATION && git submodule update --init --recursive -``` - -## Install EOSIO Dependencies -These commands install the EOSIO software dependencies. Make sure to [Download the EOSIO Repository](#download-eosio-repository) first and set the EOSIO directories. -```sh -# install dependencies -brew install cmake python libtool libusb graphviz automake wget gmp pkgconfig doxygen openssl@1.1 jq || : -# Boost Fix: eosio/install/bin/../include/c++/v1/stdlib.h:94:15: fatal error: 'stdlib.h' file not found -SDKROOT="$(xcrun --sdk macosx --show-sdk-path)" -# build clang -export PATH=$EOSIO_INSTALL_LOCATION/bin:$PATH -cd $EOSIO_INSTALL_LOCATION && git clone --single-branch --branch release_80 https://git.llvm.org/git/llvm.git clang8 && cd clang8 && git checkout 18e41dc && \ - cd tools && git clone --single-branch --branch release_80 https://git.llvm.org/git/lld.git && cd lld && git checkout d60a035 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/polly.git && cd polly && git checkout 1bc06e5 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang.git clang && cd clang && git checkout a03da8b && \ - cd tools && mkdir extra && cd extra && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && git checkout 6b34834 && \ - mkdir -p $EOSIO_INSTALL_LOCATION/clang8/projects && cd $EOSIO_INSTALL_LOCATION/clang8/projects && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxx.git && cd libcxx && git checkout 1853712 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxxabi.git && cd libcxxabi && git checkout d7338a4 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libunwind.git && cd libunwind && git checkout 57f6739 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/compiler-rt.git && cd compiler-rt && git checkout 5bc7979 && \ - mkdir $EOSIO_INSTALL_LOCATION/clang8/build && cd $EOSIO_INSTALL_LOCATION/clang8/build && \ - cmake -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_ENABLE_LIBCXX=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_INCLUDE_DOCS=OFF -DLLVM_OPTIMIZED_TABLEGEN=ON -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=Release .. && \ - make -j $(getconf _NPROCESSORS_ONLN) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/clang8 -cd $EOSIO_INSTALL_LOCATION && curl -LO https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2 && \ - tar -xjf boost_1_71_0.tar.bz2 && cd boost_1_71_0 && \ - SDKROOT="$SDKROOT" ./bootstrap.sh --prefix=$EOSIO_INSTALL_LOCATION && \ - SDKROOT="$SDKROOT" ./b2 --with-iostreams --with-date_time --with-filesystem --with-system --with-program_options --with-chrono --with-test -q -j$(getconf _NPROCESSORS_ONLN) install && \ - rm -rf $EOSIO_INSTALL_LOCATION/boost_1_71_0.tar.bz2 $EOSIO_INSTALL_LOCATION/boost_1_71_0 -# install mongodb -cd $EOSIO_INSTALL_LOCATION && curl -OL https://fastdl.mongodb.org/osx/mongodb-osx-ssl-x86_64-3.6.3.tgz - tar -xzf mongodb-osx-ssl-x86_64-3.6.3.tgz && rm -f mongodb-osx-ssl-x86_64-3.6.3.tgz && \ - mv $EOSIO_INSTALL_LOCATION/mongodb-osx-x86_64-3.6.3/bin/* $EOSIO_INSTALL_LOCATION/bin/ && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongodb-osx-x86_64-3.6.3 -# install mongo-c-driver from source -cd $EOSIO_INSTALL_LOCATION && curl -LO https://github.com/mongodb/mongo-c-driver/releases/download/1.13.0/mongo-c-driver-1.13.0.tar.gz && \ - tar -xzf mongo-c-driver-1.13.0.tar.gz && cd mongo-c-driver-1.13.0 && \ - mkdir -p cmake-build && cd cmake-build && \ - cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DENABLE_BSON=ON -DENABLE_SSL=DARWIN -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_STATIC=ON -DENABLE_ICU=OFF -DENABLE_SASL=OFF -DENABLE_SNAPPY=OFF .. && \ - make -j $(getconf _NPROCESSORS_ONLN) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0 -# install mongo-cxx-driver from source -cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o mongo-cxx-driver-r3.4.0.tar.gz && \ - tar -xzf mongo-cxx-driver-r3.4.0.tar.gz && cd mongo-cxx-driver-r3.4.0/build && \ - cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION .. && \ - make -j $(getconf _NPROCESSORS_ONLN) VERBOSE=1 && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0 -``` - -## Build EOSIO -These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. - -[[caution | `EOSIO_BUILD_LOCATION` environment variable]] -| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. - -```sh -export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build -mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION -cd $EOSIO_BUILD_LOCATION && make -j$(getconf _NPROCESSORS_ONLN) -``` - -## Install EOSIO -This command installs the EOSIO software on the specified OS. Make sure to [Build EOSIO](#build-eosio) first. -```sh -cd $EOSIO_BUILD_LOCATION && make install -``` - -## Test EOSIO -These commands validate the EOSIO software installation on the specified OS. This task is optional but recommended. Make sure to [Install EOSIO](#install-eosio) first. -```sh -$EOSIO_INSTALL_LOCATION/bin/mongod --fork --logpath $(pwd)/mongod.log --dbpath $(pwd)/mongodata -cd $EOSIO_BUILD_LOCATION && make test -``` - -## Uninstall EOSIO -These commands uninstall the EOSIO software from the specified OS. -```sh -xargs rm < $EOSIO_BUILD_LOCATION/install_manifest.txt -rm -rf $EOSIO_BUILD_LOCATION -``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md deleted file mode 100644 index 994fa568a..000000000 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-16.04-pinned.md +++ /dev/null @@ -1,139 +0,0 @@ ---- -content_title: Ubuntu 16.04 (pinned) ---- - -This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Ubuntu 16.04. - -[[info | Building EOSIO is for Advanced Developers]] -| If you are new to EOSIO, it is recommended that you install the [EOSIO Prebuilt Binaries](../../../00_install-prebuilt-binaries.md) instead of building from source. - -Select a task below, then copy/paste the shell commands to a Unix terminal to execute: - -* [Download EOSIO Repository](#download-eosio-repository) -* [Install EOSIO Dependencies](#install-eosio-dependencies) -* [Build EOSIO](#build-eosio) -* [Install EOSIO](#install-eosio) -* [Test EOSIO](#test-eosio) -* [Uninstall EOSIO](#uninstall-eosio) - -[[info | Building EOSIO on another OS?]] -| Visit the [Build EOSIO from Source](../../index.md) section. - -## Download EOSIO Repository -These commands set the EOSIO directories, install git, and clone the EOSIO repository. -```sh -# set EOSIO directories -export EOSIO_LOCATION=~/eosio/eos -export EOSIO_INSTALL_LOCATION=$EOSIO_LOCATION/../install -mkdir -p $EOSIO_INSTALL_LOCATION -# install git -apt-get update && apt-get upgrade -y && DEBIAN_FRONTEND=noninteractive apt-get install -y git -# clone EOSIO repository -git clone https://github.com/EOSIO/eos.git $EOSIO_LOCATION -cd $EOSIO_LOCATION && git submodule update --init --recursive -``` - -## Install EOSIO Dependencies -These commands install the EOSIO software dependencies. Make sure to [Download the EOSIO Repository](#download-eosio-repository) first and set the EOSIO directories. -```sh -# install dependencies -apt-get install -y build-essential automake \ - libbz2-dev libssl-dev doxygen graphviz libgmp3-dev autotools-dev libicu-dev python2.7 python2.7-dev \ - python3 python3-dev autoconf libtool curl zlib1g-dev sudo ruby libusb-1.0-0-dev libcurl4-gnutls-dev \ - pkg-config apt-transport-https vim-common jq -# build cmake -export PATH=$EOSIO_INSTALL_LOCATION/bin:$PATH -cd $EOSIO_INSTALL_LOCATION && curl -LO https://cmake.org/files/v3.13/cmake-3.13.2.tar.gz && \ - tar -xzf cmake-3.13.2.tar.gz && \ - cd cmake-3.13.2 && \ - ./bootstrap --prefix=$EOSIO_INSTALL_LOCATION && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/cmake-3.13.2.tar.gz $EOSIO_INSTALL_LOCATION/cmake-3.13.2 -# build clang -cd $EOSIO_INSTALL_LOCATION && git clone --single-branch --branch release_80 https://git.llvm.org/git/llvm.git clang8 && cd clang8 && git checkout 18e41dc && \ - cd tools && git clone --single-branch --branch release_80 https://git.llvm.org/git/lld.git && cd lld && git checkout d60a035 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/polly.git && cd polly && git checkout 1bc06e5 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang.git clang && cd clang && git checkout a03da8b && \ - cd tools && mkdir extra && cd extra && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && git checkout 6b34834 && \ - cd $EOSIO_INSTALL_LOCATION/clang8/projects && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxx.git && cd libcxx && git checkout 1853712 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxxabi.git && cd libcxxabi && git checkout d7338a4 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libunwind.git && cd libunwind && git checkout 57f6739 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/compiler-rt.git && cd compiler-rt && git checkout 5bc7979 && \ - mkdir $EOSIO_INSTALL_LOCATION/clang8/build && cd $EOSIO_INSTALL_LOCATION/clang8/build && \ - cmake -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_ENABLE_LIBCXX=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_INCLUDE_DOCS=OFF -DLLVM_OPTIMIZED_TABLEGEN=ON -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=Release .. && \ - make -j $(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/clang8 -# build llvm -cd $EOSIO_INSTALL_LOCATION && git clone --depth 1 --single-branch --branch release_80 https://github.com/llvm-mirror/llvm.git llvm && \ - cd llvm && \ - mkdir build && cd build && \ - cmake -DLLVM_TARGETS_TO_BUILD=host -DLLVM_BUILD_TOOLS=false -DLLVM_ENABLE_RTTI=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_EXE_LINKER_FLAGS=-pthread -DCMAKE_SHARED_LINKER_FLAGS=-pthread -DLLVM_ENABLE_PIC=NO .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/llvm -# build boost -cd $EOSIO_INSTALL_LOCATION && curl -LO https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2 && \ - tar -xjf boost_1_71_0.tar.bz2 && \ - cd boost_1_71_0 && \ - ./bootstrap.sh --with-toolset=clang --prefix=$EOSIO_INSTALL_LOCATION && \ - ./b2 toolset=clang cxxflags='-stdlib=libc++ -D__STRICT_ANSI__ -nostdinc++ -I$EOSIO_INSTALL_LOCATION/include/c++/v1 -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fpie' linkflags='-stdlib=libc++ -pie' link=static threading=multi --with-iostreams --with-date_time --with-filesystem --with-system --with-program_options --with-chrono --with-test -q -j$(nproc) install && \ - rm -rf $EOSIO_INSTALL_LOCATION/boost_1_71_0.tar.bz2 $EOSIO_INSTALL_LOCATION/boost_1_71_0 -# build mongodb -cd $EOSIO_INSTALL_LOCATION && curl -LO https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-3.6.3.tgz && \ - tar -xzf mongodb-linux-x86_64-ubuntu1604-3.6.3.tgz && rm -f mongodb-linux-x86_64-ubuntu1604-3.6.3.tgz && \ - mv $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-ubuntu1604-3.6.3/bin/* $EOSIO_INSTALL_LOCATION/bin/ && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-ubuntu1604-3.6.3 -# build mongodb c driver -cd $EOSIO_INSTALL_LOCATION && curl -LO https://github.com/mongodb/mongo-c-driver/releases/download/1.13.0/mongo-c-driver-1.13.0.tar.gz && \ - tar -xzf mongo-c-driver-1.13.0.tar.gz && cd mongo-c-driver-1.13.0 && \ - mkdir -p build && cd build && \ - cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DENABLE_BSON=ON -DENABLE_SSL=OPENSSL -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_STATIC=ON -DENABLE_ICU=OFF -DENABLE_SNAPPY=OFF -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0 -# build mongodb cxx driver -cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o mongo-cxx-driver-r3.4.0.tar.gz && \ - tar -xzf mongo-cxx-driver-r3.4.0.tar.gz && cd mongo-cxx-driver-r3.4.0 && \ - sed -i 's/\"maxAwaitTimeMS\", count/\"maxAwaitTimeMS\", static_cast(count)/' src/mongocxx/options/change_stream.cpp && \ - sed -i 's/add_subdirectory(test)//' src/mongocxx/CMakeLists.txt src/bsoncxx/CMakeLists.txt && \ - mkdir -p build && cd build && \ - cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0 -``` - -## Build EOSIO -These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. - -[[caution | `EOSIO_BUILD_LOCATION` environment variable]] -| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. - -```sh -export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build -mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION -cd $EOSIO_BUILD_LOCATION && make -j$(nproc) -``` - -## Install EOSIO -This command installs the EOSIO software on the specified OS. Make sure to [Build EOSIO](#build-eosio) first. -```sh -cd $EOSIO_BUILD_LOCATION && make install -``` - -## Test EOSIO -These commands validate the EOSIO software installation on the specified OS. This task is optional but recommended. Make sure to [Install EOSIO](#install-eosio) first. -```sh -$EOSIO_INSTALL_LOCATION/bin/mongod --fork --logpath $(pwd)/mongod.log --dbpath $(pwd)/mongodata -cd $EOSIO_BUILD_LOCATION && make test -``` - -## Uninstall EOSIO -These commands uninstall the EOSIO software from the specified OS. -```sh -xargs rm < $EOSIO_BUILD_LOCATION/install_manifest.txt -rm -rf $EOSIO_BUILD_LOCATION -``` diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md deleted file mode 100644 index 5dd8c7ed9..000000000 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-pinned.md +++ /dev/null @@ -1,139 +0,0 @@ ---- -content_title: Ubuntu 18.04 (pinned) ---- - -This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Ubuntu 18.04. - -[[info | Building EOSIO is for Advanced Developers]] -| If you are new to EOSIO, it is recommended that you install the [EOSIO Prebuilt Binaries](../../../00_install-prebuilt-binaries.md) instead of building from source. - -Select a task below, then copy/paste the shell commands to a Unix terminal to execute: - -* [Download EOSIO Repository](#download-eosio-repository) -* [Install EOSIO Dependencies](#install-eosio-dependencies) -* [Build EOSIO](#build-eosio) -* [Install EOSIO](#install-eosio) -* [Test EOSIO](#test-eosio) -* [Uninstall EOSIO](#uninstall-eosio) - -[[info | Building EOSIO on another OS?]] -| Visit the [Build EOSIO from Source](../../index.md) section. - -## Download EOSIO Repository -These commands set the EOSIO directories, install git, and clone the EOSIO repository. -```sh -# set EOSIO directories -export EOSIO_LOCATION=~/eosio/eos -export EOSIO_INSTALL_LOCATION=$EOSIO_LOCATION/../install -mkdir -p $EOSIO_INSTALL_LOCATION -# install git -apt-get update && apt-get upgrade -y && DEBIAN_FRONTEND=noninteractive apt-get install -y git -# clone EOSIO repository -git clone https://github.com/EOSIO/eos.git $EOSIO_LOCATION -cd $EOSIO_LOCATION && git submodule update --init --recursive -``` - -## Install EOSIO Dependencies -These commands install the EOSIO software dependencies. Make sure to [Download the EOSIO Repository](#download-eosio-repository) first and set the EOSIO directories. -```sh -# install dependencies -apt-get install -y make bzip2 automake libbz2-dev libssl-dev doxygen graphviz libgmp3-dev autotools-dev libicu-dev \ - python2.7 python2.7-dev python3 python3-dev autoconf libtool g++ gcc curl zlib1g-dev sudo ruby libusb-1.0-0-dev \ - libcurl4-gnutls-dev pkg-config patch vim-common jq -# build cmake -export PATH=$EOSIO_INSTALL_LOCATION/bin:$PATH -cd $EOSIO_INSTALL_LOCATION && curl -LO https://cmake.org/files/v3.13/cmake-3.13.2.tar.gz && \ - tar -xzf cmake-3.13.2.tar.gz && \ - cd cmake-3.13.2 && \ - ./bootstrap --prefix=$EOSIO_INSTALL_LOCATION && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/cmake-3.13.2.tar.gz $EOSIO_INSTALL_LOCATION/cmake-3.13.2 -# build clang -cd $EOSIO_INSTALL_LOCATION && git clone --single-branch --branch release_80 https://git.llvm.org/git/llvm.git clang8 && cd clang8 && git checkout 18e41dc && \ - cd tools && git clone --single-branch --branch release_80 https://git.llvm.org/git/lld.git && cd lld && git checkout d60a035 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/polly.git && cd polly && git checkout 1bc06e5 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang.git clang && cd clang && git checkout a03da8b && \ - cd tools && mkdir extra && cd extra && git clone --single-branch --branch release_80 https://git.llvm.org/git/clang-tools-extra.git && cd clang-tools-extra && git checkout 6b34834 && \ - cd $EOSIO_INSTALL_LOCATION/clang8/projects && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxx.git && cd libcxx && git checkout 1853712 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libcxxabi.git && cd libcxxabi && git checkout d7338a4 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/libunwind.git && cd libunwind && git checkout 57f6739 && \ - cd ../ && git clone --single-branch --branch release_80 https://git.llvm.org/git/compiler-rt.git && cd compiler-rt && git checkout 5bc7979 && \ - mkdir $EOSIO_INSTALL_LOCATION/clang8/build && cd $EOSIO_INSTALL_LOCATION/clang8/build && \ - cmake -G 'Unix Makefiles' -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_ENABLE_LIBCXX=ON -DLLVM_ENABLE_RTTI=ON -DLLVM_INCLUDE_DOCS=OFF -DLLVM_OPTIMIZED_TABLEGEN=ON -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=Release .. && \ - make -j $(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/clang8 -# build llvm -cd $EOSIO_INSTALL_LOCATION && git clone --depth 1 --single-branch --branch release_80 https://github.com/llvm-mirror/llvm.git llvm && \ - cd llvm && \ - mkdir build && \ - cd build && \ - cmake -G 'Unix Makefiles' -DLLVM_TARGETS_TO_BUILD=host -DLLVM_BUILD_TOOLS=false -DLLVM_ENABLE_RTTI=1 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_EXE_LINKER_FLAGS=-pthread -DCMAKE_SHARED_LINKER_FLAGS=-pthread -DLLVM_ENABLE_PIC=NO .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/llvm -# build boost -cd $EOSIO_INSTALL_LOCATION && curl -LO https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2 && \ - tar -xjf boost_1_71_0.tar.bz2 && \ - cd boost_1_71_0 && \ - ./bootstrap.sh --with-toolset=clang --prefix=$EOSIO_INSTALL_LOCATION && \ - ./b2 toolset=clang cxxflags='-stdlib=libc++ -D__STRICT_ANSI__ -nostdinc++ -I$EOSIO_INSTALL_LOCATION/include/c++/v1 -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fpie' linkflags='-stdlib=libc++ -pie' link=static threading=multi --with-iostreams --with-date_time --with-filesystem --with-system --with-program_options --with-chrono --with-test -q -j$(nproc) install && \ - rm -rf $EOSIO_INSTALL_LOCATION/boost_1_71_0.tar.bz2 $EOSIO_INSTALL_LOCATION/boost_1_71_0 -# build mongodb -cd $EOSIO_INSTALL_LOCATION && curl -LO https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.1.1.tgz && \ - tar -xzf mongodb-linux-x86_64-ubuntu1804-4.1.1.tgz && rm -f mongodb-linux-x86_64-ubuntu1804-4.1.1.tgz && \ - mv $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-ubuntu1804-4.1.1/bin/* $EOSIO_INSTALL_LOCATION/bin/ && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongodb-linux-x86_64-ubuntu1804-4.1.1 -# build mongodb c driver -cd $EOSIO_INSTALL_LOCATION && curl -LO https://github.com/mongodb/mongo-c-driver/releases/download/1.13.0/mongo-c-driver-1.13.0.tar.gz && \ - tar -xzf mongo-c-driver-1.13.0.tar.gz && cd mongo-c-driver-1.13.0 && \ - mkdir -p build && cd build && \ - cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DENABLE_BSON=ON -DENABLE_SSL=OPENSSL -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_STATIC=ON -DENABLE_ICU=OFF -DENABLE_SNAPPY=OFF -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-c-driver-1.13.0 -# build mongodb cxx driver -cd $EOSIO_INSTALL_LOCATION && curl -L https://github.com/mongodb/mongo-cxx-driver/archive/r3.4.0.tar.gz -o mongo-cxx-driver-r3.4.0.tar.gz && \ - tar -xzf mongo-cxx-driver-r3.4.0.tar.gz && cd mongo-cxx-driver-r3.4.0 && \ - sed -i 's/\"maxAwaitTimeMS\", count/\"maxAwaitTimeMS\", static_cast(count)/' src/mongocxx/options/change_stream.cpp && \ - sed -i 's/add_subdirectory(test)//' src/mongocxx/CMakeLists.txt src/bsoncxx/CMakeLists.txt && \ - mkdir -p build && cd build && \ - cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake .. && \ - make -j$(nproc) && \ - make install && \ - rm -rf $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0.tar.gz $EOSIO_INSTALL_LOCATION/mongo-cxx-driver-r3.4.0 -``` - -## Build EOSIO -These commands build the EOSIO software on the specified OS. Make sure to [Install EOSIO Dependencies](#install-eosio-dependencies) first. - -[[caution | `EOSIO_BUILD_LOCATION` environment variable]] -| Do NOT change this variable. It is set for convenience only. It should always be set to the `build` folder within the cloned repository. - -```sh -export EOSIO_BUILD_LOCATION=$EOSIO_LOCATION/build -mkdir -p $EOSIO_BUILD_LOCATION -cd $EOSIO_BUILD_LOCATION && cmake -DCMAKE_BUILD_TYPE='Release' -DCMAKE_TOOLCHAIN_FILE=$EOSIO_LOCATION/scripts/pinned_toolchain.cmake -DCMAKE_INSTALL_PREFIX=$EOSIO_INSTALL_LOCATION -DBUILD_MONGO_DB_PLUGIN=true $EOSIO_LOCATION -cd $EOSIO_BUILD_LOCATION && make -j$(nproc) -``` - -## Install EOSIO -This command installs the EOSIO software on the specified OS. Make sure to [Build EOSIO](#build-eosio) first. -```sh -cd $EOSIO_BUILD_LOCATION && make install -``` - -## Test EOSIO -These commands validate the EOSIO software installation on the specified OS. This task is optional but recommended. Make sure to [Install EOSIO](#install-eosio) first. -```sh -$EOSIO_INSTALL_LOCATION/bin/mongod --fork --logpath $(pwd)/mongod.log --dbpath $(pwd)/mongodata -cd $EOSIO_BUILD_LOCATION && make test -``` - -## Uninstall EOSIO -These commands uninstall the EOSIO software from the specified OS. -```sh -xargs rm < $EOSIO_BUILD_LOCATION/install_manifest.txt -rm -rf $EOSIO_BUILD_LOCATION -``` From ddc6be778bd338552d4b7bac45cc935149668220 Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Mon, 6 Apr 2020 23:12:46 -0400 Subject: [PATCH 5/7] rename unpinned build platform files --- .../{amazon_linux-2-unpinned.md => amazon_linux-2.md} | 0 .../03_platforms/{centos-7.7-unpinned.md => centos-7.7.md} | 0 .../03_platforms/{macos-10.14-unpinned.md => macos-10.14.md} | 0 .../03_platforms/{ubuntu-18.04-unpinned.md => ubuntu-18.04.md} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename docs/00_install/01_build-from-source/02_manual-build/03_platforms/{amazon_linux-2-unpinned.md => amazon_linux-2.md} (100%) rename docs/00_install/01_build-from-source/02_manual-build/03_platforms/{centos-7.7-unpinned.md => centos-7.7.md} (100%) rename docs/00_install/01_build-from-source/02_manual-build/03_platforms/{macos-10.14-unpinned.md => macos-10.14.md} (100%) rename docs/00_install/01_build-from-source/02_manual-build/03_platforms/{ubuntu-18.04-unpinned.md => ubuntu-18.04.md} (100%) diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2.md similarity index 100% rename from docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2-unpinned.md rename to docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2.md diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7.md similarity index 100% rename from docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7-unpinned.md rename to docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7.md diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14.md similarity index 100% rename from docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14-unpinned.md rename to docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14.md diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04.md similarity index 100% rename from docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04-unpinned.md rename to docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04.md From e426d9298b6d733663c04ec09861f65b5b711b48 Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Mon, 6 Apr 2020 23:18:36 -0400 Subject: [PATCH 6/7] update index file for manual build platforms --- .../02_manual-build/03_platforms/index.md | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/index.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/index.md index 2a8b26808..4058c091e 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/index.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/index.md @@ -2,12 +2,7 @@ content_title: Platforms --- -* [Amazon Linux 2 (pinned)](amazon_linux-2-pinned.md) -* [Amazon Linux 2 (unpinned)](amazon_linux-2-unpinned.md) -* [CentOS 7.7 (pinned)](centos-7.7-pinned.md) -* [CentOS 7.7 (unpinned)](centos-7.7-unpinned.md) -* [MacOS 10.14 (pinned)](macos-10.14-pinned.md) -* [MacOS 10.14 (unpinned)](macos-10.14-unpinned.md) -* [Ubuntu 16.04 (pinned)](ubuntu-16.04-pinned.md) -* [Ubuntu 18.04 (pinned)](ubuntu-18.04-pinned.md) -* [Ubuntu 18.04 (unpinned)](ubuntu-18.04-unpinned.md) +* [Amazon Linux 2](amazon_linux-2.md) +* [CentOS 7.7](centos-7.7.md) +* [MacOS 10.14](macos-10.14.md) +* [Ubuntu 18.04](ubuntu-18.04.md) From b6f18101b5df0731d1018825d1f25b3495627cbd Mon Sep 17 00:00:00 2001 From: Luis Paris Date: Mon, 6 Apr 2020 23:36:56 -0400 Subject: [PATCH 7/7] remove unpinned references in build platform files --- .../02_manual-build/03_platforms/amazon_linux-2.md | 2 +- .../02_manual-build/03_platforms/centos-7.7.md | 2 +- .../02_manual-build/03_platforms/macos-10.14.md | 2 +- .../02_manual-build/03_platforms/ubuntu-18.04.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2.md index 47ca7a71a..a117fbb85 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/amazon_linux-2.md @@ -1,5 +1,5 @@ --- -content_title: Amazon Linux 2 (unpinned) +content_title: Amazon Linux 2 --- This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Amazon Linux 2. diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7.md index 9800684dc..c807056a3 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/centos-7.7.md @@ -1,5 +1,5 @@ --- -content_title: Centos 7.7 (unpinned) +content_title: Centos 7.7 --- This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Centos 7.7. diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14.md index b3f89ccfa..a816a3d8c 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/macos-10.14.md @@ -1,5 +1,5 @@ --- -content_title: MacOS 10.14 (native compiler) +content_title: MacOS 10.14 --- This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on MacOS 10.14. diff --git a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04.md b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04.md index a2e1eaf26..c5b3bbda0 100644 --- a/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04.md +++ b/docs/00_install/01_build-from-source/02_manual-build/03_platforms/ubuntu-18.04.md @@ -1,5 +1,5 @@ --- -content_title: Ubuntu 18.04 (unpinned) +content_title: Ubuntu 18.04 --- This section contains shell commands to manually download, build, install, test, and uninstall EOSIO and dependencies on Ubuntu 18.04.