Difference between revisions of "Install/macOS"

From MSX Game Library

< Install

Line 1: Line 1:
 +
== Guide by user Syntrax ==
 +
 
For the [[install]]ation, '''macOS''' users need to manually setup their environment before they can run the MSXgl's [[Build tool]].
 
For the [[install]]ation, '''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.
 
Here is a guide provided by user Syntrax to help you in this process.
  
== Node.js ==
+
=== Node.js ===
 
* 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>)
 
* 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, or use Brew (<tt>brew install sdcc</tt>)
 
* Install [https://sdcc.sourceforge.net/ SDCC] 4.2.0, or use Brew (<tt>brew install sdcc</tt>)
  
== Tools ==
+
=== Tools ===
 
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.
 
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 Command line tools (<tt>xcode-select --install</tt>).
 
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>.
  
== Build ==
+
=== Build ===
 
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.
Line 26: Line 28:
 
* <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.
 +
 +
== Guide by user Sergarbes ==
 +
This is a quick list of the item of my guide on macOS and Docker that I am working on...
 +
MSXgl (Ventura, Sonoma and above)
 +
 +
* Activate the display of hidden files
 +
* Enable Privacy & Security
 +
* Install Homebrew (The Missing Package Manager for macOS or Linux)
 +
* Install Git
 +
* Install Docker
 +
* '''Run a ARM based Debian instance in Docker'''
 +
* '''Install node.js in the Docker container'''
 +
* '''Install sdcc in the Docker container'''
 +
* Create a user with the same name of your Mac user in the Debian Docker Container for the ease of the permission issues
 +
* Download copy and unzip MSXgl directory to you macOS Developer directory
 +
* In order to adapt the binaries to your Mac you need to compile the build tools utilities.
 +
* Modifying the .js default configuration binaries location to point the installed ones
 +
* Compile the template to see that all is ok
 +
* Run OpenMSX and insert the ROM
 +
 +
Items in bold can be ignored if using the image I created and published on Docker Hub https://hub.docker.com/r/sergarbes/msxgl

Revision as of 13:44, 26 June 2024

Guide by user Syntrax

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.

Guide by user Sergarbes

This is a quick list of the item of my guide on macOS and Docker that I am working on... MSXgl (Ventura, Sonoma and above)

  • Activate the display of hidden files
  • Enable Privacy & Security
  • Install Homebrew (The Missing Package Manager for macOS or Linux)
  • Install Git
  • Install Docker
  • Run a ARM based Debian instance in Docker
  • Install node.js in the Docker container
  • Install sdcc in the Docker container
  • Create a user with the same name of your Mac user in the Debian Docker Container for the ease of the permission issues
  • Download copy and unzip MSXgl directory to you macOS Developer directory
  • In order to adapt the binaries to your Mac you need to compile the build tools utilities.
  • Modifying the .js default configuration binaries location to point the installed ones
  • Compile the template to see that all is ok
  • Run OpenMSX and insert the ROM

Items in bold can be ignored if using the image I created and published on Docker Hub https://hub.docker.com/r/sergarbes/msxgl