Stack Exchange Network

Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange
    Bounty Ended with 50 reputation awarded by zabumba
15 Added Note 4
source | link
  1. mkdir -pv ~/chromium
  2. cd ~/chromium
  3. git config --global user.name “Joel Maranhao”
  4. git config --global user.email “youremail@example.com”
  5. git config --global core.autocrlf false
  6. git config --global core.filemode false
  7. git config --global color.ui true
  8. git clone https://chromium.googlesource.com/chromium/tools/depot_tools
  9. export PATH=$PATH:~/chromium/depot_tools See Update Notes 1
  10. mkdir -v ~/chromium/buildhost See Update Note 2
  11. cd ../buildhost See Update Note 2
  12. fetch --nohooks chromium
  13. cd src && ./build/install-build-deps.sh See Note 3
  14. sudo apt-get install gcc-arm-linux-gnueabihf
  15. sudo apt-get install g++-4.8-multilib-arm-linux-gnueabihf
  16. ./build/install-build-deps.sh --arm See Note 3
  17. gclient sync
  18. echo "{ 'GYP_DEFINES': 'target_arch=armGYP_CROSSCOMPILE=1 GYP_DEFINES=target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1 clang=False', 'GYP_CROSSCOMPILE': 'True', }" > ../chromium.gyp_env See Note 4
  19. gclient runhooks
  20. ninja -C out/Debug chrome
  1. From Studying your Post, while downloading the Gigs and Gigs of data from the repository, I see that you ran the fetch script and downloaded the Source Code into the depot_tools directory. This is a common mistake and is easily remedied by creating a separate directory, as I've done. This keeps the tools needed to manage and manipulate the build files separate from the items you are building. This also ensures that the items you are building aren't polluted by the tools used to build them.
  2. The first pass of build-deps.sh downloads all the build tools regardless of cross-compiling or not. Step 14 and 15 are needed in case the script complains about Held Packages. The 2nd Pass(Step 16), sets up the cross compile. I'll update this note as the build progresses.
  3. For some reason the OP and I both had trouble with the gyp_env file. Because of this, I have updated Step 18 to include the needed exports. If interested in using the gyp_env file, see the Gyp User Documentation, Configuring the Builds, and Common Gyp Build Parameters
  1. mkdir -pv ~/chromium
  2. cd ~/chromium
  3. git config --global user.name “Joel Maranhao”
  4. git config --global user.email “youremail@example.com”
  5. git config --global core.autocrlf false
  6. git config --global core.filemode false
  7. git config --global color.ui true
  8. git clone https://chromium.googlesource.com/chromium/tools/depot_tools
  9. export PATH=$PATH:~/chromium/depot_tools See Update Notes 1
  10. mkdir -v ~/chromium/buildhost See Update Note 2
  11. cd ../buildhost See Update Note 2
  12. fetch --nohooks chromium
  13. cd src && ./build/install-build-deps.sh See Note 3
  14. sudo apt-get install gcc-arm-linux-gnueabihf
  15. sudo apt-get install g++-4.8-multilib-arm-linux-gnueabihf
  16. ./build/install-build-deps.sh --arm See Note 3
  17. gclient sync
  18. echo "{ 'GYP_DEFINES': 'target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1 clang=False', 'GYP_CROSSCOMPILE': 'True', }" > ../chromium.gyp_env
  19. gclient runhooks
  20. ninja -C out/Debug chrome
  1. From Studying your Post, while downloading the Gigs and Gigs of data from the repository, I see that you ran the fetch script and downloaded the Source Code into the depot_tools directory. This is a common mistake and is easily remedied by creating a separate directory, as I've done. This keeps the tools needed to manage and manipulate the build files separate from the items you are building. This also ensures that the items you are building aren't polluted by the tools used to build them.
  2. The first pass of build-deps.sh downloads all the build tools regardless of cross-compiling or not. Step 14 and 15 are needed in case the script complains about Held Packages. The 2nd Pass(Step 16), sets up the cross compile. I'll update this note as the build progresses.
  1. mkdir -pv ~/chromium
  2. cd ~/chromium
  3. git config --global user.name “Joel Maranhao”
  4. git config --global user.email “youremail@example.com”
  5. git config --global core.autocrlf false
  6. git config --global core.filemode false
  7. git config --global color.ui true
  8. git clone https://chromium.googlesource.com/chromium/tools/depot_tools
  9. export PATH=$PATH:~/chromium/depot_tools See Update Notes 1
  10. mkdir -v ~/chromium/buildhost See Update Note 2
  11. cd ../buildhost See Update Note 2
  12. fetch --nohooks chromium
  13. cd src && ./build/install-build-deps.sh See Note 3
  14. sudo apt-get install gcc-arm-linux-gnueabihf
  15. sudo apt-get install g++-4.8-multilib-arm-linux-gnueabihf
  16. ./build/install-build-deps.sh --arm See Note 3
  17. gclient sync
  18. GYP_CROSSCOMPILE=1 GYP_DEFINES=target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1 See Note 4
  19. gclient runhooks
  20. ninja -C out/Debug chrome
  1. From Studying your Post, while downloading the Gigs and Gigs of data from the repository, I see that you ran the fetch script and downloaded the Source Code into the depot_tools directory. This is a common mistake and is easily remedied by creating a separate directory, as I've done. This keeps the tools needed to manage and manipulate the build files separate from the items you are building. This also ensures that the items you are building aren't polluted by the tools used to build them.
  2. The first pass of build-deps.sh downloads all the build tools regardless of cross-compiling or not. Step 14 and 15 are needed in case the script complains about Held Packages. The 2nd Pass(Step 16), sets up the cross compile. I'll update this note as the build progresses.
  3. For some reason the OP and I both had trouble with the gyp_env file. Because of this, I have updated Step 18 to include the needed exports. If interested in using the gyp_env file, see the Gyp User Documentation, Configuring the Builds, and Common Gyp Build Parameters
