📄 install
字号:
option. NOTE: For some configurations, e.g., installing a new version of ncurses shared libraries on a machine which already has ncurses shared libraries, you may encounter problems with the linker. For example, it may prevent you from running the build tree's copy of tic (for installing the terminfo database) because it loads the system's copy of the ncurses shared libraries. In that case, using the misc/shlib script may be helpful, since it sets $LD_LIBRARY_PATH to point to the build tree, e.g., ./misc/shlib make install --with-shlib-version=XXX Specify whether to use the release or ABI version for shared libraries. This is normally chosen automatically based on the type of system which you are building on. We use it for testing the configure script. --with-sysmouse use FreeBSD sysmouse interface provide mouse support on the console. --with-system-type=XXX For testing, override the derived host system-type which is used to decide things such as the linker commands used to build shared libraries. This is normally chosen automatically based on the type of system which you are building on. We use it for testing the configure script. --with-terminfo-dirs=XXX Specify a search-list of terminfo directories which will be compiled into the ncurses library (default: DATADIR/terminfo) --with-termlib[=XXX] When building the ncurses library, organize this as two parts: the curses library (libncurses) and the low-level terminfo library (libtinfo). This is done to accommodate applications that use only the latter. The terminfo library is about half the size of the total. If an option value is given, that overrides the name of the terminfo library. For instance, if the wide-character version is built, the terminfo library would be named libtinfow. But the libtinfow interface is upward compatible from libtinfo, so it would be possible to overlay libtinfo.so with a "wide" version of libtinfow.so by renaming it with this option. --with-termpath=XXX Specify a search-list of termcap files which will be compiled into the ncurses library (default: /etc/termcap:/usr/share/misc/termcap) --with-trace Configure the trace() function as part of the all models of the ncurses library. Normally it is part of the debug (libncurses_g) library only. --without-ada Suppress the configure script's check for Ada95, do not build the Ada95 binding and related demo. --without-curses-h Don't install the ncurses header with the name "curses.h". Rather, install as "ncurses.h" and modify the installed headers and manpages accordingly. --without-cxx XSI curses declares "bool" as part of the interface. C++ also declares "bool". Neither specifies the size and type of booleans, but both insist on the same name. We chose to accommodate this by making the configure script check for the size and type (e.g., unsigned or signed) that your C++ compiler uses for booleans. If you do not wish to use ncurses with C++, use this option to tell the configure script to not adjust ncurses bool to match C++. --without-cxx-binding Suppress the configure script's check for C++, do not build the C++ binding and related demo. --without-progs Tell the configure script to suppress the build of ncurses' application programs (e.g., tic). The test applications will still be built if you type "make", though not if you simply do "make install". --without-xterm-new Tell the configure script to use "xterm-old" for the entry used in the terminfo database. This will work with variations such as X11R5 and X11R6 xterm.COMPATIBILITY WITH OLDER VERSIONS OF NCURSES:-------------------------------------------- Because ncurses implements the X/Open Curses Specification, its interface is fairly stable. That does not mean the interface does not change. Changes are made to the documented interfaces when we find differences between ncurses and X/Open or implementations which they certify (such as Solaris). We add extensions to those interfaces to solve problems not addressed by the original curses design, but those must not conflict with the X/Open documentation. Here are some of the major interface changes, and related problems which you may encounter when building a system with different versions of ncurses: 5.5 (October 10, 2005) Interface changes: + terminfo installs "xterm-new" as "xterm" entry rather than "xterm-old" (aka xterm-r6). + terminfo data is installed using the tic -x option (few systems still use ncurses 4.2). + modify C++ binding to work with newer C++ compilers by providing initializers and using modern casts. Old-style header names are still used in this release to allow compiling with not-so-old compilers. + form and menu libraries now work with wide-character data. Applications which bypassed the form library and manipulated the FIELD.buf data directly will not work properly with libformw, since that no longer points to an array of char. The set_field_buffer() and field_buffer() functions translate to/from the actual field data. + change SP->_current_attr to a pointer, adjust ifdef's to ensure that libtinfo.so and libtinfow.so have the same ABI. The reason for this is that the corresponding data which belongs to the upper-level ncurses library has a different size in each model. + winnstr() now returns multibyte character strings for the wide-character configuration. + assume_default_colors() no longer requires that use_default_colors() be called first. + data_ahead() now works with wide-characters. + slk_set() and slk_wset() now accept and store multibyte or multicolumn characters. + start_color() now returns OK if colors have already been started. start_color() also returns ERR if it cannot allocate memory. + pair_content() now returns -1 for consistency with init_pair() if it corresponds to the default-color. + unctrl() now returns null if its parameter does not correspond to an unsigned char. Added extensions: Experimental mouse version 2 supports wheel mice with buttons 4 and 5. This requires ABI 6 because it modifies the encoding of mouse events. Experimental extended colors allows encoding of 256 foreground and background colors, e.g., with the xterm-256color or xterm-88color terminfo entries. This requires ABI 6 because it changes the size of cchar_t. Added internal functions: _nc_check_termtype2 _nc_resolve_uses2 _nc_retrace_cptr _nc_retrace_cvoid_ptr _nc_retrace_void_ptr _nc_setup_term Removed internal functions: none Modified internal functions: _nc_insert_ch _nc_save_str _nc_trans_string 5.4 (February 8, 2004) Interface changes: + add the remaining functions for X/Open curses wide-character support. These are only available if the library is configured using the --enable-widec option. pecho_wchar() slk_wset() + write getyx() and related 2-return macros in terms of getcury(), getcurx(), etc. + simplify ifdef for bool declaration in curses.h + modify ifdef's in curses.h that disabled use of __attribute__() for g++, since recent versions implement the cases which ncurses uses. + change some interfaces to use const: define_key() mvprintw() mvwprintw() printw() vw_printw() winsnstr() wprintw() Added extensions: key_defined() Added internal functions: _nc_get_locale() _nc_insert_ch() _nc_is_charable() wide _nc_locale_breaks_acs() _nc_pathlast() _nc_to_char() wide _nc_to_widechar() wide _nc_tparm_analyze() _nc_trace_bufcat() debug _nc_unicode_locale() Removed internal functions: _nc_outstr() _nc_sigaction() Modified internal functions: _nc_remove_string() _nc_retrace_chtype() 5.3 (October 12, 2002) Interface changes: + change type for bool used in headers to NCURSES_BOOL, which usually is the same as the compiler's definition for 'bool'. + add all but two functions for X/Open curses wide-character support. These are only available if the library is configured using the --enable-widec option. Missing functions are pecho_wchar() slk_wset() + add environment variable $NCURSES_ASSUMED_COLORS to modify the assume_default_colors() extension. Added extensions: is_term_resized() resize_term() Added internal functions: _nc_altcharset_name() debug _nc_reset_colors() _nc_retrace_bool() debug _nc_retrace_unsigned() debug _nc_rootname() _nc_trace_ttymode() debug _nc_varargs() debug _nc_visbufn() debug _nc_wgetch() Removed internal functions: _nc_background() Modified internal functions: _nc_freeall() debug 5.2 (October 21, 2000) Interface changes: + revert termcap ospeed variable to 'short' (see discussion of the --with-ospeed configure option). 5.1 (July 8, 2000) Interface changes: + made the extended terminal capabilities (configure --enable-tcap-names) a standard feature. This should be transparent to applications that do not require it. + removed the trace() function and related trace support from the production library. + modified curses.h.in, undef'ing some symbols to avoid conflict with C++ STL. Added extensions: assume_default_colors(). 5.0 (October 23, 1999) Interface changes: + implemented the wcolor_set() and slk_color() functions. + move macro winch to a function, to hide details of struct ldat + corrected prototypes for slk_* functions, using chtype rather than attr_t. + the slk_attr_{set,off,on} functions need an additional void* parameter according to XSI. + modified several prototypes to correspond with 1997 version of X/Open Curses: [w]attr_get(), [w]attr_set(), border_set() have different parameters. Some functions were renamed or misspelled: erase_wchar(), in_wchntr(), mvin_wchntr(). Some developers have used attr_get(). Added extensions: keybound(), curses_version(). Terminfo database changes: + change translation for termcap 'rs' to terminfo 'rs2', which is the documented equivalent, rather than 'rs1'. The problems are subtler in recent releases. a) This release provides users with the ability to define their own terminal capability extensions, like termcap. To accomplish this, we redesigned the TERMTYPE struct (in term.h). Very few applications use this struct. They must be recompiled to work with the 5.0 library. a) If you use the extended terminfo names (i.e., you used configure --enable-tcap-names), the resulting terminfo database can have some entries which are not readable by older versions of ncurses. This is a bug in the older versions: + the terminfo database stores booleans, numbers and strings in arrays. The capabilities that are listed in the arrays are specified by X/Open. ncurses recognizes a number of obsolete and extended names which are stored past the end of the specified entries. + a change to read_entry.c in 951001 made the library do an lseek() call incorrectly skipping data which is already read from the string array. This happens when the number of strings in the terminfo data file is greater than STRCOUNT, the number of specified and obsolete or extended strings. + as part of alignment with the X/Open final specification, in the 990109 patch we added two new terminfo capabilities: set_a_attributes and set_pglen_inch). This makes the indices for the obsolete and extended capabilities shift up by 2. + the last two capabilities in the obsolete/extended list are memu and meml, which are found in most terminfo descriptions for xterm. When trying to read this terminfo entry, the spurious lseek() causes the library to attempt to read the final portion of the terminfo data (the text of the string capabilities) 4 characters past its starting point, and reads 4 characters too few. The library rejects the data, and applications are unable to initialize that terminal type. FIX: remove memu and meml from the xterm description. They are obsolete, not used by ncurses. (It appears that the feature was added to xterm to make it more like hpterm). This is not a problem if you do not use the -x option of tic to create a terminfo database with extended names. Note that the
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -