-
-
Notifications
You must be signed in to change notification settings - Fork 423
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
Can't install in Mojave 10.14.5 #819
Comments
Hello Sebastian, thanks for your interest! Did you try to install libfixposix using MacPorts? You should be able to do 'sudo port install libfixposix', that may fix it for you. Please let me know how it goes. |
Per your second installation problem, when you clone the repository something strange is going on. What happens if you simply do the following:
have you installed SBCL / Quicklisp on your machine? If so, you may wish to pass flags to the make file to specify NYXT_INTERNAL_QUICKLISP as false. Lastly, as an alternative, you can just do the following:
it should make a program that you can run in the directory where Nyxt is located. You can then do the following if you wish: |
Can't macport port files specify dependencies?
|
They can, and it has a specified dependency. Excerpt from the Portfile
|
Hey @jmercouris, thanks a lot After running :info:build [performing final GC... done]
:info:build [defragmenting immobile space... (fin,inst,fdefn,code,sym)=6229+2798+45353+41010+31206... done]
:info:build [saving current Lisp image into /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0/next:
:info:build writing 0 bytes from the read-only space at 0x20000000
:info:build writing 8192 bytes from the static space at 0x20100000
:info:build writing 96894976 bytes from the dynamic space at 0x1000000000
:info:build writing 3641344 bytes from the immobile space at 0x20200000
:info:build writing 26976256 bytes from the immobile space at 0x21a00000
:info:build done]
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0'
:info:build make: Leaving directory `/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0'
:info:build Command failed: cd "/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0" && /usr/bin/make -j4 -w all
:info:build Exit code: 2
:error:build Failed to build Nyxt: command execution failed
:debug:build Error code: CHILDSTATUS 78475 2
:debug:build Backtrace: command execution failed
:debug:build while executing
:debug:build "system {*}$notty {*}$nice $fullcmdstring"
:debug:build invoked from within
:debug:build "command_exec build"
:debug:build (procedure "portbuild::build_main" line 8)
:debug:build invoked from within
:debug:build "$procedure $targetname"
:error:build See /opt/local/var/macports/logs/_private_tmp_macports-port_www_Nyxt/Nyxt/main.log for details. As per;
When I try * (ql:quickload :alexandria)
To load "alexandria":
Load 1 ASDF system:
alexandria
; Loading "alexandria"
(:ALEXANDRIA) Then: * (asdf:make :nyxt/gtk-application)
WARNING: redefining PERFORM (#<STANDARD-CLASS ASDF/BUNDLE:IMAGE-OP> #<STANDARD-CLASS ASDF/SYSTEM:SYSTEM>) in DEFMETHOD
WARNING: System definition file #P"/Users/seb/quicklisp/local-projects/cl-json/cl-json.asd" contains definition for system "cl-json.test". Please only define "cl-json" and secondary systems with a name starting with "cl-json/" (e.g. "cl-json/test") in that file.
WARNING: System definition file #P"/Users/seb/quicklisp/local-projects/cl-ppcre/cl-ppcre.asd" contains definition for system "cl-ppcre-test". Please only define "cl-ppcre" and secondary systems with a name starting with "cl-ppcre/" (e.g. "cl-ppcre/test") in that file.
WARNING: System definition file #P"/Users/seb/quicklisp/local-projects/cl-ppcre/cl-ppcre-unicode.asd" contains definition for system "cl-ppcre-unicode-test". Please only define "cl-ppcre-unicode" and secondary systems with a name starting with "cl-ppcre-unicode/" (e.g. "cl-ppcre-unicode/test") in that file.
WARNING: System definition file #P"/Users/seb/quicklisp/local-projects/flexi-streams/flexi-streams.asd" contains definition for system "flexi-streams-test". Please only define "flexi-streams" and secondary systems with a name starting with "flexi-streams/" (e.g. "flexi-streams/test") in that file.
debugger invoked on a ASDF/FIND-COMPONENT:MISSING-DEPENDENCY in thread
#<THREAD "main thread" RUNNING {10009C8083}>:
Component "s-sysdeps" not found, required by #<SYSTEM "cl-prevalence">
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [RETRY ] Retry loading s-sysdeps.
1: Retry ASDF operation.
2: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
configuration.
3: Retry ASDF operation.
4: Retry ASDF operation after resetting the
configuration.
5: [ABORT ] Exit debugger, returning to top level.
(ASDF/FIND-COMPONENT:RESOLVE-DEPENDENCY-NAME #<ASDF/SYSTEM:SYSTEM "cl-prevalence"> "s-sysdeps" NIL)
error finding frame source: Bogus form-number: the source file has probably
changed too much to cope with.
source: NIL
0] |
Hello Sebastian, can you please show the contents of: "/opt/local/var/macports/logs/_private_tmp_macports-port_www_Nyxt/Nyxt/main.log for details." Also, you can just try rebuilding, it will probably work :-) P.S. make sure you have no "Next.app" or "Nyxt.app" located in your |
Although the previous I tried rebuilding and that returned this stacktrace: $ sudo port install www/Nyxt
---> Computing dependencies for Nyxt
---> Fetching archive for Nyxt
---> Attempting to fetch Nyxt-2.0.0_0.darwin_18.x86_64.tbz2 from https://packages.macports.org/Nyxt
---> Attempting to fetch Nyxt-2.0.0_0.darwin_18.x86_64.tbz2 from http://nue.de.packages.macports.org/Nyxt
---> Attempting to fetch Nyxt-2.0.0_0.darwin_18.x86_64.tbz2 from http://lil.fr.packages.macports.org/Nyxt
---> Building Nyxt
---> Staging Nyxt into destroot
Warning: violation by /Applications/Next.app
Warning: Nyxt violates the layout of the ports-filesystems!
Warning: Please fix or indicate this misbehavior (if it is intended), it will be an error in future releases!
---> Installing Nyxt @2.0.0_0
---> Activating Nyxt @2.0.0_0
---> Cleaning Nyxt
---> Updating database of binaries
---> Scanning binaries for linking errors
---> No broken files found.
---> No broken ports found. I was happy to see the application was now in the Applications folder but when trying to open it, I got this error: Unhandled SIMPLE-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
{1000630083}>:
Error opening shared object "/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0/quicklisp/dists/quicklisp/software/osicat-20200427-git/posix/libosicat.dylib":
dlopen(/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0/quicklisp/dists/quicklisp/software/osicat-20200427-git/posix/libosicat.dylib, 10): image not found.
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {1000630083}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SIMPLE-ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." {1000FB0743}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK *INVOKE-DEBUGGER-HOOK* #<SIMPLE-ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." {1000FB0743}>)
2: (INVOKE-DEBUGGER #<SIMPLE-ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." {1000FB0743}>)
3: (ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." #<(SIMPLE-BASE-STRING 285) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {10006B8D7F}> #<(SIMPLE-ARRAY CHARACTER (314)) dlopen(/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/... {1000FB022F}>)
4: (SB-SYS:DLOPEN-OR-LOSE #S(SB-ALIEN::SHARED-OBJECT :PATHNAME #P#<(SIMPLE-ARRAY CHARACTER (285)) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {1005C7626F}> :NAMESTRING #<(SIMPLE-BASE-STRING 285) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {10006B8D7F}> :HANDLE NIL :DONT-SAVE NIL))
5: (SB-ALIEN::TRY-REOPEN-SHARED-OBJECT #S(SB-ALIEN::SHARED-OBJECT :PATHNAME #P#<(SIMPLE-ARRAY CHARACTER (285)) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {1005C7AC0F}> :NAMESTRING #<(SIMPLE-BASE-STRING 285) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.5-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {10006B8D7F}> :HANDLE NIL :DONT-SAVE NIL))
6: (SB-SYS:REOPEN-SHARED-OBJECTS)
7: (SB-IMPL::FOREIGN-REINIT)
8: (SB-IMPL::REINIT)
9: ((FLET SB-UNIX::BODY :IN SAVE-LISP-AND-DIE))
10: ((FLET "WITHOUT-INTERRUPTS-BODY-14" :IN SAVE-LISP-AND-DIE))
11: ((LABELS SB-IMPL::RESTART-LISP :IN SAVE-LISP-AND-DIE))
unhandled condition in --disable-debugger mode, quitting Sadly I didn't check before if there was no Nyxt.app in the Applications folder. |
I see, yes, I know what this problem is. I don't know how to solve it. Osicat itself gives me many issues... Let me think about it and hopefully get back to you shortly. |
The difference between Osicat and other CFFI libraries is that the
bindings are generated at compile-time, not at load-time.
If you look at the Guix recipe (build-scripts/guix.scm), you'll see that
it's the only library that is prefixed with "sbcl" instead of "cl": this
means that it's the pre-compiled Guix package instead of the mere source.
A similar precaution may be necessary on macOS.
|
Thanks a lot @jmercouris and @Ambrevar. I'm gonna be checking the thread for any news ;) |
I have the same problem with catalina. New to SBCL and Common Lisp. Are there any resources that can shed some light on this problem? |
From a high level: there is something called grovel, and what grovel does is inspect C header files and generate stubs for Common Lisp to invoke C functions. The Osicat library depends on Grovel. I have many grievances with the Osicat library and would personally like to remove it. Removing it would solve this problem... |
If we are talking about the original post problem, it's not Osicat, it's libfixposix which is needed for Unix sockets. As far as I know, there is no way around it with Common Lisp. |
Read later on in the thread, the problem is Osicat preventing the MacPorts port from working... which also prevents the meta package from working :'-( |
I wanted to be sure which issue @Kandiu was referring to. |
@Ambrevar , I think it is the same error as the OP
And
But I'm trying through homebrew and not macports. libfixposix is installed and I'm building the QT version.
|
Well, the Qt version is very much problematic @aartaka will be hopefully taking a look at it in a couple weeks from now. Until then, GTK is the better option. |
@jmercouris: The problem is the `readlink` command on macOS. Can you fix it?
|
I can try... :-) |
@Ambrevar I was able to install via macports using this hack:
as result macports used GNU version of readlink where option |
@jmercouris: Any update on the Makefile fix?
|
I tried for a little bit, then I thought about removing readlink... there is no native solution in macOS it seems without installing something else. |
Alternative, we could just use `cp -af`.
|
@jmercouris Can you try 119e5c5 ? |
I can confirm the fix. @Kandiu and @sebastian-palma please pull the latest Port from source.atlas.engineer and try rebuilding if you can :-) |
Hey @jmercouris, thanks for the update. I tried reinstalling the port (rm and clone again) and then running ...
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0'
:info:build make: Leaving directory `/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0'
:info:build Command failed: cd "/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0" && /usr/bin/make -j4 -w all
:info:build Exit code: 2
:error:build Failed to build Nyxt: command execution failed
:debug:build Error code: CHILDSTATUS 30204 2
:debug:build Backtrace: command execution failed
:debug:build while executing
:debug:build "system {*}$notty {*}$nice $fullcmdstring"
:debug:build invoked from within
:debug:build "command_exec build"
:debug:build (procedure "portbuild::build_main" line 8)
:debug:build invoked from within
:debug:build "$procedure $targetname" If I run the command The whole logs are here. |
Strange, it seems to have worked. Can you please post the output from starting the application? E.G. open a terminal and launch the executable in the Nyxt.app bundle. |
If I run /Applications/Nyxt.app/Contents/MacOS
❯ ./nyxt
Unhandled SIMPLE-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
{1000660083}>:
Error opening shared object "/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0/quicklisp-client/dists/quicklisp/software/osicat-20200715-git/posix/libosicat.dylib":
dlopen(/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0/quicklisp-client/dists/quicklisp/software/osicat-20200715-git/posix/libosicat.dylib, 10): image not found.
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {1000660083}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SIMPLE-ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." {1000FFE3E3}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK *INVOKE-DEBUGGER-HOOK* #<SIMPLE-ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." {1000FFE3E3}>)
2: (INVOKE-DEBUGGER #<SIMPLE-ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." {1000FFE3E3}>)
3: (ERROR "Error opening ~:[runtime~;shared object ~:*~S~]:
~A." #<(SIMPLE-BASE-STRING 292) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {10006DEAAF}> #<(SIMPLE-ARRAY CHARACTER (321)) dlopen(/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/... {1000FFDEAF}>)
4: (SB-SYS:DLOPEN-OR-LOSE #S(SB-ALIEN::SHARED-OBJECT :PATHNAME #P#<(SIMPLE-ARRAY CHARACTER (292)) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {1005C6E13F}> :NAMESTRING #<(SIMPLE-BASE-STRING 292) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {10006DEAAF}> :HANDLE NIL :DONT-SAVE NIL))
5: (SB-ALIEN::TRY-REOPEN-SHARED-OBJECT #S(SB-ALIEN::SHARED-OBJECT :PATHNAME #P#<(SIMPLE-ARRAY CHARACTER (292)) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {1005C729FF}> :NAMESTRING #<(SIMPLE-BASE-STRING 292) /opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Ny... {10006DEAAF}> :HANDLE NIL :DONT-SAVE NIL))
6: (SB-SYS:REOPEN-SHARED-OBJECTS)
7: (SB-IMPL::FOREIGN-REINIT)
8: (SB-IMPL::REINIT)
9: ((FLET SB-UNIX::BODY :IN SAVE-LISP-AND-DIE))
10: ((FLET "WITHOUT-INTERRUPTS-BODY-14" :IN SAVE-LISP-AND-DIE))
11: ((LABELS SB-IMPL::RESTART-LISP :IN SAVE-LISP-AND-DIE))
unhandled condition in --disable-debugger mode, quitting |
Hm, that's very strange... @Ambrevar |
I'm not familiar with macports.
In the report, I see
"/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/.home/.cache/common-lisp/sbcl-2.0.6-macosx-x64/opt/local/var/macports/build/_private_tmp_macports-port_www_Nyxt/Nyxt/work/Nyxt-2.0.0/quicklisp-client/dists/quicklisp/software/osicat-20200715-git/posix/libosicat.dylib":
Looks like a temporary directory that was created at build time but
likely deleted afterwards.
Osicat, unlike any other library, needs to be built in advance so that
the dylib path is permanent.
|
So, Osicat remains to be a problem... the only solution would be to package Osicat for MacPorts and list it as a runtime requirement. I suggest we just remove it... |
Do you have an alternative to the 2 osicat calls?
Is packaging Osicat for macports problematic?
Note that when I said "build in advance", I didn't mean necessarily as a
macport, but I mean before running `make` (or equivalently asdf:make...).
|
Do you have an alternative to the 2 osicat calls?
Using command line tools like `stat` is sadly not portable.
We could write a per-OS wrapper, but this seems to fight an already won
battle.
Finally, osicat has many more useful functions that may prove useful in
the future.
I think it's more constructive to build Osicat properly, it's really not
hard, let me know if I can help.
|
Sorry for late reply. I guess I won't have time to work with Qt version. Don't rely on me here :) |
Please try again, we have updated the port :-) |
I'm seeing the "Unable to load foreign library (LIBFIXPOSIX)" error on Mac OSX (10.15.7). My suspicion is somewhere it's not using the correct path from MacPorts: this ports tree is installed --with-no-root-privileges. So even though libfixposix is installed with |
That's very possible, you can append and modify the path that Nyxt looks for foreign libraries. It is called the cffi load path. |
I've been trying to install Nyxt in a MacOS machine (10.14.5), but I've got no luck. If I do as the macports-port says and then run
sudo port install www/Nyxt
I get an error tellinglibfixposix
isn't installed:But I installed libfixposix with homebrew:
While if I clone the repository and run
make all
I get the following error:I don't know what to do after that. Any hint?
The text was updated successfully, but these errors were encountered: