This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
howto:compiling_gcc [2012/09/17 10:14] adymond |
howto:compiling_gcc [2021/12/09 16:42] (current) |
||
|---|---|---|---|
| Line 4: | Line 4: | ||
| GCC version required for their codes. For the official guide on compiling GCC | GCC version required for their codes. For the official guide on compiling GCC | ||
| please visit the [[http:// | please visit the [[http:// | ||
| - | documents how GCC would be built on the Sun Tsessbe Cluster login node, | + | documents how GCC 4.7.1 would be built on the Sun Tsessbe Cluster login node, |
| after the August 2012 upgrades. | after the August 2012 upgrades. | ||
| Line 22: | Line 22: | ||
| Note on the lib folder naming conventions, | Note on the lib folder naming conventions, | ||
| - | libraries 64 bit by default, and some 32 bit libraries as well. So my Ubuntu | + | libraries 64 bit by default, and some 32 bit libraries as well. In Ubuntu |
| - | 12.04 i have the following library folder name convention | + | 12.04 for example, |
| / | / | ||
| However, on the login node which is little older, its the other way round. The | However, on the login node which is little older, its the other way round. The | ||
| - | lib folder refers to 32 libraries by default, while the lib64 is for 64 bit | + | lib folder refers to 32 bit libraries by default, while the lib64 is for 64 bit |
| - | folders. ie its has the following naming convention | + | libraries. ie its the chpc nodes have the following naming convention |
| / | / | ||
| - | So when install software, which is 64 bit (default these days) remember you | + | So when you install software, which is 64 bit (default these days) remember you |
| - | want to install it the lib64 and the lib folder, as the lib64 folders are | + | want to install it in the lib64 and not the lib folder, as the lib64 folders are |
| - | searched first. ie use the following compilation | + | searched first. ie use the following compilation |
| - | | + | |
| ===== Setting up the latest GNU binutils and libtool ===== | ===== Setting up the latest GNU binutils and libtool ===== | ||
| Line 349: | Line 348: | ||
| $ cp -v $HOME/ | $ cp -v $HOME/ | ||
| - | ==== GDB : the GNU debugger (optional) ==== | ||
| - | |||
| - | $ download_and_install_from_source.sh \ | ||
| - | http:// | ||
| - | / | ||
| - | |||
| - | Testing took 20 minutes | ||
| - | Got quite a lot of failures here... | ||
| Line 387: | Line 378: | ||
| $ mkdir BUILD | $ mkdir BUILD | ||
| $ cd BUILD | $ cd BUILD | ||
| - | $ ../ | ||
| - | | ||
| - | The following languages will be built: c, | ||
| - | *** This configuration is not supported in the following subdirectories: | ||
| - | | ||
| - | (Any other directories should still work fine.) | ||
| - | |||
| - | $ ../ | ||
| - | | ||
| - | | ||
| - | |||
| - | If this fails going to try | ||
| $ ../ | $ ../ | ||
| | | ||
| Line 406: | Line 385: | ||
| | | ||
| | | ||
| - | + | The following languages will be built: c, | |
| + | *** This configuration is not supported in the following subdirectories: | ||
| + | | ||
| + | (Any other directories should still work fine.) | ||
| ===== Compiling GCC ===== | ===== Compiling GCC ===== | ||
| Line 440: | Line 421: | ||
| ie. // | ie. // | ||
| file. A big help here is to add the -v flag to the xgcc compiler. | file. A big help here is to add the -v flag to the xgcc compiler. | ||
| - | |||
| - | === could not read symbols: Invalid operation === | ||
| - | |||
| - | This error occured when, no setting with gmp path and and with .... | ||
| - | |||
| - | === Bad symbol types === | ||
| - | Linking 32 bit libraries against 64 bit libraries... | ||
| ===== Testing ===== | ===== Testing ===== | ||
| Line 537: | Line 511: | ||
| folder is selected before your newer version. So to be safe, when you install new | folder is selected before your newer version. So to be safe, when you install new | ||
| software, use the following options | software, use the following options | ||
| - | --prefix=$HOME/ | + | |
| size of install | size of install | ||