Difference between revisions of "Install/macOS"

From MSX Game Library

< Install

 
(7 intermediate revisions by 2 users not shown)
Line 3: Line 3:
  
 
== Node.js ==
 
== Node.js ==
* Install [https://nodejs.org/ Node.js] (18.12.1 or newer)
+
* Install [https://nodejs.org/ Node.js] (18.12.1 or newer), or use [https://github.com/nvm-sh/nvm NVM] (<tt>brew install nvm</tt>)
  
 
== SDCC ==
 
== SDCC ==
* Install [https://sdcc.sourceforge.net/ SDCC] 4.2.0
+
* Install [https://sdcc.sourceforge.net/ SDCC] 4.2.0, or use Brew (<tt>brew install sdcc</tt>)
: Unpack archive: <tt>sudo cp -R * /usr/opt/.</tt>
 
  
 
== Tools ==
 
== Tools ==
Go in to the MSXgl folder and recompile all the enclosed tools. As sources are included, its mostly <tt>./build.sh</tt>.
+
Go in to the MSXgl folder and recompile all the enclosed tools. As sources are included, its mostly running <tt>./build.sh</tt> on every folder.
At minimum, you require the xcode terminal environment.
+
At minimum, you require the Xcode Command line tools (<tt>xcode-select --install</tt>).
 
That will compile for example <tt>MSXhex</tt>, <tt>MSXbin</tt> and <tt>msxtar</tt>.
 
That will compile for example <tt>MSXhex</tt>, <tt>MSXbin</tt> and <tt>msxtar</tt>.
  
Line 17: Line 16:
 
Then the project/sample's <tt>build.sh</tt> script will start calling SDCC components or the binaries.
 
Then the project/sample's <tt>build.sh</tt> script will start calling SDCC components or the binaries.
 
macOS will block that for security reasons, so build.sh will fail.
 
macOS will block that for security reasons, so build.sh will fail.
* Go to system setting, security and privacy.
+
You must de-quarantine the freshly built/downloaded binaries:
* There you will find a small part that says ''"allow appstore and third parties"'' or ''"allow appstore"'' and a button ''"Allow anyway"''.
+
 
* Then macOS will ask your administrator credentials and register the binary as safe.
+
<tt>xattr -r -d com.apple.quarantine ./MSXgl</tt>
* When you run <tt>build.sh</tt>, a new popup will appear warning the user about an unknown source but you will have a button "Open".
 
* Press that and the binary will start.
 
* Repeat this for every step in <tt>build.sh</tt>.
 
* Once the first project has been build, you probably won't need it anymore unless a previously not used tool is started, which hasn't been authorized yet.
 
  
 
The full process takes about 10~15 minutes to get it up and running.
 
The full process takes about 10~15 minutes to get it up and running.
  
Note:
+
Notes:
 
* <tt>[[MSXhex]]</tt> is used to convert .IHX files generated by SDCC into final binary file (.ROM, .COM or .BIN).
 
* <tt>[[MSXhex]]</tt> is used to convert .IHX files generated by SDCC into final binary file (.ROM, .COM or .BIN).
 
* <tt>msxtar</tt> (not part of [[MSXtk]]) is used to generate .DSK file for MSX-DOS or BASIC binary target.
 
* <tt>msxtar</tt> (not part of [[MSXtk]]) is used to generate .DSK file for MSX-DOS or BASIC binary target.
 
* Other tools from MSXtk are not part of the build process.
 
* Other tools from MSXtk are not part of the build process.

Latest revision as of 17:25, 22 October 2023

For the installation, macOS users need to manually setup their environment before they can run the MSXgl's Build tool. Here is a guide provided by user Syntrax to help you in this process.

Node.js

  • Install Node.js (18.12.1 or newer), or use NVM (brew install nvm)

SDCC

  • Install SDCC 4.2.0, or use Brew (brew install sdcc)

Tools

Go in to the MSXgl folder and recompile all the enclosed tools. As sources are included, its mostly running ./build.sh on every folder. At minimum, you require the Xcode Command line tools (xcode-select --install). That will compile for example MSXhex, MSXbin and msxtar.

Build

Then the project/sample's build.sh script will start calling SDCC components or the binaries. macOS will block that for security reasons, so build.sh will fail. You must de-quarantine the freshly built/downloaded binaries:

xattr -r -d com.apple.quarantine ./MSXgl

The full process takes about 10~15 minutes to get it up and running.

Notes:

  • MSXhex is used to convert .IHX files generated by SDCC into final binary file (.ROM, .COM or .BIN).
  • msxtar (not part of MSXtk) is used to generate .DSK file for MSX-DOS or BASIC binary target.
  • Other tools from MSXtk are not part of the build process.