Compiling

使用選項編譯 Nano 編輯器

  • April 6, 2017

我正在嘗試nano使用一些選項來編譯我最喜歡的命令行文本編輯器。

實際上,大多數選項都是為了啟用所有功能。


首先,我進入 Downloads 目錄並下載 tarball:

cd Downloads

wget --continue https://www.nano-editor.org/dist/v2.8/nano-2.8.0.tar.xz

然後,我驗證它的完整性:

wget --continue https://www.nano-editor.org/dist/v2.8/nano-2.8.0.tar.xz.asc

gpg --verify nano-2.8.0.tar.xz.asc

它應該說:

gpg: Good signature from "Benno Schulenberg <bensberg@justemail.net>"

我嘗試按如下方式執行配置腳本:

./configure --enable-nanorc --enable-color --enable-extra --enable-multibuffer --enable-utf8 --enable-libmagic --enable-speller --disable-wrapping-as-root

編譯後,我得到了這個;直接在編譯目錄執行:

Compiled options: --disable-libmagic ...

我強調:

--disable-libmagic

正如我專門配置的那樣:

--enable-libmagic    

沒有成功後:

  1. 我刪除文件夾以重新開始該過程:
rm -rf nano-2.8.0/
  1. 我再次提取檔案:
tar -xJf nano-2.8.0.tar.xz
  1. 我嘗試了不同的選項組合,但沒有運氣。

系統中是否缺少任何東西,或者我只是做錯了什麼?


編譯後直接執行:

user@computer ~/Downloads/nano-2.8.0/src $ ./nano --version
GNU nano, version 2.8.0
(C) 1999..2016 Free Software Foundation, Inc.
(C) 2014..2017 the contributors to nano
Email: nano@nano-editor.org Web: https://nano-editor.org/
Compiled options: --disable-libmagic --disable-wrapping-as-root --enable-utf8

Nano 不儲存./configure命令行中提供的編譯選項,它根據檢測到的特徵請求的目標(“微小”Nano 或普通 Nano)重建它們。對於微型 Nano,它報告啟用的選項,因為它們添加到預設值;對於普通 Nano,它會報告禁用的選項,因為它們從預設值中刪除(在大多數情況下)。

在您的情況下,您正在建構普通的 Nano,因此對於大多數選項,它只報告它們是否被禁用;例外debugutf8slang。您的所有--enable選項都是普通 Nano 的預設值,因此它不會在編譯選項中報告它們;你會得到相同的結果,./configure但沒有選項。您最終--disable-magic會因為您沒有開發文件libmagic(請參閱Thomas Dickey 的回答),並且--enable-utf8因為您確實具有支持 UTF-8 的必要功能(並且預設情況下已啟用)。

引用自:https://unix.stackexchange.com/questions/327765