NuttX的学习笔记 2

README文档目录的第二部分

  • Configuring NuttX
    • Instantiating “Canned” Configurations
    • Refreshing Configurations
    • NuttX Configuration Tool
    • Finding Selections in the Configuration Menus
    • Reveal Hidden Configuration Options
    • Make Sure that You on on the Right Platform
    • Comparing Two Configurations
    • Incompatibilities with Older Configurations
    • NuttX Configuration Tool under DOS
  • Instantiating “Canned” Configurations

    “Canned” 配置在这个文件夹下:

    configs//

    这里我用的开发板是stm32f429i-disco,configs这个文件夹下就有,然后里面是。。。看样子文件有点多啊,LCD USB 。。。。先看看README:

    NuttX的学习笔记 2_第1张图片

    • Contents
      • Development Environment
      • GNU Toolchain Options
      • LEDs
      • UARTs
      • Timer Inputs/Outputs
      • FPU
      • FSMC SRAM
      • STM32F429I-DISCO-specific Configuration Options
      • Configurations
  1. Development Environment

    开发环境,没说什么。
    
  2. GNU Toolchain Options

    看样子写文档的人漏掉了这个
    
  3. LEDs

    LED,可以用来表示系统的一些运行状态,自己看。
    
  4. UARTs

    串口,只有串口1和5是可以全双工的,其他的只能单工。
    
  5. Timer Inputs/Outputs

    定时器输入输出,可以输出一些波形
    
  6. FPU

    FPU,浮点运算器
    
  7. FSMC SRAM

    SDRAM,如果需要DMA,那么要配置外部SDRAM,因为内部SDRAM不能配置DMA。还可以配置FSMC SDRAM
    
  8. STM32F429I-DISCO-specific Configuration Options

    这部分超级多
    
  9. Configurations

    配置,直接使用以下指令:
    
    > cd tools
    >./configure.sh `STM32F429I-DISCO/`
    >cd -
    >. ./setenv.sh
    

    subdir这个该怎么选啊。。无语了。。一个一个的来??仔细看了半天里面的文件,最后决定先用nsh这个文件夹。意思我猜是nuttx shell

    NuttX的学习笔记 2_第2张图片

    并没有什么提示出现。看样子运行成功了。

    NuttX的学习笔记 2_第3张图片

    喜闻乐见,找不到文件,好,cd - 是用来返回上次工作目录的,但是上次工作目录下根本没有这个文件。搜索一下,发现这个文件存在,但是都不在这个目录下。关掉终端,重新来一遍。

    找到原因,居然是从nuttx cd 到tools里去的,cd - 后正确的目录应该是 tools的上级目录nuttx,无语。。这里应该说标注一下的啊。
    你让那些闲得没事跑到configs下然后又一次性 cd 到tools目录下的人怎么办?

    再往下读居然有subdir的说明。。。nsh就是NuttShell ,看样子我猜的没错。nsh会开启uart2,下面居然又列出11条小标题。。
    往下找有一个usbmsc的subdir,是个例程,可以使用32板上的usbhub连接U盘,uart1 调试 nuttx shell。这个看起来很短,先来操作这个好了。。。重新运行一边configure.sh 和 setevn.sh

    NuttX的学习笔记 2_第4张图片

    正常。
    下面这个文档还有的就是前面提到的 mconf-based ,有空再说吧。。

    回到上一个README。下面是要拷贝一些文件到nuttx下。最后说有configure文件可以更容易操作,看样子刚刚已经搞定了。下一步。

  • Refreshing Configurations
    刷新配置,这里需要我刷新么?通过查找,发现这个make oldconfig可以备份当前的 .config 而这个文件是由刚刚 configure.sh 拷贝过来的。那就来备份一下呗。

    NuttX的学习笔记 2_第5张图片

    真是好消息,kconfig-conf没有找到,看样子还是要安装刚刚那个mconf-based。好,在文档中寻找,提到这个kconfig在源tools下,git之。

    NuttX的学习笔记 2_第6张图片

    git clone https://bitbucket.org/nuttx/tools

    进去看看吧。。README

    • genromfs-0.5.2.tar.gz
    • kconfig-frontends
      • General Build Instructions
      • Graphical Configuration Tools
      • –program-prefix=
      • kconfig-frontends-3.3.0-1-libintl.patch
      • kconfig-macos.patch
      • kconfig-mconf Path Issues
      • gperf
      • kconfig-frontends for Windows
      • Buildroot
    • nxfuse
    • osmocon

    好,看一看,主要内容就是编译:
    (最近系统崩溃了,新装的时候发现这里出错了,需要安装几个东西:

    sudo apt install pkg-config gperf flex bison ncurses-dev qt5-default binutils-dev automake genromfs libfuse-dev libtool
    

    先用apt全部安装即可)

    cd kconfig-frontends
    ./configure --enable-mconf
    make
    make install

    有这么一个问题,是博主zhao23333提出的,这个问题我测试了,确实有这样的问题,解决方法就如博客
    Nuttx的源码构建和编译中所说一样就可以解决。

    完成,退出tools。
    再回到刚刚的nuttx/nuttx目录下执行

    make oldconfig

    NuttX的学习笔记 2_第7张图片

    呵呵,这下好了,是选目标板的,还是本机的?文档中说,输入?可以获得帮助。好,试一下。

    There is no help available for this option.

    好,这样的话,我就以为是目标板了,选arm
    回显有点多,看起来它自己选了很多选项:

    *
    * ARM Options
    *
    ARM chip selection
    > 24. STMicro STM32 F1/F2/F3/F4 (ARCH_CHIP_STM32)
    choice[1-29]: 24
    Use BASEPRI Register (ARMV7M_USEBASEPRI) [N/y/?] n
    Use common ARMv7-M vectors (ARMV7M_CMNVECTOR) [N/y/?] n
    Lazy FPU storage (ARMV7M_LAZYFPU) [N/y/?] n
    FPU support (ARCH_FPU) [N/y/?] n
    MPU support (ARM_MPU) [N/y/?] n
    *
    * ARMV7M Configuration Options
    *
    Toolchain Selection
    > 5. Generic GNU EABI toolchain under Linux (or other POSIX environment) (ARMV7M_TOOLCHAIN_GNU_EABIL)
    choice[1-5]: 5
    Check for stack overflow on each function call (ARMV7M_STACKCHECK) [N/y/?] n
    ITM SYSLOG support (ARMV7M_ITMSYSLOG) [N/y/?] n
    *
    * STM32 Configuration Options
    *
    STM32 Chip Selection
    > 110. STM32F429Z (ARCH_CHIP_STM32F429Z)
    choice[1-121]: 110
    Override Flash Size Designator
    > 1. Default (STM32_FLASH_CONFIG_DEFAULT)
    choice[1-11?]: 1
    DFU bootloader (STM32_DFU) [N/y/?] n
    *
    * STM32 Peripheral Support
    *
    ADC1 (STM32_ADC1) [N/y] n
    ADC2 (STM32_ADC2) [N/y] n
    ADC3 (STM32_ADC3) [N/y] n
    Enable BKP RAM Domain (STM32_BKPSRAM) [N/y] n
    CAN1 (STM32_CAN1) [N/y] n
    CAN2 (STM32_CAN2) [N/y] n
    CMD/DATA RAM (STM32_CCMDATARAM) [N/y] n
    CRC (STM32_CRC) [N/y] n
    CRYP (STM32_CRYP) [N/y] n
    DMA1 (STM32_DMA1) [N/y] n
    DMA2 (STM32_DMA2) [N/y] n
    DAC1 (STM32_DAC1) [N/y] n
    DAC2 (STM32_DAC2) [N/y] n
    DCMI (STM32_DCMI) [N/y] n
    Ethernet MAC (STM32_ETHMAC) [N/y] n
    FSMC (STM32_FSMC) [Y/n] y
    HASH (STM32_HASH) [N/y] n
    I2C1 (STM32_I2C1) [N/y] n
    I2C2 (STM32_I2C2) [N/y] n
    I2C3 (STM32_I2C3) [N/y] n
    LTDC (STM32_LTDC) [N/y/?] n
    DMA2D (STM32_DMA2D) [N/y/?] n
    OTG FS (STM32_OTGFS) [N/y] n
    OTG HS (STM32_OTGHS) [N/y] n
    PWR (STM32_PWR) [Y/n] y
    RNG (STM32_RNG) [N/y] n
    SDIO (STM32_SDIO) [N/y] n
    SPI1 (STM32_SPI1) [N/y] n
    SPI2 (STM32_SPI2) [N/y] n
    SPI3 (STM32_SPI3) [N/y] n
    SPI4 (STM32_SPI4) [N/y] n
    SPI5 (STM32_SPI5) [N/y] n
    SPI6 (STM32_SPI6) [N/y] n
    SYSCFG (STM32_SYSCFG) [Y/n] y
    TIM1 (STM32_TIM1) [N/y] n
    TIM2 (STM32_TIM2) [N/y] n
    TIM3 (STM32_TIM3) [N/y] n
    TIM4 (STM32_TIM4) [N/y] n
    TIM6 (STM32_TIM6) [N/y] n
    TIM7 (STM32_TIM7) [N/y] n
    TIM8 (STM32_TIM8) [N/y] n
    TIM9 (STM32_TIM9) [N/y] n
    TIM10 (STM32_TIM10) [N/y] n
    TIM11 (STM32_TIM11) [N/y] n
    TIM12 (STM32_TIM12) [N/y] n
    TIM13 (STM32_TIM13) [N/y] n
    TIM14 (STM32_TIM14) [N/y] n
    USART1 (STM32_USART1) [Y/n] y
    USART2 (STM32_USART2) [N/y] n
    USART3 (STM32_USART3) [N/y] n
    UART4 (STM32_UART4) [N/y] n
    UART5 (STM32_UART5) [N/y] n
    USART6 (STM32_USART6) [N/y] n
    UART7 (STM32_UART7) [N/y] n
    UART8 (STM32_UART8) [N/y] n
    IWDG (STM32_IWDG) [N/y] n
    WWDG (STM32_WWDG) [N/y] n
    Disable the ARMv7-M EXT vectors (STM32_NOEXT_VECTORS) [N/y/?] n
    *
    * Alternate Pin Mapping
    *
    Enable FLASH Pre-fetch (STM32_FLASH_PREFETCH) [N/y/?] n
    JTAG Configuration
    > 4. Set JTAG-DP disabled and SW-DP enabled (STM32_JTAG_SW_ENABLE)
    choice[1-4?]: 4
    Disable IDLE Sleep (WFI) in debug mode (STM32_DISABLE_IDLE_SLEEP_DURING_DEBUG) [Y/n/?] y
    Force power (STM32_FORCEPOWER) [N/y/?] n
    Custom clock configuration (ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG) [N/y/?] n
    Exclude CCM SRAM from the heap (STM32_CCMEXCLUDE) [N/y/?] n
    External SRAM on FSMC (STM32_FSMC_SRAM) [Y/n/?] y
    *
    * Timer Configuration
    *
    TIM one-shot wrapper (STM32_ONESHOT) [N/y/?] n
    TIM free-running wrapper (STM32_FREERUN) [N/y/?] n
    TIM1 Capture (STM32_TIM1_CAP) [N/y/?] n
    TIM3 Capture (STM32_TIM3_CAP) [N/y/?] n
    TIM4 Capture (STM32_TIM4_CAP) [N/y/?] n
    TIM8 Capture (STM32_TIM8_CAP) [N/y/?] n
    TIM9 Capture (STM32_TIM9_CAP) [N/y/?] n
    TIM10 Capture (STM32_TIM10_CAP) [N/y/?] n
    TIM11 Capture (STM32_TIM11_CAP) [N/y/?] n
    TIM12 Capture (STM32_TIM12_CAP) [N/y/?] n
    TIM13 Capture (STM32_TIM13_CAP) [N/y/?] n
    TIM14 Capture (STM32_TIM14_CAP) [N/y/?] n
    *
    * U[S]ART Configuration
    *
    *
    * U[S]ART Device Configuration
    *
    USART1 Driver Configuration
    > 1. Standard serial driver (STM32_USART1_SERIALDRIVER)
    choice[1-2]: 1
    RS-485 on USART1 (USART1_RS485) [N/y/?] n
    *
    * Serial Driver Configuration
    *
    Disable reordering of ttySx devices. (SERIAL_DISABLE_REORDERING) [N/y/?] n
    Use Software UART RTS flow control (STM32_FLOWCONTROL_BROKEN) [N/y/?] n
    Add TIOxSBRK to support sending Breaks (STM32_USART_BREAKS) [N/y/?] n
    Single Wire Support (STM32_USART_SINGLEWIRE) [N/y/?] n
    *
    * USB FS Host Configuration
    *
    *
    * USB HS Host Configuration
    *
    *
    * USB Host Debug Configuration
    *
    *
    * USB Device Configuration
    *
    *
    * Architecture Options
    *
    Enable MPU (ARCH_USE_MPU) [N/y/?] n
    Prioritized interrupt support (ARCH_IRQPRIO) [N/y/?] n
    Dump stack on assertions (ARCH_STACKDUMP) [Y/n/?] y
    Big Endian Architecture (ENDIAN_BIG) [N/y/?] n
    Custom IDLE loop (ARCH_IDLE_CUSTOM) [N/y/?] n
    Support RAM interrupt vectors (ARCH_RAMVECTORS) [N/y/?] n
    *
    * Board Settings
    *
    Delay loops per millisecond (BOARD_LOOPSPERMSEC) [16717] 16717
    Calibrate delay loop (ARCH_CALIBRATION) [N/y/?] n
    *
    * Interrupt options
    *
    Interrupt Stack Size (ARCH_INTERRUPTSTACK) [0] 0
    High priority interrupts (ARCH_HIPRI_INTERRUPT) [N/y/?] n
    *
    * Boot options
    *
    Boot Mode
    > 2. Boot and run from flash (BOOT_RUNFROMFLASH)
    choice[1-5]: 2
    *
    * Boot Memory Configuration
    *
    Primary RAM start address (physical) (RAM_START) [0x20000000] 0x20000000
    Primary RAM size (RAM_SIZE) [114688] 114688
    *
    * Timer Driver Support
    *
    Timer Support (TIMER) [N/y/?] n
    Oneshot timer driver (ONESHOT) [N/y/?] (NEW)

    到这里停住了,然而我并不知道这个oneshot是个啥意思。。。去官网查找。然后找到这个:

    ONESHOT
    Using a Oneshot Timer to Drive CPU Load Measurement

    看起来是一个CPU负载采样计时器,我觉得可以理解为,用来驱动CPU负载采样模块的计时器,是这样么?我并确定, 感觉这个可以有,也可以没有,毕竟这个例子里,我并不需要知道CPU的采样率。那就选N好了

    *
    * RTC Driver Support
    *
    RTC Driver Support (RTC) [N/y/?] n
    *
    * Watchdog Timer Support
    *
    Watchdog Timer Support (WATCHDOG) [N/y/?] n
    *
    * Contactless Device Support
    *
    Contactless Device Support (DRIVERS_CONTACTLESS) [N/y/?] (NEW)

    看名字就知道,no。

    *
    * Library Routines
    *
    *
    * Standard C Library Options
    *
    C STDIO buffer size (STDIO_BUFFER_SIZE) [64] 64
    STDIO line buffering (STDIO_LINEBUFFER) [Y/n/?] y
    Number unget() characters (NUNGET_CHARS) [2] 2
    Home directory (LIB_HOMEDIR) [/] /
    Standard Math library (LIBM) [N/y/?] n
    Disable sprintf support fieldwidth (NOPRINTF_FIELDWIDTH) [N/y/?] n
    Enable floating point in printf (LIBC_FLOATINGPOINT) [N/y/?] n
    Enable long long support in printf (LIBC_LONG_LONG) [Y/n/?] y
    Enable variadic ioctl() (LIBC_IOCTL_VARIADIC) [N/y/?] n
    Enable wide-characters (Unicode) support (LIBC_WCHAR) [N/y/?] (NEW)

    Unicode支持?支持有什么用,连字体都不知道怎么搞。。no

    Enable I18N (LOCALE) support (LIBC_LOCALE) [N/y/?] (NEW)

    I18N,国际化?no!

    Order of the random number generate (LIB_RAND_ORDER) [1] 1
    Newline Options
    > 4. EOL is CR or LF (EOL_IS_EITHER_CRLF)
    choice[1-4?]: 4
    Enable exec[l|v] / posix_spawn() Support (LIBC_EXECFUNCS) [N/y/?] n
    Spawn Stack Size (POSIX_SPAWN_PROXY_STACKSIZE) [1024] 1024
    Default task_spawn Stack Size (TASK_SPAWN_DEFAULT_STACKSIZE) [2048] 2048
    Enable strerror (LIBC_STRERROR) [N/y/?] n
    perror() to stdout (LIBC_PERROR_STDOUT) [N/y/?] n
    Low-level console output (ARCH_LOWPUTC) [Y/n/?] y
    localtime API call support (LIBC_LOCALTIME) [N/y/?] n
    Add day of week, year support (TIME_EXTENDED) [N/y/?] n
    sendfile() buffer size (LIB_SENDFILE_BUFSIZE) [512] 512
    Support for ROM string access (ARCH_ROMGETC) [N/y/?] n
    Enable arch optimized functions (ARCH_OPTIMIZED_FUNCTIONS) [N/y/?] n
    *
    * Thread Local Storage (TLS)
    *
    Thread Local Storage (TLS) (TLS) [N/y/?] n
    *
    * Non-standard Library Support
    *
    Fast CRC64 (LIB_CRC64_FAST) [N/y/?] n
    Keyboard CODEC (LIB_KBDCODEC) [N/y/?] n
    Segment LCD CODEC (LIB_SLCDCODEC) [N/y/?] n
    Intel HEX to binary conversion library (LIB_HEX2BIN) [N/y/?] n
    *
    * Basic CXX Support
    *
    sizeof(_Bool) is 8-bits (C99_BOOL8) [N/y/?] n
    Have C++ compiler (HAVE_CXX) [Y/n/?] y
    Have C++ initialization (HAVE_CXXINITIALIZE) [Y/n/?] y
    size_t is type long (CXX_NEWLONG) [N/y/?] n
    *
    * uClibc++ Standard C++ Library
    *
    Build uClibc++ (must be installed) (UCLIBCXX) [N/y/?] n
    *
    * Examples
    *
    Arch Buttons example (EXAMPLES_ARCHBUTTONS) [N/y/?] (NEW)

    好,回来这个是按键例程。no。

    顺便,上面提到有个库叫 uClibc++ ,貌似nuttx的git里有这个列表,另开一个终端,git它。

    git clone https://bitbucket.org/nuttx/uclibc

    完成

    Buttons driver example (EXAMPLES_BUTTONS) [N/y/?] n
    Verify C++ cctype operations (EXAMPLES_CCTYPE) [N/y/?] (NEW)

    确认C++操作?,不开。

    *
    * AT modem chat utility
    *
    AT modem chat utility (EXAMPLES_CHAT) [N/y/?] n
    Config Data example / unit test (EXAMPLES_CONFIGDATA) [N/y/?] n
    C++ test program (EXAMPLES_CXXTEST) [N/y/?] n
    DHCP server example (EXAMPLES_DHCPD) [N/y/?] n
    ELF Loader Example (EXAMPLES_ELF) [N/y/?] n
    FTP client example (EXAMPLES_FTPC) [N/y/?] n
    FTP server example (EXAMPLES_FTPD) [N/y/?] n
    “Hello, World!” example (EXAMPLES_HELLO) [N/y/?] n
    “Hello, World!” C++ example (EXAMPLES_HELLOXX) [N/y/?] n
    USB HID keyboard example (EXAMPLES_HIDKBD) [N/y/?] n
    IGMP example (EXAMPLES_IGMP) [N/y/?] n
    JSON example (EXAMPLES_JSON) [N/y/?] n
    Keypad test example program (EXAMPLES_KEYPADTEST) [N/y/?] n
    Media test (EXAMPLES_MEDIA) [N/y/?] n
    Memory management example (EXAMPLES_MM) [N/y/?] n
    FreeModBus example (EXAMPLES_MODBUS) [N/y/?] n
    File system mount example (EXAMPLES_MOUNT) [N/y/?] n
    Basic nRF24L01 terminal (EXAMPLES_NRF24L01TERM) [N/y] n
    NuttShell (NSH) example (EXAMPLES_NSH) [Y/n/?] y
    C++ Initialization (EXAMPLES_NSH_CXXINITIALIZE) [Y/n/?] y
    NULL example (EXAMPLES_NULL) [N/y/?] n
    NXFFS file system example (EXAMPLES_NXFFS) [N/y/?] n
    NX graphics “Hello, World!” example (EXAMPLES_NXHELLO) [N/y/?] n
    NX graphics image example (EXAMPLES_NXIMAGE) [N/y/?] n
    NX graphics example (EXAMPLES_NX) [N/y/?] n
    NX graphics lines example (EXAMPLES_NXLINES) [N/y/?] n
    NxTerm example (EXAMPLES_NXTERM) [N/y/?] n
    NX graphics text example (EXAMPLES_NXTEXT) [N/y/?] n
    OS test example (EXAMPLES_OSTEST) [N/y/?] n
    PCA9635 PWM LED example (EXAMPLES_PCA9635) [N/y/?] n
    posix_spawn Unit Test (EXAMPLES_POSIXSPAWN) [N/y/?] n
    pppd client example (EXAMPLES_PPPD) [N/y/?] n
    RFID Read UID example (EXAMPLES_RFID_READUID) [N/y/?] n
    RGB LED Test (EXAMPLES_RGBLED) [N/y/?] n
    RGMP example (EXAMPLES_RGMP) [N/y/?] n
    Sendmail example (EXAMPLES_SENDMAIL) [N/y/?] n
    Serial Blaster example (EXAMPLES_SERIALBLASTER) [N/y/?] n
    Serial RX example (EXAMPLES_SERIALRX) [N/y/?] n
    Serial loopback example (EXAMPLES_SERLOOP) [N/y/?] n
    Segment LCD test (EXAMPLES_SLCD) [N/y/?] n
    SMART file system example (EXAMPLES_SMART) [N/y/?] n
    SMART filesystem test tool (EXAMPLES_SMART_TEST) [N/y/?] n
    SMP example (EXAMPLES_SMP) [N/y/?] n
    Simple TCP echo server (EXAMPLES_TCPECHO) [N/y/?] n
    Telnet daemon example (EXAMPLES_TELNETD) [N/y/?] n
    TIFF file generation example (EXAMPLES_TIFF) [N/y/?] n
    Touchscreen example (EXAMPLES_TOUCHSCREEN) [N/y/?] n
    USB serial terminal example (EXAMPLES_USBTERM) [N/y/?] n
    Watchdog Timer example (EXAMPLES_WATCHDOG) [N/y/?] n
    uIP web server example (EXAMPLES_WEBSERVER) [N/y/?] n
    *
    * Interpreters
    *
    Ficl Forth interpreter (INTERPRETERS_FICL) [N/y/?] n
    Micro Python support (INTERPRETERS_MICROPYTHON) [N/y/?] n
    Mini Basic Interpreter support (INTERPRETERS_MINIBASIC) [N/y/?] (NEW)

    不知名的中断?不开。

    Pascal p-code interpreter (INTERPRETERS_PCODE) [N/y/?] n
    *
    * Disable Individual commands
    *
    Disable addroute (NSH_DISABLE_ADDROUTE) [N/y] n
    Disable basename (NSH_DISABLE_BASENAME) [N/y] n
    Disable cat (NSH_DISABLE_CAT) [N/y] n
    Disable cd (NSH_DISABLE_CD) [N/y] n
    Disable cp (NSH_DISABLE_CP) [N/y] n
    Disable cmp (NSH_DISABLE_CMP) [N/y] n
    Disable date (NSH_DISABLE_DATE) [Y/n] y
    Disable dd (NSH_DISABLE_DD) [N/y] n
    Disable df (NSH_DISABLE_DF) [N/y] n
    Disable delroute (NSH_DISABLE_DELROUTE) [N/y] n
    Disable dirname (NSH_DISABLE_DIRNAME) [N/y] n
    Disable echo (NSH_DISABLE_ECHO) [N/y] n
    Disable exec (NSH_DISABLE_EXEC) [N/y] n
    Disable exit (NSH_DISABLE_EXIT) [N/y] n
    Disable free (NSH_DISABLE_FREE) [N/y] n
    Disable get (NSH_DISABLE_GET) [N/y] n
    Disable help (NSH_DISABLE_HELP) [N/y] n
    Disable hexdump (NSH_DISABLE_HEXDUMP) [N/y] n
    Disable ifconfig (NSH_DISABLE_IFCONFIG) [N/y] n
    Disable ifup/down (NSH_DISABLE_IFUPDOWN) [Y/n] y
    Disable kill (NSH_DISABLE_KILL) [N/y] n
    Disable losetup (NSH_DISABLE_LOSETUP) [N/y] n
    Disable losmart (NSH_DISABLE_LOSMART) [Y/n] y
    Disable ls (NSH_DISABLE_LS) [N/y] n
    Disable mb (NSH_DISABLE_MB) [N/y] n
    Disable mkdir (NSH_DISABLE_MKDIR) [N/y] n
    Disable mkrd (NSH_DISABLE_MKRD) [N/y] n
    Disable mh (NSH_DISABLE_MH) [N/y] n
    Disable mount (NSH_DISABLE_MOUNT) [N/y] n
    Disable mv (NSH_DISABLE_MV) [N/y] n
    Disable mw (NSH_DISABLE_MW) [N/y] n
    Disable printf (NSH_DISABLE_PRINTF) [Y/n] (NEW)

    不开?

    Disable ps (NSH_DISABLE_PS) [N/y] n
    Disable put (NSH_DISABLE_PUT) [N/y] n
    Disable pwd (NSH_DISABLE_PWD) [N/y] n
    Disable rm (NSH_DISABLE_RM) [N/y] n
    Disable rmdir (NSH_DISABLE_RMDIR) [N/y] n
    Disable set (NSH_DISABLE_SET) [N/y] n
    Disable sh (NSH_DISABLE_SH) [N/y] n
    Disable sleep (NSH_DISABLE_SLEEP) [N/y] n
    Disable time (NSH_DISABLE_TIME) [N/y] n
    Disable test (NSH_DISABLE_TEST) [N/y] n
    Disable umount (NSH_DISABLE_UMOUNT) [N/y] n
    Disable uname (NSH_DISABLE_UNAME) [N/y] n
    Disable unset (NSH_DISABLE_UNSET) [N/y] n
    Disable usleep (NSH_DISABLE_USLEEP) [N/y] n
    Disable wget (NSH_DISABLE_WGET) [N/y] n
    Disable xd (NSH_DISABLE_XD) [N/y] n
    *
    * System Libraries and NSH Add-Ons
    *
    *
    * EMACS-like Command Line Editor
    *
    EMACS-like Command Line Editor (SYSTEM_CLE) [N/y/?] n
    *
    * CU minimal serial terminal
    *
    CU minimal serial terminal (SYSTEM_CUTERM) [N/y/?] n
    Custom Free Memory Command (SYSTEM_FREE) [N/y/?] n
    *
    * Intel HEX to binary conversion
    *
    Intel HEX to binary conversion (SYSTEM_HEX2BIN) [N/y/?] n
    *
    * Hex editor
    *
    Hex editor (SYSTEM_HEXED) [N/y/?] n
    FLASH Program Installation (SYSTEM_INSTALL) [N/y/?] n
    RAM Test (SYSTEM_RAMTEST) [N/y/?] n
    *
    * readline() Support
    *
    readline() Support (SYSTEM_READLINE) [Y/?] y
    Echo character input (READLINE_ECHO) [Y/n/?] y
    Tab completion (READLINE_TABCOMPLETION) [N/y/?] n
    Command line history (READLINE_CMD_HISTORY) [N/y/?] n
    *
    * Sudoku
    *
    Sudoku (SYSTEM_SUDOKU) [N/y/?] n
    System Command (SYSTEM_SYSTEM) [N/y/?] (NEW)

    系统命令?干脆直接NO算了。

    Tee Command (SYSTEM_TEE) [N/y/?] (NEW)

    no

    *
    * u-blox modem configuration tool
    *
    u-blox modem configuration tool (SYSTEM_UBLOXMODEM) [N/y/?] n
    *
    * VI Work-Alike Text Editor
    *
    VI Work-Alike Text Editor (SYSTEM_VI) [N/y/?] n
    *
    * Zmodem Commands
    *
    Zmodem Commands (SYSTEM_ZMODEM) [N/y/?] n
    #
    # configuration written to .config
    #
    make[1]: Entering directory ‘/home/godenfreemans/nuttx/nuttx/configs’
    make[1]: Leaving directory ‘/home/godenfreemans/nuttx/nuttx/configs’

    终于完成了。

你可能感兴趣的:(NuttX)