Difference between revisions of "LDC+Dub+Vibe.d on SmartOS 64bit"

From D Wiki
Jump to: navigation, search
Line 18: Line 18:
 
* ''# cd llvm''
 
* ''# cd llvm''
 
* ''# git checkout release_38''
 
* ''# git checkout release_38''
8. Correct AddLLVM.cmake in ./llvm/cmake/modules/AddLLVM.cmake. Change phrase <''discard_unused=sections''> to <''ignore''>.
+
8. Correct AddLLVM.cmake in ./cmake/modules/AddLLVM.cmake. Change phrase <''discard_unused=sections''> to <''ignore''>.
 
+
* ''# vi cmake/modules/AddLLVM.cmake''
 
9. Configure llvm only for one platform because it will be very long time building :-)
 
9. Configure llvm only for one platform because it will be very long time building :-)
 
* ''# mkdir ~/work/build_llvm''
 
* ''# mkdir ~/work/build_llvm''

Revision as of 11:28, 9 June 2016

1. Create “minimal-64-lts” zone with quota~10G and RAM~4G

2. If internet connection available only behind proxy, add proxy env to .bashrc

3. Restart bashrc

  • # . ~/.bashrc

4. Install needed packages

  • # pkgin up
  • # pkgin in binutils gmake cmake scmgit python35 autoconf gcc49 gcc49-libs unzip libconfig livevent

5. All manipulations I did from work directory, so create it

  • # mkdir work
  • # cd work

6. Set git protocol (need if proxy not work with git url)

7. Clone llvm repository and set last release

8. Correct AddLLVM.cmake in ./cmake/modules/AddLLVM.cmake. Change phrase <discard_unused=sections> to <ignore>.

  • # vi cmake/modules/AddLLVM.cmake

9. Configure llvm only for one platform because it will be very long time building :-)

  • # mkdir ~/work/build_llvm
  • # cd $_
  • # cmake -DCMAKE_BUILD_TYPE=”Release” -DLLVM_TARGETS_TO_BUILD=”X86” ../llvm/

10. Build and install llvm

  • # gmake -j5
  • # gmake install

11. For this moment (09.06.2016) in SmartOS package repositories libLLVM-3.7.0 is available. Alternatively you can try to install libLLVM-3.7.0 with pkgin manager, but this path not tested yet. Therefore in this howto used newer release of LLVM, that build from source.

12. Clone ldc and use branch ltsmaster.

13. Clone phobos and druntime. For this moment (09.06.2016) pull requests, that already done in branches “ldc-ltsmaster” are enough for using Vibe.d on SmartOS 64bit. Pull requests for working with serial port not commited yet, but if need it is available in https://github.com/tethyslab/druntime.git branch “lts-solaris-serial”.

14. Config, build and install ldc

  • # cd ~/work
  • # mkdir build_ldc
  • # cd $_
  • # cmake ../ldc

or you can use more interactive ccmake

  • # ccmake ../ldc

and inside it:

- type “c” on keyboard

- type “c” on keyboard once again

- type “g” on keyboard

  • # gmake -j5
  • # gmake install