mawww / kakoune

mawww's experiment for a better code editor
http://kakoune.org
The Unlicense
10.01k stars 715 forks source link

Windows installation #4113

Open FedorLap2006 opened 3 years ago

FedorLap2006 commented 3 years ago

I've tried to install the Kakoune on Windows... and it didn't make it. I downloaded all Cygwin's packages which I found having ncurses in the name. Also I built ncourses from sources and installed it using make install. Everything is working and linking... but... when the make goes to linking, this happens.

.ncurses_ui.opt.o: In function `Kakoune::NCursesUI::redraw(bool)':
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:435: undefined reference to `__imp_newscr'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:435:(.text+0xe6c): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_newscr'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:435: undefined reference to `__imp_newscr'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:435:(.text+0x1251): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_newscr'
.ncurses_ui.opt.o: In function `Kakoune::NCursesUI::check_resize(bool)':
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:575: undefined reference to `__imp_curscr'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:575:(.text+0x17e6): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_curscr'
.ncurses_ui.opt.o: In function `Kakoune::NCursesUI::Palette::get_color(Kakoune::Color)':
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:254: undefined reference to `__imp_COLORS'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:254:(.text+0x4bbd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_COLORS'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:254: undefined reference to `__imp_COLORS'
/home/Фёдор/code/tools/kakoune/src/ncurses_ui.cc:254:(.text+0x4c61): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_COLORS'

Any ideas how to fix this and normally install Kakoune on Windows?

P.S. I'm on Windows 8.1. Cygwin's version is 3.0.4.

mawww commented 3 years ago

It looks like linking against ncurses fail. Not sure why but an alternative would be to switch to the builtin-terminal-ui branch that does not require it.

FedorLap2006 commented 3 years ago

Will this affect UI a lot, or functionality?

Also, please investigate. I know that almost everyone on WSL now and this matters to small amount of people, but for users without Win10 (like me) that would be hard to use... especially because in the README that's just "Oh sure, it perfectly builts with Cygwin".

FedorLap2006 commented 3 years ago

Also, for sure, how can I check ncourses version (that which was in Cygwin's packages)?

Screwtapello commented 3 years ago

Another thing to try would be to not build ncurses from source, and just use whichever version comes packaged with Cygwin. It's a complicated package, and Cygwin's tools are almost certainly preconfigured to work with the Cygwin packages, and might not work with whatever custom configuration you happened to build.