Main Menu

Emacs

Started by pomosapien, September 07, 2021, 06:04:48 AM

Previous topic - Next topic

pomosapien

@bkmoore said:
> This raises an interesting question. With a more modern gcc, would it be possible to compile a modern Emacs for NeXT? The most recent version that I am aware of on NeXT is 19.34.

Outside of the context of a newer gcc, there's a port of 20.7 to Aqua that might just build on 3.3.  I'm checking it out.

pomosapien

The 20.7 Aqua fork didn't have legs, so to speak.

I moved on to a fork of 23.0 for OS X and GNUstep. Given a few possibly fatal tweaks to get it to build, it's still going, and I should not have mentioned that because it's now probably jinxed.

pomosapien

The 23.0 build finished, and while I see how well that worked I'm going for broke and trying to build 27.2.  But this is probably overreaching.

pomosapien

BTW, during this process I remembered about MicroEMACS.
4.0 builds on 3.3 and it appears to work ok.  It is a lot faster than Emacs.

codepoet80

Exciting! Can you do nano next? Or share instructions on how a newb might try it themselves?

pomosapien

`nano` would be a good next step (heh). Let's try it.

I'd like to post build instructions on GitHub, along with release binaries when that's possible.  There's someone who has done that already for certain packages and I need to try to extend it with a fork.

As I work with Emacs source, the reality of newer Emacsen being slow is apparent.  I wanted language awareness and programmability, but maybe a smaller editor can suffice.

Lemme try to post MicroEMACS release.  I now see it has some brokennesses but if it's promising maybe it's worth fixing them?


pomosapien

> Exciting! Can you do nano next? Or share instructions on how a newb might try it themselves?

A general gist of my process:
  • install enough from the packages in the kb7sqi archive to modernize the shell and the toolchain, eg. bash, links, sed
  • notably, install gcc-2.95.3
  • grab the source in question (eg nano) from http://ftp.gnu.org/gnu
  • try to configure it
  • if works, try to build it
  • if not, estimate the delta and make notes

The kind of quick notes written about `nano` et al:

# toolchain

autoconf 2.13
autogen 4.5.14
automake 1.5
gawk 3.1.0
gcc 2.95.3
libtool 1.4.1
m4 1.4.4


# libs

gmp 1.3.2


# builds
autoconf 2.13 OK
autoconf 2.70 FAIL needs newer m4
emacs 20.3 FAIL -nw only, sloooooow
gawk 3.1.0 OK
git 2.0.5 CONF no configure
glibc 2.0.1 umm too much hackery
glibc 2.3.2 FAIL "nextstep3 is not supported"
gmp 1.3.2 OK
gmp 3.1.1 FAIL gcdext.c:700: internal error--unrecognizable insn:
gmp 4.1.4 FAIL ./configure: ./config.status: cannot execute
libtool 1.4.1 OK
libtool 1.5.2 OK
m4 1.4.4 OK
m4 1.4.8 FAIL clean-temp.h:113: undefined type, found `mode_t'
m4 1.4.10 FAIL frexp hang
m4 1.4.19 FAIL frexp hang
nano 1.0.0 FAIL see nano.err
nano 1.0.8 FAIL see nano.err
nano 1.2.3 FAIL proto.h:109: parse error before `search_regexp'
nano 2.0.1 FAIL glib>1.x
nano 2.0.5 FAIL glib>1.x
nano 5.9 FAIL hangs on configure at frexp
nettle 2.1 MEH no private key support (need gmp>3.1)
nettle 3.4 FAIL configure hangs at "whether frexp works..."

pomosapien

BTW something was wrong with the build of Emacs 23, need to go back to the notes to see if I have hit a dead end.

codepoet80

Ya, tried to ./configure nano, and hit glib missing.
Per your notes, no port available...

checking for malloc.h... no
checking for termios.h... yes
checking for termio.h... no
checking for limits.h... yes
checking for getopt.h... no
checking for regex.h... yes
checking whether to use slang... no
checking for snprintf... no
checking for vsnprintf... no
checking for glib-config... no
checking for GLIB - version >= 1.2.4... no
*** The glib-config script installed by GLIB could not be found
*** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GLIB_CONFIG environment variable to the
*** full path to glib-config.
configure: error:
*** snprintf() and/or vsnprintf() not found.  GLIB not found either.
*** You need both snprintf() and vsnprintf().  Alternatively you can
*** install the GLIB library which can be found at ftp://ftp.gtk.org/.


codepoet80

I also tried to build a 2000-era version of glibc and got:

checking host system type... i386-next-openstep4
*** The GNU C library is currently not available for this platform.

pomosapien

Ok. Note that we are on different OSes.

That aside, yes glib2 is the is the big blocker at this time.  I'm looking how to get past that.

Collecting the lab notes here:

  https://github.com/yoyodyne-research/BaCKSTEP

Files here are going to move around a lot while I further populate.

pomosapien

First issue:

https://github.com/yoyodyne-research/BaCKSTEP/issues/1

At this point lemme propose that we take the nano convo to that issue on GitHub.

pomosapien

@codepoet80 please see the other thread about `pico`.