dev:clone_from_github
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
dev:clone_from_github [2014/09/03 04:52] – tsmall1 | dev:clone_from_github [2017/07/15 13:32] (current) – [Install SDL] ackley | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Cloning From Github ====== | ====== Cloning From Github ====== | ||
- | In order to make your own [[Components: | + | **NOTE**: You can compile and run your own [[Components: |
- | Cloning the repo from Github seems relatively | + | However, if you wish to participate in the development of MFM or ULAM, you will need to download and build the software from its source codes, which are kept in two repositories at Github. |
+ | |||
+ | Cloning the repos from Github seems relatively | ||
+ | |||
+ | **WARNING**: | ||
** Note: ** This tutorial is performed on Ubuntu 14.04 . Your installation procedure may vary. | ** Note: ** This tutorial is performed on Ubuntu 14.04 . Your installation procedure may vary. | ||
- | ===== Install git ===== | + | ===== Update lists of packages |
+ | First, make sure that lists of packages are up-to-date | ||
- | First, you will need to install **git**. This can be done with a package manager, such as **apt-get**: | + | < |
+ | sudo apt-get | ||
+ | </ | ||
+ | |||
+ | ===== Install needed packages ===== | ||
+ | These packages are described in more detail in the immediately following subsections, | ||
< | < | ||
- | sudo apt-get install git | + | sudo apt-get install git g++ libsdl1.2-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libcrypt-openssl-bignum-perl libcrypt-openssl-rsa-perl libcapture-tiny-perl |
</ | </ | ||
- | ===== Install | + | ==== Install |
- | You will need **g++**, a c++ compiler, in order to build the software. Simply use your package manager | + | You will need to install |
< | < | ||
- | sudo apt-get install | + | sudo apt-get install |
</ | </ | ||
- | ===== Clone the Repository ===== | + | ==== Install g++ ==== |
- | Next, you will need to clone the codebase to your computer. To do this, browse | + | You will need **g++**, a c++ compiler, in order to build the software. Simply use your package manager |
< | < | ||
- | git clone https:// | + | sudo apt-get install g++ |
</ | </ | ||
- | ===== Install SDL ===== | + | ==== Install SDL ==== |
The MFM software uses SDL to render to a window, play audio, and render fonts. | The MFM software uses SDL to render to a window, play audio, and render fonts. | ||
Line 37: | Line 47: | ||
The MFM software needs SDL version 1.2 . **Do not install SDL 2.0!** | The MFM software needs SDL version 1.2 . **Do not install SDL 2.0!** | ||
- | libsdl1.2-dev is the package for the main SDL system. | + | '' |
- | libsdl-image1.2-dev is the package for translating image types other than bitmaps. | + | '' |
- | libsdl-mixer1.2-dev is the package for playing audio. | + | '' |
- | libsdl-ttf2.0-dev is the package for rendering TTF fonts. This is an SDL 1.2 package. | + | Install |
- | + | ||
- | You will need to install the following | + | |
< | < | ||
sudo apt-get install libsdl1.2-dev | sudo apt-get install libsdl1.2-dev | ||
sudo apt-get install libsdl-image1.2-dev | sudo apt-get install libsdl-image1.2-dev | ||
- | sudo apt-get install libsdl-mixer1.2-dev | ||
sudo apt-get install libsdl-ttf2.0-dev | sudo apt-get install libsdl-ttf2.0-dev | ||
</ | </ | ||
- | ===== Build MFMv2 ===== | + | ==== Install crypto support and misc packages |
- | Now that you have installed all of the dependencies | + | The top level of the **ULAM** compiler is written in Perl. Among its tasks is to generate ' |
< | < | ||
- | make | + | sudo apt-get install libcrypt-openssl-bignum-perl |
+ | sudo apt-get install libcrypt-openssl-rsa-perl | ||
+ | sudo apt-get install libcapture-tiny-perl | ||
</ | </ | ||
- | This should build the software as long as the repo does not contain any errors. To run the software, the executable is located in the **bin** folder. Type: | + | |
+ | ===== Clone the Repositories ===== | ||
+ | |||
+ | Next, you will need to clone the codebase to your computer. To do this, browse to the folder which you would like to contain | ||
< | < | ||
- | bin/mfms | + | git clone https:// |
+ | git clone https:// | ||
+ | </ | ||
+ | |||
+ | Note this will create MFM/ and ULAM/ directories as siblings in whatever directory you started in -- and that's desirable because the two repositories will be able to find each other without any additional local configuration. | ||
+ | |||
+ | ===== Build the software ===== | ||
+ | |||
+ | Now that you have installed all of the dependencies that you need, you can build the MFM software: | ||
+ | < | ||
+ | $ cd MFM | ||
+ | MFM$ make | ||
+ | </ | ||
+ | |||
+ | This should build the MFM software as long as the repo does not contain any errors. | ||
+ | |||
+ | After that succeeds, you can build the ULAM compiler: | ||
+ | |||
+ | < | ||
+ | MFM$ cd ../ULAM | ||
+ | ULAM$ make | ||
+ | </ | ||
+ | |||
+ | This may //also// take quite a while. | ||
+ | |||
+ | Once the ULAM compiler is built, you need to use it to build "ulam exports" | ||
+ | |||
+ | < | ||
+ | ULAM$ make ulamexports | ||
+ | </ | ||
+ | |||
+ | Note that the results of making ulamexports (in the ULAM/ repo) places its output in the MFM/ repo! Trying to run the MFM simulator without getting through ' | ||
+ | |||
+ | Note also that '' | ||
+ | |||
+ | ===== Run the software ===== | ||
+ | |||
+ | To run the software, the executable is located in the **MFM/bin** folder. Type: | ||
+ | |||
+ | < | ||
+ | MFM$ ./bin/mfms | ||
</ | </ | ||
to run the simulator. | to run the simulator. | ||
+ | |||
+ |
dev/clone_from_github.1409719971.txt.gz · Last modified: 2014/09/03 04:52 by tsmall1