在Ubuntu-20.04上安裝Emacs-27.1


在電腦上裝了一個Ubuntu-20.04。上面幾乎啥軟件也沒有,所以裝Emacs的時候有很多依賴的軟件需要裝,有點麻煩。下面是中途開始記錄的日志。

emacs-> X -> gtk+-3.24.23

No package 'glib-2.0' found
No package 'atk' found
No package 'pango' found
No package 'fribidi' found
No package 'cairo' found
No package 'cairo-gobject' found
No package 'gdk-pixbuf-2.0' found

安裝好ninja了
python3 -m pip --version看到安裝好pip 20.0.2了

sudo gedit ~/.bashrc
進入文件,改里面的PATH環境變量
當前:export PATH="\$PATH:/usr/local/sbin:usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/narh/bin:/bin:/usr/bin:/home/narh/.local/bin"
加入一條:echo 'export PATH=/home/narh/.local/bin:\$PATH' >>~/.bashrc
然后就安裝好meson了!
接下來安裝atk去!

先要安裝glib
sudo apt-get install cmake安裝了cmake
然后再安裝libffi-3.4.2
還缺少xgettext,於是安裝gettext-0.21
然后再在glib目錄里meson _build,它說configured,直接用ninja就行了!
於是ninja -C _build,結果在gio/test/test.gresource和gio/tests/plugin-resources.c上失敗了
重新解壓一遍,再次meson _build,還是有好多NO
sudo apt-get install libdbus-1-dev
再ninja -C _build,又推進了一些,直到第384個子命令才報錯。看來盡量把meson _build時報的錯都解決掉才能通過這個ninja
從網上找了mach_time.h、crt_externs.h放進/usr/include
sudo apt-get install libevent-dev
沒有xlocale,聽說把xlocale鏈接到locale就行了
sudo ln -s /usr/include/locale.h /usr/include/xlocale.h
sys/mkdev.h、sys/mntctl.h和sys/mnttab.h好像是solaris里面的頭文件,所以自己的ubuntu沒有。那就不管了
還沒有fdwalk和getfsstat,也沒有kevent和kqueue等許多東西。
kqueue應該在sys/event.h庫里面。難道剛才安裝了libevent-dev還不行嗎……
看了一下,自己沒有/usr/include/sys這個目錄。難道要創建鏈接,把sys/...鏈接到...嗎?
沒有winsock2.h,但是自己又不在windows系統下安裝,應該沒問題
要安裝libpcre、mount、libselinux和libelf
安裝了pcre-8.45。發現已經有mount命令了。
apt-cache search libselinux(這個命令真方便!)
sudo apt-get install libselinux1
apt-cache search libelf
sudo apt-get install libelf1
sudo apt autoremove卸載了libfprint-2-tod1和libllvm10
找不到xmllint,但是apt-get了一下,好像已經有了
再meson _build一番,發現有了libpcre,但還是沒有libselinux和libelf。不管了
ninja -C _build在第682個子命令報錯
sudo apt-get install libselinux-dev
sudo apt-get install libelf-dev
這回有libselinux和libelf了。但是還是報錯了

發現原來自己在/usr/include里找不到sys目錄,是要在x86_64-linux-gnu目錄下找!https://www.cnblogs.com/johnnyzen/p/8016796.html
發現安裝完libevent-dev的event.h里面幾乎啥也沒有,也沒kqueue之類,於是網上找了一個好像有kqueue的event.h放進sys目錄里
再meson _build,有了sys/event,但還是沒有kqueue。發現自己粘的好像是macOS適用的。於是把這個和之前的mach_time.h、crt_externs.h都刪了……
仔細看了看,總感覺自己的event.h是個假的。里面還引用windows.h、winsock2.h,也沒有kqueue
於是把event.h挪走了,再apt-get libevent-dev,還是沒裝上新的。到底咋回事……
從libevent.org上下載安裝了libevent-2.1.12-stable,但還是沒用
再去查了一下glib,現在有glib-2.66.7了,而且頁面里還寫着各種依賴包!速去安裝一波
sudo apt-get install libxml2
sudo apt-get install libxml2-dev
sudo apt-get install libxslt1-dev
sudo apt-get install bindfs
安裝了gdb-10.2
sudo apt-get install itstool
已經有了docbook-xml,又sudo apt-get install docbook-xsl
為了安裝gtk-doc-1.33.2
sudo apt-get install python3-pygments
sudo apt-get install xsltproc
sudo apt-get install libglib2.0-dev
然后用meson和ninja命令安裝好了gtk-doc-1.33.2
glib-networking也已經有了
為了安裝gobject-introspection-1.66.1
sudo apt-get install flex
sudo apt-get install bison
還要安裝cairo...
仔細一看,glib的INSTALL.in里也寫了依賴包
sudo apt-get install pkg-config-x86-64-linux-gnu
我好像已經有glib-2.64.6了!安裝gtk+所缺少的glib-2.0是剛才裝的libglib2.0-dev!

下面開始安裝pango
安裝了fribidi
sudo apt-get install libharfbuzz-dev
sudo apt-get install libfreetype-dev
准備安裝fontconfig,下載了它的安裝包,但是make發現好像缺少什么;但是用apt-get好像能直接安裝
於是受到啟發
sudo apt-get install emacs-gtk
安裝好辣!

發現放着一些文件夾:
file-5.39 gmp-6.2.0 libgcrypt-1.9.0 libgpg-error-1.41 mpc-1.2.0 mpfr-4.1.0 openssl-3.0.0-alpha10 rpm-4.16.1.2 zlib-1.2.11
還有一些准備安裝的壓縮包:
atk-2.36.0.tar.xz cairo-1.17.4.tar.xz emacs-27.1.tar.gz fontconfig-2.13.1.tar.bz2 gdk-pixbuf-2.40.0.tar.xz glib-2.68.3.tar.xz gobject-introspection-1.66.1.tar.xz gtk+-3.24.23.tar.xz libepoxy-1.5.4.tar.xz libffi-3.4.2.tar.gz pango-1.47.0.tar.xz sysprof-3.40.1.tar.xz
這些東西以后再安裝吧。嘻嘻

apt-get真是太方便了!記得配合apt-cache search *** 使用~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM