le icon indicating copy to clipboard operation
le copied to clipboard

Doesn't built

Open pepa65 opened this issue 8 years ago • 28 comments

I'm sure I'm doing something wrong, but I've tried following the instructions in INSTALL. I did ./autogen.sh make

Which led to an error, so I tried: ./configure make

Looks like the same error. Could you tell me how I can build it?

pepa65 avatar Oct 17 '15 04:10 pepa65

Please send the error message.

lavv17 avatar Oct 17 '15 10:10 lavv17

Making all in doc make[1]: Entering directory /home/pp/git/le/doc' make[1]: Nothing to be done forall'. make[1]: Leaving directory /home/pp/git/le/doc' Making all in lib make[1]: Entering directory/home/pp/git/le/lib' make all-recursive make[2]: Entering directory /home/pp/git/le/lib' make[3]: Entering directory/home/pp/git/le/lib' make[3]: Leaving directory /home/pp/git/le/lib' make[2]: Leaving directory/home/pp/git/le/lib' make[1]: Leaving directory /home/pp/git/le/lib' Making all in src make[1]: Entering directory/home/pp/git/le/src' gcc -DHAVE_CONFIG_H -I. -I../lib -I../lib -I../lib -O2 -Wall -Wwrite-strings -Woverloaded-virtual -fno-exceptions -fno-rtti -fno-implement-inlines -MT ext.o -MD -MP -MF .deps/ext.Tpo -c -o ext.o ext.cc In file included from /usr/include/stdlib.h:959:0, from ../lib/stdlib.h:36, from undo.h:20, from ext.cc:22: /usr/include/x86_64-linux-gnu/bits/stdlib.h:90:3: error: #error "Assumed value of MB_LEN_MAX wrong"

error "Assumed value of MB_LEN_MAX wrong"

^ In file included from edit.h:339:0, from ext.cc:21: inline.h: In function ‘bool IsAlNumLeft()’: inline.h:92:17: warning: statement has no effect [-Wunused-value] MBCheckLeft(); ^ make[1]: *** [ext.o] Error 1 make[1]: Leaving directory `/home/pp/git/le/src' make: *** [all-recursive] Error 1

pepa65 avatar Oct 17 '15 14:10 pepa65

Most probably you have stdlib.h and limits.h headers mismatch (from different architectures maybe).

2015-10-17 17:18 GMT+03:00 PePa [email protected]:

Making all in doc make[1]: Entering directory /home/pp/git/le/doc' make[1]: Nothing to be done forall'. make[1]: Leaving directory /home/pp/git/le/doc' Making all in lib make[1]: Entering directory/home/pp/git/le/lib' make all-recursive make[2]: Entering directory /home/pp/git/le/lib' make[3]: Entering directory/home/pp/git/le/lib' make[3]: Leaving directory /home/pp/git/le/lib' make[2]: Leaving directory/home/pp/git/le/lib' make[1]: Leaving directory /home/pp/git/le/lib' Making all in src make[1]: Entering directory/home/pp/git/le/src' gcc -DHAVE_CONFIG_H -I. -I../lib -I../lib -I../lib -O2 -Wall -Wwrite-strings -Woverloaded-virtual -fno-exceptions -fno-rtti -fno-implement-inlines -MT ext.o -MD -MP -MF .deps/ext.Tpo -c -o ext.o ext.cc In file included from /usr/include/stdlib.h:959:0, from ../lib/stdlib.h:36, from undo.h:20, from ext.cc:22: /usr/include/x86_64-linux-gnu/bits/stdlib.h:90:3: error: #error "Assumed value of MB_LEN_MAX wrong"

error "Assumed value of MB_LEN_MAX wrong"

^ In file included from edit.h:339:0, from ext.cc:21: inline.h: In function ‘bool IsAlNumLeft()’: inline.h:92:17: warning: statement has no effect [-Wunused-value] MBCheckLeft(); ^ make[1]: *** [ext.o] Error 1 make[1]: Leaving directory `/home/pp/git/le/src' make: *** [all-recursive] Error 1

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-148918568.

Alexander.

lavv17 avatar Oct 19 '15 13:10 lavv17

Any recommendations on what I could do about that?

pepa65 avatar Oct 19 '15 14:10 pepa65

Find the offending limits.h file and remove it. Fix your build environment.

2015-10-19 17:02 GMT+03:00 PePa [email protected]:

Any recommendations on what I could do about that?

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-149221627.

Alexander.

lavv17 avatar Oct 19 '15 14:10 lavv17

I have these two defining MB_LEN_MAX: (from libgcc-4.8-dev:amd64) /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed/limits.h:#define MB_LEN_MAX 1 (from libc6-dev) libc6-dev/usr/include/limits.h:#define MB_LEN_MAX 16 If I remove either of them, half my system disappears...

pepa65 avatar Oct 19 '15 14:10 pepa65

Probably I was wrong about the headers... It seems you're building without wide char support. In this case you can try this patch. no-mb-diff.txt

lavv17 avatar Oct 19 '15 14:10 lavv17

This works! Syntax for csv seems to no longer work though...

pepa65 avatar Oct 19 '15 15:10 pepa65

I don't remember to have csv syntax in LE. BTW, I'd recommend to check why LE builds without wide character support (i.e. without utf-8) on your system. Please check if you have ncursesw installed.

lavv17 avatar Oct 21 '15 06:10 lavv17

I have libncursesw5:amd64. Indeed, my compiled le-1.15.1doesn't support utf-8, and my whole reason for wanting to use le is the utf-8 support, because 'ne' has only partial support. The version that "comes: with Ubuntu LTS works. So I guess it's something in the build environment... I installed libncursesw5-dev:amd64 but it didn't solve it.

pepa65 avatar Oct 21 '15 16:10 pepa65

Please send me config.log (BTW did you rerun configure aftet installing ncursesw-dev?)

lavv17 avatar Oct 22 '15 13:10 lavv17

Yes, did: ./configure; make; sudo make install Can't upload the config.log, emailing.

pepa65 avatar Oct 22 '15 15:10 pepa65

I have /usr/lib/x86_64-linux-gnu/libncursesw.so (part of libncursesw5-dev:amd64 with contents "INPUT(libncursesw.so.5 -ltinfo)"). And I have /lib/x86_64-linux-gnu/libncursesw.so.5.9 (and /lib/x86_64-linux-gnu/libncursesw.so.5 which symlinks to it). (Ubuntu's packaged le links against /lib/x86_64-linux-gnu/libncursesw.so.5) But when I do ln -s /lib/x86_64-linux-gnu/libncursesw.so.5.9 and build again, it doesn't do UTF-8. Output of ldd src/le: linux-vdso.so.1 => (0x00007ffc4f4f7000) libncurses.so.5 => /lib/x86_64-linux-gnu/libncurses.so.5 (0x00007f7a353b2000) libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f7a35189000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7a34e83000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f7a34c6d000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7a348a8000) /lib64/ld-linux-x86-64.so.2 (0x00007f7a355d5000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7a346a4000)

pepa65 avatar Oct 23 '15 12:10 pepa65

I think sym-linking the library (libncursesw.so) to /usr/lib64 and then re-running ./configure should solve the problem. If not, re-send the config.log

2015-10-23 15:19 GMT+03:00 PePa [email protected]:

I have /usr/lib/x86_64-linux-gnu/libncursesw.so (part of libncursesw5-dev:amd64 with contents "INPUT(libncursesw.so.5 -ltinfo)"). And I have /lib/x86_64-linux-gnu/libncursesw.so.5.9 (and /lib/x86_64-linux-gnu/libncursesw.so.5 which symlinks to it). (Ubuntu's packaged le links against /lib/x86_64-linux-gnu/libncursesw.so.5) But when I do ln -s /lib/x86_64-linux-gnu/libncursesw.so.5.9 and build again, it doesn't do UTF-8. Output of ldd src/le: linux-vdso.so.1 => (0x00007ffc4f4f7000) libncurses.so.5 => /lib/x86_64-linux-gnu/libncurses.so.5 (0x00007f7a353b2000) libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f7a35189000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7a34e83000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f7a34c6d000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7a348a8000) /lib64/ld-linux-x86-64.so.2 (0x00007f7a355d5000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7a346a4000)

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-150557168.

Alexander.

lavv17 avatar Oct 23 '15 15:10 lavv17

I had some trouble copying properly above... That's what I did: ln -s /usr/lib/x86_64-linux-gnu/libncursesw.so.5.9 /usr/lib64/libncursesw.so ./configure And the last 2 lines: checking for Curses... Ncurses, libraries /usr/lib64, headers /usr/include/ncursesw checking whether mytinfo is required... configure: error: cannot make curses work I'll email the config.log

pepa65 avatar Oct 23 '15 16:10 pepa65

Did you receive the config.log, and did it give a clue as to what is going wrong?

pepa65 avatar Nov 01 '15 17:11 pepa65

No, I have not received it.

вс, 1 нояб. 2015, 20:05, PePa [email protected]:

Did you receive the config.log, and did it give a clue as to what is going wrong?

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-152844632.

lavv17 avatar Nov 03 '15 03:11 lavv17

Sent again. Thanks!

pepa65 avatar Nov 03 '15 04:11 pepa65

I freshly pulled, still the same problem,

pepa65 avatar Nov 18 '15 14:11 pepa65

please try 7db87b7

lavv17 avatar Nov 19 '15 10:11 lavv17

I did git fetch, ./configure, make, but still have the same problem: checking whether mytinfo is required... configure: error: cannot make curses work make: *** [config.status] Error 1

On this box I've built dex (has some problems with combined characters), joe, kakoune (uses libncursesw), ne (utf-8 not fully supported). I find joe somewhat byzantine to use, and kakoune only does vi-like keybindings. It would be great to have the latest le. Ubuntu LTS has 1.14.9 it would be interesting to find out how they built it.

Anyway, thanks for all your trouble Alexander, and thanks for sharing your code under GPL!

pepa65 avatar Nov 27 '15 08:11 pepa65

Please check the error messages in config.log

пт, 27 нояб. 2015 г. в 11:11, PePa [email protected]:

I did git fetch, ./configure, make, but still have the same problem:

checking whether mytinfo is required... configure: error: cannot make curses work

make: *** [config.status] Error 1

On this box I've built dex (has some problems with combined characters), joe, kakoune (uses libncursesw), ne (utf-8 not fully supported). I find joe somewhat byzantine to use, and kakoune only does vi-like keybindings. It would be great to have the latest le. Ubuntu LTS has 1.14.9 it would be interesting to find out how they built it.

Anyway, thanks for all your trouble Alexander, and thanks for sharing your code under GPL!

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-160065151.

lavv17 avatar Nov 27 '15 09:11 lavv17

I don't have ac_nonexistent.h and minix/config.h and sys/filio.h (fatal) Error in conftest.c, expected expression before ')' token: if (sizeof ((size_t))) In function main': conftest.cpp:(.text.startup+0xa): undefined reference tooperator new[](unsigned long)' conftest.cpp:(.text.startup+0x17): undefined reference to operator delete[](void*)' conftest.c:(.text.startup+0x7): undefined reference to_set_invalid_parameter_handler'

pepa65 avatar Nov 27 '15 12:11 pepa65

Try "export CXX=g++" before configure

пт, 27 нояб. 2015, 15:06, PePa [email protected]:

I don't have ac_nonexistent.h and minix/config.h and sys/filio.h (fatal) Error in conftest.c, expected expression before ')' token: if (sizeof ((size_t))) In function main': conftest.cpp:(.text.startup+0xa): undefined reference tooperator new http://unsigned%20long' conftest.cpp:(.text.startup+0x17): undefined reference to operator delete' conftest.c:(.text.startup+0x7): undefined reference to _set_invalid_parameter_handler'

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-160124904.

lavv17 avatar Nov 28 '15 15:11 lavv17

Still stops at exactly the same place: checking for Curses... Ncurses, libraries /usr/lib64, headers /usr/include/ncursesw checking whether mytinfo is required... configure: error: cannot make curses work

pepa65 avatar Nov 28 '15 15:11 pepa65

Please send me config.log for analysis.

2015-11-28 18:47 GMT+03:00 PePa [email protected]:

Still stops at exactly the same place: checking for Curses... Ncurses, libraries /usr/lib64, headers /usr/include/ncursesw checking whether mytinfo is required... configure: error: cannot make curses work

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-160313784.

Alexander.

lavv17 avatar Dec 03 '15 06:12 lavv17

Thanks for looking into this.

Peter

On Thursday, December 03, 2015 01:10 PM, Alexander V. Lukyanov wrote:

Please send me config.log for analysis.

2015-11-28 18:47 GMT+03:00 PePa [email protected]:

Still stops at exactly the same place: checking for Curses... Ncurses, libraries /usr/lib64, headers /usr/include/ncursesw checking whether mytinfo is required... configure: error: cannot make curses work

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-160313784.

Alexander.

— Reply to this email directly or view it on GitHub https://github.com/lavv17/le/issues/13#issuecomment-161527630.

pepa65 avatar Dec 03 '15 11:12 pepa65

Tried again on Ubuntu 16.04 now:

sudo apt install gnulib libncursesw5-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libncursesw.so /usr/lib/
./autogen
./configure
make
sudo make install

Everything seems to work. If you could somehow make the second line unnecessary, that would be great!

pepa65 avatar Jun 30 '16 07:06 pepa65

Tried again on Mint Linux 21.1 (based on Ubuntu 22.04, Debian Bookworm) and it builds flawlessly. Also flawless utf-8 rendering!

(The only thing missing now is keystroke-macro-recording..!)

pepa65 avatar Feb 25 '23 11:02 pepa65