Hacker News new | ask | show | jobs
by steelbird 3177 days ago
Quick start to get the GUI going (not so obvious from the README):

$ clone https://github.com/vygr/ChrysaLisp.git ChrysaLisp

$ cd ChrysaLisp

$ sudo apt-get install libsdl2-ttf-dev

$ make -j

$ ./run.sh

To quit:

$ ./stop.sh

2 comments

For a recent macOS version, do:

0) Make sure you have a recent Xcode installed

1) Install the libsdl2 and libsdl2_ttf frameworks under /Library/Frameworks

   libsdl2: https://www.libsdl.org/release/SDL2-2.0.6.dmg
   sdl2+ttf: https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-2.0.14.dmg
2) git clone https://github.com/vygr/ChrysaLisp.git ChrysaLisp

3) cd ChrysaLisp

4) make (takes about 2s!!)

5) ./run.sh (shows full working gui. Amazing!)

Getting SDL2 to be recognized under MacOS is no joy
correct. I figured out where the frameworks wanted to go -- and it even seems to match the path for -I, but that doesn't seem to be enough.

--

Yes, I have both frameworks installed. I even did the brew commands just for S&G ... same result after make command.

This is what I have under "/Library/Frameworks":

  antimass@gem:~$ ls /Library/Frameworks/SDL*
  drwxr-xr-x@  22 Sep 14:54 SDL2.framework
  drwxr-xr-x@   1 Feb  2016 SDL2_ttf.framework
  antimass@gem:~$
Wouldn't compile till I added in those SDL frameworks. Note: I also have done 'brew install sdl2' and 'brew install sdl2_ttf' in the past, so maybe you also need those?
brew will install SDL2 in a "unix" fashion, which should work if the makefile is written this way. The Framework version is the "Mac" way that is recognized by Xcode. The makefile for this project was created using the framework version.
Try; xcode-select install
I ended up changing the "cc" line for darwin to this: cc -o $@ $@.o -lSDL2 -lSDL2_ttf now it compiles (and runs) just fine (for me). YMMV
and for OSX?
see parent reply

  make
  cc -o obj/Darwin/x86_64/main obj/Darwin/x86_64/main.o -Wl,-framework,SDL2 -Wl,-framework,SDL2_ttf
  ld: framework not found SDL2
  clang: error: linker command failed with exit code 1 (use -v to see invocation)
  make: *** [obj/Darwin/x86_64/main] Error 1
---

Yes, I have both frameworks installed. I even did the brew commands just for S&G ... same result after make command.

Do you have "SDL2.framework" and "SDL2_ttf.framework" installed under "/Library/Frameworks"?
Yes
I don't know then. This is what I get on a fresh compile - note that it even specifies the framework paths in the command line options:

  antimass@gem:~/github/ChrysaLisp$ make
  echo x86_64 > arch
  echo Darwin > platform
  unzip -nq snapshot.zip
  cc -c -nostdlib -fno-exceptions \
    -I/Library/Frameworks/SDL2.framework/Headers/ \
    -I/Library/Frameworks/SDL2_ttf.framework/Headers/ \
    -o obj/Darwin/x86_64/main.o main.c
  cc -o obj/Darwin/x86_64/main obj/Darwin/x86_64/main.o -Wl,-framework,SDL2 -Wl,-framework,SDL2_ttf
  antimass@gem:~/github/ChrysaLisp$