Comments (5)
It compiles without change on an Intel based mac. M1/M2 mac's have different settings for Homebrew which was annoying to figure out -- basically we'll need to add a "Building from source on macOS" and have an addendum for Apple silicon.
Homebrew basically builds to /opt/Homebrew
instead of wherever it goes on Intel macs. Not sure why the change but for me the easiest solution was to add these to the correct $PATH
environment variables. Can add this as an aside to a "Building on Mac" document.
Separate issue from this but thought I'd mention it since it took a bit to figure out for me.
from nas2d-core.
I mean, sure? But really the ultimate point here is that mac gaming is where it is because developers don't bother porting their software properly.
Granted it can be a real hassle to put together an App Bundle for mac without knowing what you're doing. I've been banging my head on a desk for awhile to get an OutpostHD mac bundle ready for distribution and it's been a headache and a half.
The same could be said for Visual Studio though it's not quite as rough.
from nas2d-core.
Yeah, this isn't something I can take seriously. We're not going to strip Mac support just because someone doesn't like Mac.
Besides, Mac builds are done with the makefile
, largely the same as Linux. There isn't really that much difference in the actual build between Linux and Mac. Mostly it's just a slightly different environment in terms of dependency install, and a different version of Clang.
I don't know much about Mac bundling. That's something we've never supported.
from nas2d-core.
The builds for mac are basically the same, but distribution is a little less simple for developers. There are two possible ways to do it -- I can either develop and xcode project that builds a Swift based app that then calls an embedded C++ CLI tool... or I can write a package installer app which will install the needed dependencies and binaries where they need to go and set up an Alias for the application either in the Applications folder or on the Desktop (not sure what's best practices for macOS yet).
I'm finding it really difficult to figure out the xcode bundling so I'm considering just using an installer script that handles it for us though it's not really the 'mac way' of doing things... but eh, whatever, this isn't a commercial product :D
from nas2d-core.
Could just leave it to Mac people to figure out for now. I mean, the code compiles on a Mac, so they're not totally unsupported. As it stands now, we don't really have any expertise in bundling software for Mac, and we maybe need to be careful what we spend limited time and energy on.
I'm sure we'll get there eventually, but if we're busy with other stuff meanwhile, and someone more knowledgeable happens to come along and do Mac bundling for us, then hey, that would be nice. I certainly wouldn't object to such help.
from nas2d-core.
Related Issues (20)
- Refactor Rectangle::translate to modify the rectangle in-place instead of returning a copy HOT 1
- Cross platform builds with Clang
- Update `Delegate` and `Signal` for lambdas HOT 5
- Arch Linux compile error HOT 2
- Remove `argv_0` from `Filesystem` constructor
- Fix test-graphics `uniform_int_distribution` template parameter HOT 1
- Update MacOS build image HOT 1
- Use config specific intermediate folders with `make` HOT 1
- Refactor MSVC project files HOT 1
- Fix debug builds of unit test project HOT 4
- Re-introduced audio bug HOT 4
- Fix `vcpkg` caching on CI HOT 1
- Remove Resource names HOT 1
- Remove Doxygen comments on private class fields HOT 1
- Improve `makefile` project semantics HOT 3
- Use Response Files for `make` builds
- Pulled latest, vcpkg fails to build HOT 2
- `EventHandler` key modifier checks should be `static`
- Update Visual Studio solution and projects to Visual Studio 2022 HOT 17
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nas2d-core.