Giter Site home page Giter Site logo

nix-gccemacs-darwin's Introduction

CI

nix-gccemacs-darwin

Build gccemacs for macOS 10.15 or newer using Nix.

Installation

  • Build on local machine

    git clone https://github.com/twlz0ne/nix-gccemacs-darwin
    cd nix-gccemacs-darwin && nix-env -iA emacsGccDarwin
  • Pull pre-built binaries from Cachix (recommend)

    nix-env -iA cachix -f https://cachix.org/api/v1/install
    cachix use gccemacs-darwin
    nix-env -iA emacsGccDarwin -f https://github.com/twlz0ne/nix-gccemacs-darwin/archive/master.zip

For macOS 10.12 see nix-gccemacs-sierra.

nix-gccemacs-darwin's People

Contributors

hmirin avatar twlz0ne avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

nix-gccemacs-darwin's Issues

Using it with doom emacs on Big Sur?

Hi, I just installed gcc emacs on Big Sur (x86_64) and it seemed to work.

These were the steps I did:

$ nix-env -iA emacsGccDarwin -f https://github.com/twlz0ne/nix-gccemacs-darwin/archive/master.zip

However, I tried to sync my doom emacs and I got the following error:

❯ doom sync
ld: warning: object file (/var/folders/p3/r_r5f1ms1nx1rkpb7bt95lz00000gn/T//ccJhUArI.o) was built for newer macOS version (11.0) than being linked (10.16)
ld: file not found: /usr/lib/system/libcache.dylib for architecture x86_64
libgccjit.so: error: error invoking gcc driver
x There was an unexpected error
  Message: Internal native compiler error
  Data: (native-ice lambda (arg3 &rest arg4) (let ((f #'message)) (apply f arg3 arg4)))
  Backtrace:
    (signal native-ice ((lambda (arg3 &rest arg4) (let ((f #'message)) (apply
    (comp--native-compile (lambda (arg3 &rest arg4) (let ((f #'message)) (appl
    (comp-trampoline-compile message)
    (comp-subr-trampoline-install message)
    (fset message (closure ((message . #<subr message>) (log-buffer . #<buffer
    (progn (fset #'message vnew) (ignore message) (unwind-protect (catch 'exit
    (unwind-protect (progn (fset #'message vnew) (ignore message) (unwind-prot
    (let* ((vnew #'(lambda (msg &rest args) (save-current-buffer (set-buffer l
    (let ((message (symbol-function #'message))) (let* ((vnew #'(lambda (msg &
    (let* ((log-buffer (generate-new-buffer " *doom log*")) (standard-output #
! Extended backtrace logged to ~/.emacs.d/.local/doom.error.log
ld: warning: object file (/var/folders/p3/r_r5f1ms1nx1rkpb7bt95lz00000gn/T//ccaoUyTu.o) was built for newer macOS version (11.0) than being linked (10.16)
ld: file not found: /usr/lib/system/libcache.dylib for architecture x86_64
libgccjit.so: error: error invoking gcc driver
x There was an unexpected error
  Message: Internal native compiler error
  Data: (native-ice lambda (arg5 &rest arg6) (let ((f #'message)) (apply f arg5 arg6)))
  Backtrace:
    (signal native-ice ((lambda (arg5 &rest arg6) (let ((f #'message)) (apply
    (comp--native-compile (lambda (arg5 &rest arg6) (let ((f #'message)) (appl
    (comp-trampoline-compile message)
    (comp-subr-trampoline-install message)
    (fset message #<subr message>)
    (unwind-protect (progn (fset #'message vnew) (ignore message) (unwind-prot
    (let* ((vnew #'(lambda (msg &rest args) (save-current-buffer (set-buffer l
    (let ((message (symbol-function #'message))) (let* ((vnew #'(lambda (msg &
    (let* ((log-buffer (generate-new-buffer " *doom log*")) (standard-output #
    (condition-case e (let* ((log-buffer (generate-new-buffer " *doom log*"))
! Extended backtrace logged to ~/.emacs.d/.local/doom.error.log

Is this more of a doom emacs issue or did I miss something from my installation?

xwidgets

Thank you for simplifying installation of native-comp branch in OS X. I spent many hours trying to compile it properly.
Would you consider also adding xwidgets support?
How difficult would it be for an ordinary Emacs user to compile it with it?

error: cannot download clean-env.patch from any mirror

Hi, thanks for the repo!

I'm getting this error when I run nix-env -iA emacsGccDarwin -f https://github.com/twlz0ne/nix-gccemacs-darwin/archive/master.zip (with and without cachix)

installing 'emacsGccDarwin'
these derivations will be built:
  /nix/store/g0ynhhf074hiwcv6knv53xiadbsh4pqs-clean-env.patch.drv
  /nix/store/ns3a8sxx39jwb11z97vk9pngv88lh5fb-source.drv
  /nix/store/ng99x22w6h1x0qr68k4hz1ws18f9ciyl-emacsGccDarwin.drv
building '/nix/store/g0ynhhf074hiwcv6knv53xiadbsh4pqs-clean-env.patch.drv'...
building '/nix/store/ns3a8sxx39jwb11z97vk9pngv88lh5fb-source.drv'...

trying https://github.com/emacs-mirror/emacs/archive/a3f2373bfb604af5570c86b4ffefb23296a5bfdd.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

trying https://raw.githubusercontent.com/nix-community/emacs-overlay/master/patches/clean-env.patch
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   160  100   160    0     0    540      0 --:--:-- --:--:-- --:--:--   538
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 404
error: cannot download clean-env.patch from any mirror
builder for '/nix/store/g0ynhhf074hiwcv6knv53xiadbsh4pqs-clean-env.patch.drv' failed with exit code 1
cannot build derivation '/nix/store/ng99x22w6h1x0qr68k4hz1ws18f9ciyl-emacsGccDarwin.drv': 1 dependencies couldn't be built
error: build of '/nix/store/ng99x22w6h1x0qr68k4hz1ws18f9ciyl-emacsGccDarwin.drv' failed

If I open https://github.com/emacs-mirror/emacs/archive/a3f2373bfb604af5570c86b4ffefb23296a5bfdd.tar.gz in my browser it prompts me for a download, but the second url returns 404 (https://raw.githubusercontent.com/nix-community/emacs-overlay/master/patches/clean-env.patch)

any ideas?

Update?

It's been several months since the last update, would you be able to bump the Emacs version?

What is the purpose of having `emacsGccDarwinWrapped`?

Hi @twlz0ne, thanks for this project!

I am looking at your source code and I can't help noticing the block below, which is not in emacs-overlay or in the official pkgs.emacs source.

May I know what this does? Thank you

 emacsGccDarwinWrapped = pkgs.symlinkJoin {
      name = "emacsGccDarwinWrapped";
      paths = [ emacsGccDarwin ];
      buildInputs = [ pkgs.makeWrapper ];
      postBuild = ''
        wrapProgram $out/bin/emacs \
        --set LIBRARY_PATH ${libPath}
      '';
      meta.platforms = pkgs.stdenv.lib.platforms.linux;
      passthru.nativeComp = true;
      src = emacsGccDarwin.src;
    };

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.