14 Updated gyp_env
source | link
  1. mkdir -pv ~/chromium
  2. cd ~/chromium
  3. git config --global user.name “Joel Maranhao”
  4. git config --global user.email “youremail@example.com”
  5. git config --global core.autocrlf false
  6. git config --global core.filemode false
  7. git config --global color.ui true
  8. git clone https://chromium.googlesource.com/chromium/tools/depot_tools
  9. export PATH=$PATH:~/chromium/depot_tools See Update Notes 1
  10. mkdir -v ~/chromium/buildhost See Update Note 2
  11. cd ../buildhost See Update Note 2
  12. fetch --nohooks chromium
  13. cd src && ./build/install-build-deps.sh See Note 3
  14. sudo apt-get install gcc-arm-linux-gnueabihf
  15. sudo apt-get install g++-4.8-multilib-arm-linux-gnueabihf
  16. ./build/install-build-deps.sh --arm See Note 3
  17. gclient sync
  18. echo "{ 'GYP_DEFINES': 'target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1'linux_use_gold_flags=1 clang=False', 'GYP_CROSSCOMPILE': 'True', }" > ../chromium.gyp_env
  19. gclient runhooks
  20. ninja -C out/Debug chrome
  1. mkdir -pv ~/chromium
  2. cd ~/chromium
  3. git config --global user.name “Joel Maranhao”
  4. git config --global user.email “youremail@example.com”
  5. git config --global core.autocrlf false
  6. git config --global core.filemode false
  7. git config --global color.ui true
  8. git clone https://chromium.googlesource.com/chromium/tools/depot_tools
  9. export PATH=$PATH:~/chromium/depot_tools See Update Notes 1
  10. mkdir -v ~/chromium/buildhost See Update Note 2
  11. cd ../buildhost See Update Note 2
  12. fetch --nohooks chromium
  13. cd src && ./build/install-build-deps.sh See Note 3
  14. sudo apt-get install gcc-arm-linux-gnueabihf
  15. sudo apt-get install g++-4.8-multilib-arm-linux-gnueabihf
  16. ./build/install-build-deps.sh --arm See Note 3
  17. gclient sync
  18. echo "{ 'GYP_DEFINES': 'target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1', 'GYP_CROSSCOMPILE': 'True', }" > ../chromium.gyp_env
  19. gclient runhooks
  20. ninja -C out/Debug chrome
  1. mkdir -pv ~/chromium
  2. cd ~/chromium
  3. git config --global user.name “Joel Maranhao”
  4. git config --global user.email “youremail@example.com”
  5. git config --global core.autocrlf false
  6. git config --global core.filemode false
  7. git config --global color.ui true
  8. git clone https://chromium.googlesource.com/chromium/tools/depot_tools
  9. export PATH=$PATH:~/chromium/depot_tools See Update Notes 1
  10. mkdir -v ~/chromium/buildhost See Update Note 2
  11. cd ../buildhost See Update Note 2
  12. fetch --nohooks chromium
  13. cd src && ./build/install-build-deps.sh See Note 3
  14. sudo apt-get install gcc-arm-linux-gnueabihf
  15. sudo apt-get install g++-4.8-multilib-arm-linux-gnueabihf
  16. ./build/install-build-deps.sh --arm See Note 3
  17. gclient sync
  18. echo "{ 'GYP_DEFINES': 'target_arch=arm arm_float_abi=hard component=shared_library linux_use_gold_flags=1 clang=False', 'GYP_CROSSCOMPILE': 'True', }" > ../chromium.gyp_env
  19. gclient runhooks
  20. ninja -C out/Debug chrome
13 edited body
source | link

Notice Steps 1517 - 1719. Step 1518 replaces the Export Statements from Recipe 2 in the file chromium.gyp_env (This effectively switches the build Compiler to clang). Step 1619 imports the chromium.gyp_env settings, and will run the proper buildscripts in the proper order.

Notice Steps 15 - 17. Step 15 replaces the Export Statements from Recipe 2 in the file chromium.gyp_env (This effectively switches the build Compiler to clang). Step 16 imports the chromium.gyp_env settings, and will run the proper buildscripts in the proper order.

Notice Steps 17 - 19. Step 18 replaces the Export Statements from Recipe 2 in the file chromium.gyp_env (This effectively switches the build Compiler to clang). Step 19 imports the chromium.gyp_env settings, and will run the proper buildscripts in the proper order.

12 Updated Step 18
source | link
11 Added Note 3
source | link
10 Added Note 2
source | link
9 added 2 characters in body
source | link
8 edited body
source | link
7 added 10 characters in body
source | link
6 Added Notes
source | link
5 Removed Extra Depot Tools
source | link
4 deleted 5 characters in body
source | link
3 added 1 character in body
source | link
2 added 1 character in body
source | link
1
source | link