GNU Octave 通過(guò) GPL 授權(quán)協(xié)議發(fā)行,在GNU Octave 官網(wǎng)[2]上可以" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

所在位置: 首頁(yè) > 營(yíng)銷(xiāo)資訊 > 網(wǎng)站運(yùn)營(yíng) > 安裝/編譯 GNU Octave替代Matlab

安裝/編譯 GNU Octave替代Matlab

時(shí)間:2023-04-21 12:18:02 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-04-21 12:18:02 來(lái)源:網(wǎng)站運(yùn)營(yíng)

安裝/編譯 GNU Octave替代Matlab:GNU Octave[1] 是 MATLAB 最著名最為接近的替代品。它力求兼容, MATLAB 開(kāi)發(fā)的項(xiàng)目很多都可以直接在 Octave 中運(yùn)行。

GNU Octave 通過(guò) GPL 授權(quán)協(xié)議發(fā)行,在GNU Octave 官網(wǎng)[2]上可以直接下載安裝版本,網(wǎng)站上有Windows版本,macOS版本,Linux版本,BSD版本。其中windows版本非常容易下載安裝使用。網(wǎng)站還提供源代碼供學(xué)習(xí)其原理,也歡迎各位學(xué)習(xí)后積極貢獻(xiàn)智慧和代碼。

在 Ubuntu 上的安裝也非常簡(jiǎn)單,直接在命令行運(yùn)行:

sudo apt-get install octave全套的GNU Octave軟件被分成了幾個(gè)軟件包,如果希望獲得全套的特性,還需要額外安裝如下一些軟件包。如文檔方面的包 octave-doc, octave-info, 和 octave-htmldoc,開(kāi)發(fā)者的包 liboctave-dev,以及調(diào)試包octave-dbg,都可以參考上述命令執(zhí)行安裝。

本文試著在Ubuntu系統(tǒng)上編譯GNU Octave 源代碼。 首先聲明本次安裝系統(tǒng)關(guān)鍵參數(shù)。

Ubuntu 版本:Ubuntu 22.04 LTSCPU版本: Intel? Core? i7-8650U CPU @ 1.90GHz × 8
  1. 下載源代碼
從官方網(wǎng)網(wǎng)址 https://ftpmirror.gnu.org/octave 下載源代碼,本次下載的是代碼包是: octave-7.1.0.tar.xz 時(shí)間:06-Apr-2022 18:38 文件大?。?5M

2. 拷貝代碼包到目標(biāo)文件夾,注意這個(gè)安裝需要6G空間,注意選擇有足夠空間的硬盤(pán)。解壓縮文件

cp ~/Downloads/octave-7.1.0.tar.xz ~/Octavecd Octavetar -xf octave-7.1.0.tar.xz3. 為了編譯,需要安裝依賴(lài)環(huán)境和工具很多,可以利用如下命令可以直接完成,在命令行運(yùn)行:

sudo apt-get install gcc g++ gfortran make libblas-dev liblapack-dev libpcre3-dev/ libarpack2-dev libcurl4-gnutls-dev epstool libfftw3-dev fig2dev libfltk1.3-dev/ libfontconfig1-dev libfreetype6-dev libgl2ps-dev libglpk-dev libreadline-dev/ gnuplot-x11 libgraphicsmagick++1-dev libhdf5-dev openjdk-11-jdk libsndfile1-dev/ llvm-dev texinfo libgl1-mesa-dev pstoedit portaudio19-dev libqhull-dev libqrupdate-dev/ libsuitesparse-dev texlive-latex-extra libxft-dev zlib1g-dev autoconf automake bison/ flex gperf gzip icoutils librsvg2-bin libtool perl rsync tar qtbase5-dev qttools5-dev/ qttools5-dev-tools libqscintilla2-qt5-dev libsundials-dev以上命令看著非常復(fù)雜,其實(shí)就是安裝編譯用的各種軟件包如下表所示:

依賴(lài)環(huán)境配置描述License / 版權(quán)
Autoconf軟件配置工具GNU GPL v3.0
AutomakeMakefile generatorGNU GPL v3.0
C++, C, and Fortran compilers編譯c,c++和Fortran語(yǔ)言的編譯器GNU GPL v3.0
GNU MakeMakefile processorGNU GPL v3.0
Libtool庫(kù)文件工具Free Software Foundation
Unix utilities: gawk, gperf, less, ncurses各類(lèi)系統(tǒng)工具GNU GPL v3.0
BisonBison命令解釋器GNU GPL v3.0
Flex詞法分析器The Flex project
運(yùn)行情況如下:

[sudo] password for XXX: Reading package lists... DoneBuilding dependency tree... DoneReading state information... Done......【這里耗費(fèi)很長(zhǎng)時(shí)間】...... Processing triggers for desktop-file-utils (0.26-1ubuntu3) ...Processing triggers for hicolor-icon-theme (0.17-2) ...Processing triggers for gnome-menus (3.36.0-1ubuntu3) ...Processing triggers for libc-bin (2.35-0ubuntu3) ...Processing triggers for tex-common (6.17) ...Running updmap-sys. This may take some time... done.Running mktexlsr /var/lib/texmf ... done.Building format(s) --all. This may take some time... done.3. 成功后,運(yùn)行編譯和安裝,在命令行運(yùn)行:

mkdir .build && /cd .build && /./../configure --prefix=$HOME/my_octave && /make -j2 && /make check && /make install運(yùn)行情況如下:

checking for a BSD-compatible install... /usr/bin/install -cchecking whether build environment is sane... yeschecking for a race-free mkdir -p... /usr/bin/mkdir -pchecking for gawk... gawkchecking whether make sets $(MAKE)... yes.... 【這里耗費(fèi)很長(zhǎng)的時(shí)間】 .... lnames=`/usr/bin//sed -n -e "s/library_names='/([^']*/)'//1/p" < $f`; / if [ -n "$lnames" ]; then / rm -f $f $lnames $dl; / fi /done/usr/bin/mkdir -p /home/yacc/my_octave/share/octave/7.1.0/etc/usr/bin/install -c -m 644 ./../libinterp/DOCSTRINGS /home/yacc/my_octave/share/octave/7.1.0/etc/built-in-docstringsmake[4]: Leaving directory '/media/yacc/data1/octave-7.1.0/.build'make[3]: Leaving directory '/media/yacc/data1/octave-7.1.0/.build'make[2]: Leaving directory '/media/yacc/data1/octave-7.1.0/.build'make[1]: Leaving directory '/media/yacc/data1/octave-7.1.0/.build'3. 安裝完畢后,會(huì)在home目錄下生成一個(gè)my_octave 目錄,到~/my_octave/bin 目錄下行運(yùn)命令:

./octave沒(méi)有配置路徑,所以需要注意 "./" 不能省略,后續(xù)需要配置路徑文件一方便運(yùn)行,運(yùn)行結(jié)果如下:

看到命令行出現(xiàn) " octave:1> " 就說(shuō)明成功了!

未來(lái)為方便使用 Octave, 建議將路徑 ~/my_octave/bin 配置到系統(tǒng)路徑中一方便執(zhí)行,這個(gè)配置在不同的系統(tǒng)中方法不同,這次不展開(kāi)了。

4. 參考Matlab 的3D圖的小例子[3],試用一下 GUN Octave, 在octave命令行執(zhí)行以下指令:

x = linspace(-2,2,20); y = x'; z = x .* exp(-x.^2 - y.^2);Then, create a surface plot.surf(x,y,z)彈出3D圖像,搞定!

編者語(yǔ):Matlab作為商業(yè)軟件非常昂貴且不開(kāi)放代碼,使用者無(wú)法了解其工作原理,如果能多使用開(kāi)源軟件,進(jìn)而了解其代碼和算法原理,才能真正掌握其精髓。希望這篇文章能幫到大家,大家在安裝中有問(wèn)題也歡迎提問(wèn)。

參考

  1. ^GNU Octove官網(wǎng)?https://www.gnu.org/software/octave/
  2. ^GNU Octave官網(wǎng)下載地址?https://www.gnu.org/software/octave/download#linux
  3. ^Matlab小例子?https://in.mathworks.com/help/matlab/learn_matlab/plots.html

關(guān)鍵詞:替代,編譯,安裝

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