-
-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Difficulties compiling on macOS ARM #6
Comments
IIRC since I wrote that paragraph things got even worse on macOS due to apple removing and deprecating opengl and the metal port of shiny is really buggy. Stubbing simply means adding an implementation of a function that does nothing. |
It seems as though there are more errors than just stubbing now, as you mentioned. I commented some code out, stubbed a few methods and now have problems linking. I am going to guess that Yacco simply is no longer compatible with macOS. diff --git a/vendor/golang.org/x/exp/shiny/driver/gldriver/context.go b/vendor/golang.org/x/exp/shiny/driver/gldriver/context.go
index 63fb170..2cda631 100644
--- a/vendor/golang.org/x/exp/shiny/driver/gldriver/context.go
+++ b/vendor/golang.org/x/exp/shiny/driver/gldriver/context.go
@@ -18,11 +18,11 @@ func NewContext() (gl.Context, error) {
workAvailable := worker.WorkAvailable()
go func() {
runtime.LockOSThread()
- err := surfaceCreate()
- errCh <- err
- if err != nil {
- return
- }
+ //err := surfaceCreate()
+ //errCh <- err
+ //if err != nil {
+ // return
+ //}
for range workAvailable {
worker.DoWork()
diff --git a/vendor/golang.org/x/exp/shiny/driver/gldriver/screen.go b/vendor/golang.org/x/exp/shiny/driver/gldriver/screen.go
index 3100ebc..cced2b3 100644
--- a/vendor/golang.org/x/exp/shiny/driver/gldriver/screen.go
+++ b/vendor/golang.org/x/exp/shiny/driver/gldriver/screen.go
@@ -139,9 +139,9 @@ func (s *screenImpl) NewWindow(opts *screen.NewWindowOptions) (screen.Window, er
s.windows[id] = w
s.mu.Unlock()
- if useLifecycler {
- w.lifecycler.SendEvent(w, nil)
- }
+ //if useLifecycler {
+ //w.lifecycler.SendEvent(w, nil)
+ //}
showWindow(w)
diff --git a/vendor/golang.org/x/exp/shiny/driver/gldriver/window.go b/vendor/golang.org/x/exp/shiny/driver/gldriver/window.go
index 82baf2c..d931db6 100644
--- a/vendor/golang.org/x/exp/shiny/driver/gldriver/window.go
+++ b/vendor/golang.org/x/exp/shiny/driver/gldriver/window.go
@@ -68,19 +68,29 @@ type windowImpl struct {
// NextEvent implements the screen.EventDeque interface.
func (w *windowImpl) NextEvent() interface{} {
e := w.Deque.NextEvent()
- if handleSizeEventsAtChannelReceive {
- if sz, ok := e.(size.Event); ok {
- w.glctxMu.Lock()
- w.backBufferBound = false
- w.szMu.Lock()
- w.sz = sz
- w.szMu.Unlock()
- w.glctxMu.Unlock()
- }
- }
+ // if handleSizeEventsAtChannelReceive {
+ // if sz, ok := e.(size.Event); ok {
+ // w.glctxMu.Lock()
+ // w.backBufferBound = false
+ // w.szMu.Lock()
+ // w.sz = sz
+ // w.szMu.Unlock()
+ // w.glctxMu.Unlock()
+ // }
+ // }
return e
}
+func (w *windowImpl) Raise() error {
+ return nil
+}
+
+func (w *windowImpl) SetCursor(c screen.Cursor) error { return nil }
+
+func (w *windowImpl) SetTitle(title string) error { return nil }
+
+func (w *windowImpl) WarpMouse(p image.Point) error { return nil }
+
func (w *windowImpl) Release() {
// There are two ways a window can be closed: the Operating System or
// Desktop Environment can initiate (e.g. in response to a user clicking a Errors: /nix/store/bva4mymi5b2lhvvbccx8ipws89rar1d8-go-1.23.4/share/go/pkg/tool/darwin_arm64/link: running clang failed: exit status 1
/usr/bin/clang -arch arm64 -Wl,-headerpad,1144 -o $WORK/b001/exe/a.out -Qunused-arguments /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/go.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000000.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000001.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000002.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000003.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000004.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000005.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000006.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000007.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000008.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000009.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000010.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000011.o /var/folders/65/wm0tp_297h3f57_clsk7lc140000gn/T/go-link-1603195481/000012.o -lresolv -O2 -g -framework OpenGLES -O2 -g -framework CoreFoundation -framework CoreFoundation -framework Security
ld: framework 'OpenGLES' not found
clang: error: linker command failed with exit code 1 (use -v to see invocation) |
When attempting to compile, I am getting the following errors:
I saw in the README that shiny does not compile on macOS any longer and it references two methods that need Stubbed. I am not really a Go programmer and not sure what that really means or what I need to do to compile Yacco.
Thank you for any help.
The text was updated successfully, but these errors were encountered: