Difference between revisions of "Install/macOS"
From MSX Game Library
< Install
(11 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | '''macOS''' users need to manually setup their environment before they can run the MSXgl's [[Build tool]]. | + | == Default == |
+ | |||
+ | 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) | + | * 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>) |
− | |||
− | == 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 | + | 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. | ||
− | + | You must de-quarantine the freshly built/downloaded binaries: | |
− | + | ||
− | + | <tt>xattr -r -d com.apple.quarantine ./MSXgl</tt> | |
− | |||
− | |||
− | |||
− | |||
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. | ||
− | + | 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. | ||
+ | |||
+ | == Using Docker == | ||
+ | |||
+ | |||
+ | This is a quick list of the item of user Sergarbes guide on macOS and Docker. | ||
+ | |||
+ | 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 |
Latest revision as of 12:45, 26 June 2024
Default
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
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.
Using Docker
This is a quick list of the item of user Sergarbes guide on macOS and Docker.
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