octave安装control包的错误解决记录

发布时间 2023-06-06 12:37:10作者: 叕叒双又
一、为了联系matlab的做图,写了个测试:
function subplotSam1()
    h = tf([4 8.4 30.8 60], [1 4.12 17.4 30.8 60]);
    subplot(221)
    bode(h);
    subplot(222)
    step(h);
    subplot(223)
    pzmap(h);
    subplot(224)
    plot(rand(1, 100))

    title('Some noise'); 

二、运行时,出现了以下错误:

 1 subplotSam1
 2 warning: tempdir: '/tmp/' does not exist or is not a directory
 3 warning: called from
 4     tempdir at line 48 column 5
 5     __makeinfo__ at line 135 column 17
 6     __unimplemented__ at line 532 column 9
 7     subplotSam1 at line 2 column 4
 8 
 9 error: 'tf' undefined near line 2, column 2
10 
11 The 'tf' function belongs to the control package from Octave Forge which
12 seems to not be installed in your system.
13 
14 Please read <https://www.octave.org/missing.html> to learn how you can
15 contribute missing functionality.
16 error: called from
17     subplotSam1 at line 2 column 4

很明显,第9行指出了错误是因为tf函数没有定义;第11行则说明了tf函数是属于control包的;第14行则给出了解决方案,让到某个网址看如何解决,其实就是安装缺失的包即可。

三、安装缺失的软件包

 1 octave:1> pkg install "https://github.com/gnu-octave/pkg-control/releases/download/control-3.6.0/control-3.6.0.tar.gz"
 2 warning: creating installation directory /home/nication/octave
 3 warning: called from
 4     install at line 36 column 5
 5     pkg at line 568 column 9
 6 
 7 error: pkg: please install the Debian package "liboctave-dev" to get the mkoctfile command
 8 error: called from
 9     __gripe_missing_component__ at line 60 column 3
10     configure_make at line 50 column 7
11     install at line 198 column 7
12     pkg at line 568 column 9

第7行出错了,原因也说明,需要安装debian的包liboctave-dev包

四、安装系统缺失的包吧

 sudo apt install liboctave-dev
[sudo] password for nication: 
正在读取软件包列表... 完成正在分析软件包的依赖关系树... 完成正在读取状态信息... 完成                 
Starting pkgProblemResolver with broken count: 0
Starting 2 pkgProblemResolver with broken count: 0
Done
将会同时安装下列软件:  gfortran gfortran-11 hdf5-helpers libaec-dev libblas-dev
  libcurl4-openssl-dev libegl-dev libfftw3-bin libfftw3-dev
  libfftw3-quad3 libgfortran-11-dev libgl-dev libgl1-mesa-dev
  libgles-dev libgles1 libglvnd-core-dev libglvnd-dev libglx-dev
  libhdf5-cpp-103-1 libhdf5-dev libhdf5-fortran-102
  libhdf5-hl-100 libhdf5-hl-cpp-100 libhdf5-hl-fortran-100
  libjpeg-dev libjpeg-turbo8-dev libjpeg8-dev liblapack-dev
  libncurses-dev libopengl-dev libpthread-stubs0-dev
  libreadline-dev libssl-dev libx11-dev libxau-dev libxcb1-dev
  libxdmcp-dev octave-dev x11proto-dev xorg-sgml-doctools
  xtrans-dev
建议安装:  gfortran-multilib gfortran-doc gfortran-11-multilib
  gfortran-11-doc libcoarrays-dev liblapack-doc libcurl4-doc
  libidn11-dev libkrb5-dev libldap2-dev librtmp-dev libssh2-1-dev
  pkg-config libfftw3-doc libhdf5-doc ncurses-doc readline-doc
  libssl-doc libx11-doc libxcb-doc
下列【新】软件包将被安装:  gfortran gfortran-11 hdf5-helpers libaec-dev libblas-dev
  libcurl4-openssl-dev libegl-dev libfftw3-bin libfftw3-dev
  libfftw3-quad3 libgfortran-11-dev libgl-dev libgl1-mesa-dev
  libgles-dev libgles1 libglvnd-core-dev libglvnd-dev libglx-dev
  libhdf5-cpp-103-1 libhdf5-dev libhdf5-fortran-102
  libhdf5-hl-100 libhdf5-hl-cpp-100 libhdf5-hl-fortran-100
  libjpeg-dev libjpeg-turbo8-dev libjpeg8-dev liblapack-dev
  libncurses-dev liboctave-dev libopengl-dev
  libpthread-stubs0-dev libreadline-dev libssl-dev libx11-dev
  libxau-dev libxcb1-dev libxdmcp-dev octave-dev x11proto-dev
  xorg-sgml-doctools xtrans-dev
升级了 0 个软件包,新安装了 42 个软件包,要卸载 0 个软件包,有 10 个软件包未被升级。需要下载 28.6 MB 的归档。解压缩后会消耗 125 MB 的额外空间。您希望继续执行吗? [Y/n] 
获取:1 http://security.ubuntu.com/ubuntu jammy-security/main amd64 libgfortran-11-dev amd64 11.3.0-1ubuntu1~22.04.1 [842 kB]
获取:2 http://archive.ubuntu.com/ubuntu jammy/main amd64 gfortran amd64 4:11.2.0-1ubuntu1 [1,182 B]
获取:3 http://archive.ubuntu.com/ubuntu jammy/universe amd64 hdf5-helpers amd64 1.10.7+repack-4ubuntu2 [14.2 kB]
获取:4 http://archive.ubuntu.com/ubuntu jammy/main amd64 libblas-dev amd64 3.10.0-2ubuntu1 [164 kB]
获取:5 http://archive.neon.kde.org/user jammy/main amd64 libjpeg-turbo8-dev amd64 2.1.5-2+22.04+jammy+release+build13 [290 kB]
获取:6 http://archive.ubuntu.com/ubuntu jammy/main amd64 xorg-sgml-doctools all 1:1.11-1.1 [10.9 kB]
获取:7 http://archive.ubuntu.com/ubuntu jammy/main amd64 x11proto-dev all 2021.5-1 [604 kB]
获取:8 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxau-dev amd64 1:1.0.9-1build5 [9,724 B]
获取:9 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxdmcp-dev amd64 1:1.1.3-0ubuntu5 [26.5 kB]
获取:10 http://archive.ubuntu.com/ubuntu jammy/main amd64 xtrans-dev all 1.4.0-1 [68.9 kB]
获取:11 http://archive.ubuntu.com/ubuntu jammy/main amd64 libpthread-stubs0-dev amd64 0.4-1build2 [5,516 B]
获取:12 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxcb1-dev amd64 1.14-3ubuntu3 [86.5 kB]
获取:13 http://security.ubuntu.com/ubuntu jammy-security/main amd64 gfortran-11 amd64 11.3.0-1ubuntu1~22.04.1 [11.2 MB]
获取:14 http://archive.ubuntu.com/ubuntu jammy/main amd64 libx11-dev amd64 2:1.7.5-1 [744 kB]
获取:15 http://archive.ubuntu.com/ubuntu jammy/main amd64 libglx-dev amd64 1.4.0-1 [14.1 kB]
获取:16 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgl-dev amd64 1.4.0-1 [101 kB]
获取:17 http://archive.ubuntu.com/ubuntu jammy/main amd64 libegl-dev amd64 1.4.0-1 [18.0 kB]
获取:18 http://archive.ubuntu.com/ubuntu jammy/main amd64 libfftw3-quad3 amd64 3.3.8-2ubuntu8 [614 kB]
获取:19 http://security.ubuntu.com/ubuntu jammy-security/main amd64 libcurl4-openssl-dev amd64 7.81.0-1ubuntu1.10 [386 kB]
获取:20 http://security.ubuntu.com/ubuntu jammy-security/main amd64 libssl-dev amd64 3.0.2-0ubuntu1.10 [2,372 kB]
获取:21 http://archive.ubuntu.com/ubuntu jammy/main amd64 libfftw3-bin amd64 3.3.8-2ubuntu8 [35.5 kB]
获取:22 http://archive.ubuntu.com/ubuntu jammy/main amd64 libfftw3-dev amd64 3.3.8-2ubuntu8 [2,101 kB]
获取:23 http://security.ubuntu.com/ubuntu jammy-security/main amd64 libncurses-dev amd64 6.3-2ubuntu0.1 [381 kB]
获取:24 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgles1 amd64 1.4.0-1 [11.5 kB]
获取:25 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgles-dev amd64 1.4.0-1 [49.4 kB]
获取:26 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libhdf5-cpp-103-1 amd64 1.10.7+repack-4ubuntu2 [129 kB]
获取:27 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libhdf5-fortran-102 amd64 1.10.7+repack-4ubuntu2 [90.9 kB]
获取:28 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libhdf5-hl-100 amd64 1.10.7+repack-4ubuntu2 [59.1 kB]
获取:29 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libhdf5-hl-fortran-100 amd64 1.10.7+repack-4ubuntu2 [33.8 kB]
获取:30 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libhdf5-hl-cpp-100 amd64 1.10.7+repack-4ubuntu2 [10.6 kB]
获取:31 http://archive.ubuntu.com/ubuntu jammy/main amd64 libjpeg8-dev amd64 8c-2ubuntu10 [1,476 B]
获取:32 http://archive.ubuntu.com/ubuntu jammy/main amd64 libjpeg-dev amd64 8c-2ubuntu10 [1,472 B]
获取:33 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libaec-dev amd64 1.0.6-1 [17.9 kB]
获取:34 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libhdf5-dev amd64 1.10.7+repack-4ubuntu2 [2,684 kB]
获取:35 http://archive.ubuntu.com/ubuntu jammy/main amd64 liblapack-dev amd64 3.10.0-2ubuntu1 [4,774 kB]
获取:36 http://archive.ubuntu.com/ubuntu jammy/main amd64 libopengl-dev amd64 1.4.0-1 [3,400 B]
获取:37 http://archive.ubuntu.com/ubuntu jammy/main amd64 libreadline-dev amd64 8.1.2-1 [166 kB]
获取:38 http://archive.ubuntu.com/ubuntu jammy/main amd64 libglvnd-core-dev amd64 1.4.0-1 [12.7 kB]
获取:39 http://archive.ubuntu.com/ubuntu jammy/main amd64 libglvnd-dev amd64 1.4.0-1 [3,162 B]
获取:40 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 libgl1-mesa-dev amd64 22.2.5-0ubuntu0.1~22.04.1 [6,618 B]
获取:41 http://archive.ubuntu.com/ubuntu jammy/universe amd64 octave-dev amd64 6.4.0-2 [473 kB]
获取:42 http://archive.ubuntu.com/ubuntu jammy/universe amd64 liboctave-dev all 6.4.0-2 [6,648 B]
已下载 28.6 MB,耗时 20秒 (1,420 kB/s)                            
正在从软件包中解出模板:100%
正在选中未选择的软件包 libgfortran-11-dev:amd64。(正在读取数据库 ... 系统当前共安装有 277451 个文件和目录。)
准备解压 .../00-libgfortran-11-dev_11.3.0-1ubuntu1~22.04.1_amd64.deb  ...
正在解压 libgfortran-11-dev:amd64 (11.3.0-1ubuntu1~22.04.1) ...
正在选中未选择的软件包 gfortran-11。准备解压 .../01-gfortran-11_11.3.0-1ubuntu1~22.04.1_amd64.deb  ...
正在解压 gfortran-11 (11.3.0-1ubuntu1~22.04.1) ...
正在选中未选择的软件包 gfortran。准备解压 .../02-gfortran_4%3a11.2.0-1ubuntu1_amd64.deb  ...
正在解压 gfortran (4:11.2.0-1ubuntu1) ...
正在选中未选择的软件包 hdf5-helpers。准备解压 .../03-hdf5-helpers_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 hdf5-helpers (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 libblas-dev:amd64。准备解压 .../04-libblas-dev_3.10.0-2ubuntu1_amd64.deb  ...
正在解压 libblas-dev:amd64 (3.10.0-2ubuntu1) ...
正在选中未选择的软件包 libcurl4-openssl-dev:amd64。准备解压 .../05-libcurl4-openssl-dev_7.81.0-1ubuntu1.10_amd64.deb  ...
正在解压 libcurl4-openssl-dev:amd64 (7.81.0-1ubuntu1.10) ...
正在选中未选择的软件包 xorg-sgml-doctools。准备解压 .../06-xorg-sgml-doctools_1%3a1.11-1.1_all.deb  ...
正在解压 xorg-sgml-doctools (1:1.11-1.1) ...
正在选中未选择的软件包 x11proto-dev。准备解压 .../07-x11proto-dev_2021.5-1_all.deb  ...
正在解压 x11proto-dev (2021.5-1) ...
正在选中未选择的软件包 libxau-dev:amd64。准备解压 .../08-libxau-dev_1%3a1.0.9-1build5_amd64.deb  ...
正在解压 libxau-dev:amd64 (1:1.0.9-1build5) ...
正在选中未选择的软件包 libxdmcp-dev:amd64。准备解压 .../09-libxdmcp-dev_1%3a1.1.3-0ubuntu5_amd64.deb  ...
正在解压 libxdmcp-dev:amd64 (1:1.1.3-0ubuntu5) ...
正在选中未选择的软件包 xtrans-dev。准备解压 .../10-xtrans-dev_1.4.0-1_all.deb  ...
正在解压 xtrans-dev (1.4.0-1) ...
正在选中未选择的软件包 libpthread-stubs0-dev:amd64。准备解压 .../11-libpthread-stubs0-dev_0.4-1build2_amd64.deb  ...
正在解压 libpthread-stubs0-dev:amd64 (0.4-1build2) ...
正在选中未选择的软件包 libxcb1-dev:amd64。准备解压 .../12-libxcb1-dev_1.14-3ubuntu3_amd64.deb  ...
正在解压 libxcb1-dev:amd64 (1.14-3ubuntu3) ...
正在选中未选择的软件包 libx11-dev:amd64。准备解压 .../13-libx11-dev_2%3a1.7.5-1_amd64.deb  ...
正在解压 libx11-dev:amd64 (2:1.7.5-1) ...
正在选中未选择的软件包 libglx-dev:amd64。准备解压 .../14-libglx-dev_1.4.0-1_amd64.deb  ...
正在解压 libglx-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libgl-dev:amd64。准备解压 .../15-libgl-dev_1.4.0-1_amd64.deb  ...
正在解压 libgl-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libegl-dev:amd64。准备解压 .../16-libegl-dev_1.4.0-1_amd64.deb  ...
正在解压 libegl-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libfftw3-quad3:amd64。准备解压 .../17-libfftw3-quad3_3.3.8-2ubuntu8_amd64.deb  ...
正在解压 libfftw3-quad3:amd64 (3.3.8-2ubuntu8) ...
正在选中未选择的软件包 libfftw3-bin。准备解压 .../18-libfftw3-bin_3.3.8-2ubuntu8_amd64.deb  ...
正在解压 libfftw3-bin (3.3.8-2ubuntu8) ...
正在选中未选择的软件包 libfftw3-dev:amd64。准备解压 .../19-libfftw3-dev_3.3.8-2ubuntu8_amd64.deb  ...
正在解压 libfftw3-dev:amd64 (3.3.8-2ubuntu8) ...
正在选中未选择的软件包 libgles1:amd64。准备解压 .../20-libgles1_1.4.0-1_amd64.deb  ...
正在解压 libgles1:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libgles-dev:amd64。准备解压 .../21-libgles-dev_1.4.0-1_amd64.deb  ...
正在解压 libgles-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libhdf5-cpp-103-1:amd64。准备解压 .../22-libhdf5-cpp-103-1_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 libhdf5-cpp-103-1:amd64 (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 libhdf5-fortran-102:amd64。准备解压 .../23-libhdf5-fortran-102_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 libhdf5-fortran-102:amd64 (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 libhdf5-hl-100:amd64。准备解压 .../24-libhdf5-hl-100_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 libhdf5-hl-100:amd64 (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 libhdf5-hl-fortran-100:amd64。准备解压 .../25-libhdf5-hl-fortran-100_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 libhdf5-hl-fortran-100:amd64 (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 libhdf5-hl-cpp-100:amd64。准备解压 .../26-libhdf5-hl-cpp-100_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 libhdf5-hl-cpp-100:amd64 (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 libjpeg-turbo8-dev:amd64。准备解压 .../27-libjpeg-turbo8-dev_2.1.5-2+22.04+jammy+release+build13_amd64.deb  ...
正在解压 libjpeg-turbo8-dev:amd64 (2.1.5-2+22.04+jammy+release+build13) ...
正在选中未选择的软件包 libjpeg8-dev:amd64。准备解压 .../28-libjpeg8-dev_8c-2ubuntu10_amd64.deb  ...
正在解压 libjpeg8-dev:amd64 (8c-2ubuntu10) ...
正在选中未选择的软件包 libjpeg-dev:amd64。准备解压 .../29-libjpeg-dev_8c-2ubuntu10_amd64.deb  ...
正在解压 libjpeg-dev:amd64 (8c-2ubuntu10) ...
正在选中未选择的软件包 libaec-dev:amd64。准备解压 .../30-libaec-dev_1.0.6-1_amd64.deb  ...
正在解压 libaec-dev:amd64 (1.0.6-1) ...
正在选中未选择的软件包 libssl-dev:amd64。准备解压 .../31-libssl-dev_3.0.2-0ubuntu1.10_amd64.deb  ...
正在解压 libssl-dev:amd64 (3.0.2-0ubuntu1.10) ...
正在选中未选择的软件包 libhdf5-dev。准备解压 .../32-libhdf5-dev_1.10.7+repack-4ubuntu2_amd64.deb  ...
正在解压 libhdf5-dev (1.10.7+repack-4ubuntu2) ...
正在选中未选择的软件包 liblapack-dev:amd64。准备解压 .../33-liblapack-dev_3.10.0-2ubuntu1_amd64.deb  ...
正在解压 liblapack-dev:amd64 (3.10.0-2ubuntu1) ...
正在选中未选择的软件包 libncurses-dev:amd64。准备解压 .../34-libncurses-dev_6.3-2ubuntu0.1_amd64.deb  ...
正在解压 libncurses-dev:amd64 (6.3-2ubuntu0.1) ...
正在选中未选择的软件包 libopengl-dev:amd64。准备解压 .../35-libopengl-dev_1.4.0-1_amd64.deb  ...
正在解压 libopengl-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libreadline-dev:amd64。准备解压 .../36-libreadline-dev_8.1.2-1_amd64.deb  ...
正在解压 libreadline-dev:amd64 (8.1.2-1) ...
正在选中未选择的软件包 libglvnd-core-dev:amd64。准备解压 .../37-libglvnd-core-dev_1.4.0-1_amd64.deb  ...
正在解压 libglvnd-core-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libglvnd-dev:amd64。准备解压 .../38-libglvnd-dev_1.4.0-1_amd64.deb  ...
正在解压 libglvnd-dev:amd64 (1.4.0-1) ...
正在选中未选择的软件包 libgl1-mesa-dev:amd64。准备解压 .../39-libgl1-mesa-dev_22.2.5-0ubuntu0.1~22.04.1_amd64.deb  ...
正在解压 libgl1-mesa-dev:amd64 (22.2.5-0ubuntu0.1~22.04.1) ...
正在选中未选择的软件包 octave-dev。准备解压 .../40-octave-dev_6.4.0-2_amd64.deb  ...
正在解压 octave-dev (6.4.0-2) ...
正在选中未选择的软件包 liboctave-dev。准备解压 .../41-liboctave-dev_6.4.0-2_all.deb  ...
正在解压 liboctave-dev (6.4.0-2) ...
正在设置 libjpeg-turbo8-dev:amd64 (2.1.5-2+22.04+jammy+release+build13) ...
正在设置 libncurses-dev:amd64 (6.3-2ubuntu0.1) ...
正在设置 libglvnd-core-dev:amd64 (1.4.0-1) ...
正在设置 hdf5-helpers (1.10.7+repack-4ubuntu2) ...
正在设置 libgfortran-11-dev:amd64 (11.3.0-1ubuntu1~22.04.1) ...
正在设置 libaec-dev:amd64 (1.0.6-1) ...
正在设置 libreadline-dev:amd64 (8.1.2-1) ...
正在设置 libpthread-stubs0-dev:amd64 (0.4-1build2) ...
正在设置 xtrans-dev (1.4.0-1) ...
正在设置 libcurl4-openssl-dev:amd64 (7.81.0-1ubuntu1.10) ...
正在设置 libgles1:amd64 (1.4.0-1) ...
正在设置 libfftw3-quad3:amd64 (3.3.8-2ubuntu8) ...
正在设置 libssl-dev:amd64 (3.0.2-0ubuntu1.10) ...
正在设置 libhdf5-fortran-102:amd64 (1.10.7+repack-4ubuntu2) ...
正在设置 gfortran-11 (11.3.0-1ubuntu1~22.04.1) ...
正在设置 libhdf5-cpp-103-1:amd64 (1.10.7+repack-4ubuntu2) ...
正在设置 xorg-sgml-doctools (1:1.11-1.1) ...
正在设置 libopengl-dev:amd64 (1.4.0-1) ...
正在设置 libjpeg8-dev:amd64 (8c-2ubuntu10) ...
正在设置 libblas-dev:amd64 (3.10.0-2ubuntu1) ...
update-alternatives: 使用 /usr/lib/x86_64-linux-gnu/blas/libblas.so 来在自动模式中提供 /usr/lib/x86_64-linux-gnu/libblas.so (libblas.so-x86_64-linux-gnu)
正在设置 libhdf5-hl-100:amd64 (1.10.7+repack-4ubuntu2) ...
正在设置 libfftw3-bin (3.3.8-2ubuntu8) ...
正在设置 libjpeg-dev:amd64 (8c-2ubuntu10) ...
正在设置 gfortran (4:11.2.0-1ubuntu1) ...
update-alternatives: 使用 /usr/bin/gfortran 来在自动模式中提供 /usr/bin/f95 (f95)
update-alternatives: 使用 /usr/bin/gfortran 来在自动模式中提供 /usr/bin/f77 (f77)
正在设置 libhdf5-hl-cpp-100:amd64 (1.10.7+repack-4ubuntu2) ...
正在设置 liblapack-dev:amd64 (3.10.0-2ubuntu1) ...
update-alternatives: 使用 /usr/lib/x86_64-linux-gnu/lapack/liblapack.so 来在自动模式中提供 /usr/lib/x86_64-linux-gnu/liblapack.so (liblapack.so-x86_64-linux-gnu)
正在设置 libhdf5-hl-fortran-100:amd64 (1.10.7+repack-4ubuntu2) ...
正在设置 libfftw3-dev:amd64 (3.3.8-2ubuntu8) ...
正在设置 libhdf5-dev (1.10.7+repack-4ubuntu2) ...
update-alternatives: 使用 /usr/lib/x86_64-linux-gnu/pkgconfig/hdf5-serial.pc 来在自动模式中提供 /usr/lib/x86_64-linux-gnu/pkgconfig/hdf5.pc (hdf5.pc)
正在处理用于 sgml-base (1.30) 的触发器 ...
正在处理用于 install-info (6.8-4build1) 的触发器 ...
正在设置 x11proto-dev (2021.5-1) ...
正在设置 libxau-dev:amd64 (1:1.0.9-1build5) ...
正在处理用于 libc-bin (2.35-0ubuntu3.1) 的触发器 ...
正在处理用于 man-db (2.10.2-1) 的触发器 ...
Not building database; man-db/auto-update is not 'true'.
正在设置 libxdmcp-dev:amd64 (1:1.1.3-0ubuntu5) ...
正在设置 libxcb1-dev:amd64 (1.14-3ubuntu3) ...
正在设置 libx11-dev:amd64 (2:1.7.5-1) ...
正在设置 libglx-dev:amd64 (1.4.0-1) ...
正在设置 libgl-dev:amd64 (1.4.0-1) ...
正在设置 libegl-dev:amd64 (1.4.0-1) ...
正在设置 octave-dev (6.4.0-2) ...
正在设置 libgles-dev:amd64 (1.4.0-1) ...
正在设置 libglvnd-dev:amd64 (1.4.0-1) ...
正在设置 liboctave-dev (6.4.0-2) ...
正在设置 libgl1-mesa-dev:amd64 (22.2.5-0ubuntu0.1~22.04.1) ...

五、再安装control包,下从官方下了control-3.6.0.tar.gz,为什么不在线装呢,懂得都懂,

pkg install control-3.6.0.tar.gz

一堆的提示信息:

octave:5> pkg install contr
contrast              control-3.6.0.tar.gz  
octave:5> pkg install control-3.6.0.tar.gz 
sltmp/TB01ZD.f:312:72: warning: type of ‘mb01pd’ does not match original declaration [-Wlto-type-mismatch]
sltmp/MB01PD.f:1:23: note: ‘mb01pd’ was previously declared here
sltmp/MB01PD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sltmp/SG03AD.f:512:72: warning: type of ‘dgges’ does not match original declaration [-Wlto-type-mismatch]
sltmp/AB09JV.f:691:72: note: type mismatch in parameter 4
sltmp/AB09JV.f:691:72: note: ‘dgges’ was previously declared here
sltmp/AB09JV.f:691:72: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sb10ad.cc:36:9: warning: type of ‘sb10ad_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (sb10ad, SB10AD)
      |         ^
sltmp/SB10AD.f:1:23: note: return value type mismatch
sltmp/SB10AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10AD.f:1:23: note: ‘sb10ad’ was previously declared here
sltmp/SB10AD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_tg01fd.cc:35:9: warning: type of ‘tg01fd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tg01fd, TG01FD)
      |         ^
sltmp/TG01FD.f:1:23: note: return value type mismatch
sltmp/TG01FD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TG01FD.f:1:23: note: ‘tg01fd’ was previously declared here
sl_ib01ad.cc:36:9: warning: type of ‘ib01ad_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (ib01ad, IB01AD)
      |         ^
sltmp/IB01AD.f:1:23: note: return value type mismatch
sltmp/IB01AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/IB01AD.f:1:23: note: ‘ib01ad’ was previously declared here
sl_ident.cc:51:9: warning: type of ‘ib01bd_’ does not match original declaration [-Wlto-type-mismatch]
   51 |     int F77_FUNC (ib01bd, IB01BD)
      |         ^
sltmp/IB01BD.f:1:23: note: return value type mismatch
sltmp/IB01BD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/IB01BD.f:1:23: note: ‘ib01bd’ was previously declared here
sltmp/IB01BD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_ib01cd.cc:36:9: warning: type of ‘ib01cd_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (ib01cd, IB01CD)
      |         ^
sltmp/IB01CD.f:1:23: note: return value type mismatch
sltmp/IB01CD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/IB01CD.f:1:23: note: ‘ib01cd’ was previously declared here
sl_sb10yd.cc:36:9: warning: type of ‘sb10yd_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (sb10yd, SB10YD)
      |         ^
sltmp/SB10YD.f:1:23: note: return value type mismatch
sltmp/SB10YD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10YD.f:1:23: note: ‘sb10yd’ was previously declared here
sltmp/SB10YD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sb16cd.cc:35:9: warning: type of ‘sb16cd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb16cd, SB16CD)
      |         ^
sltmp/SB16CD.f:1:23: note: return value type mismatch
sltmp/SB16CD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB16CD.f:1:23: note: ‘sb16cd’ was previously declared here
sl_sb16bd.cc:35:9: warning: type of ‘sb16bd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb16bd, SB16BD)
      |         ^
sltmp/SB16BD.f:1:23: note: return value type mismatch
sltmp/SB16BD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB16BD.f:1:23: note: ‘sb16bd’ was previously declared here
sl_sb16ad.cc:36:9: warning: type of ‘sb16ad_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (sb16ad, SB16AD)
      |         ^
sltmp/SB16AD.f:1:23: note: return value type mismatch
sltmp/SB16AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB16AD.f:1:23: note: ‘sb16ad’ was previously declared here
sl_ab09jd.cc:35:9: warning: type of ‘ab09jd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (ab09jd, AB09JD)
      |         ^
sltmp/AB09JD.f:1:23: note: return value type mismatch
sltmp/AB09JD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/AB09JD.f:1:23: note: ‘ab09jd’ was previously declared here
sl_ab09id.cc:36:9: warning: type of ‘ab09id_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (ab09id, AB09ID)
      |         ^
sltmp/AB09ID.f:1:23: note: return value type mismatch
sltmp/AB09ID.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/AB09ID.f:1:23: note: ‘ab09id’ was previously declared here
sl_ab09hd.cc:35:9: warning: type of ‘ab09hd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (ab09hd, AB09HD)
      |         ^
sltmp/AB09HD.f:1:23: note: return value type mismatch
sltmp/AB09HD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/AB09HD.f:1:23: note: ‘ab09hd’ was previously declared here
sltmp/AB09HD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_tb01ud.cc:35:9: warning: type of ‘tb01ud_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tb01ud, TB01UD)
      |         ^
sltmp/TB01UD.f:1:23: note: return value type mismatch
sltmp/TB01UD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TB01UD.f:1:23: note: ‘tb01ud’ was previously declared here
sl_td04ad.cc:38:9: warning: type of ‘td04ad_’ does not match original declaration [-Wlto-type-mismatch]
   38 |     int F77_FUNC (td04ad, TD04AD)
      |         ^
sltmp/TD04AD.f:1:23: note: return value type mismatch
sltmp/TD04AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TD04AD.f:1:23: note: ‘td04ad’ was previously declared here
sl_ab04md.cc:36:9: warning: type of ‘ab04md_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (ab04md, AB04MD)
      |         ^
sltmp/AB04MD.f:1:23: note: return value type mismatch
sltmp/AB04MD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/AB04MD.f:1:23: note: ‘ab04md’ was previously declared here
sl_tb04bd.cc:36:9: warning: type of ‘tb04bd_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (tb04bd, TB04BD)
      |         ^
sltmp/TB04BD.f:1:23: note: return value type mismatch
sltmp/TB04BD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TB04BD.f:1:23: note: ‘tb04bd’ was previously declared here
sl_sb10zd.cc:35:9: warning: type of ‘sb10zd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb10zd, SB10ZD)
      |         ^
sltmp/SB10ZD.f:1:23: note: return value type mismatch
sltmp/SB10ZD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10ZD.f:1:23: note: ‘sb10zd’ was previously declared here
sltmp/SB10ZD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sb10kd.cc:35:9: warning: type of ‘sb10kd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb10kd, SB10KD)
      |         ^
sltmp/SB10KD.f:1:23: note: return value type mismatch
sltmp/SB10KD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10KD.f:1:23: note: ‘sb10kd’ was previously declared here
sltmp/SB10KD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sb10id.cc:35:9: warning: type of ‘sb10id_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb10id, SB10ID)
      |         ^
sltmp/SB10ID.f:1:23: note: return value type mismatch
sltmp/SB10ID.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10ID.f:1:23: note: ‘sb10id’ was previously declared here
sltmp/SB10ID.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_tg01ad.cc:35:9: warning: type of ‘tg01ad_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tg01ad, TG01AD)
      |         ^
sltmp/TG01AD.f:1:23: note: return value type mismatch
sltmp/TG01AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TG01AD.f:1:23: note: ‘tg01ad’ was previously declared here
sl_tb01id.cc:35:9: warning: type of ‘tb01id_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tb01id, TB01ID)
      |         ^
sltmp/TB01ID.f:1:23: note: return value type mismatch
sltmp/TB01ID.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TB01ID.f:1:23: note: ‘tb01id’ was previously declared here
sl_sg02ad.cc:36:9: warning: type of ‘sg02ad_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (sg02ad, SG02AD)
      |         ^
sltmp/SG02AD.f:1:23: note: return value type mismatch
sltmp/SG02AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SG02AD.f:1:23: note: ‘sg02ad’ was previously declared here
sltmp/SG02AD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_tg01id.cc:35:9: warning: type of ‘tg01id_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tg01id, TG01ID)
      |         ^
sltmp/TG01ID.f:1:23: note: return value type mismatch
sltmp/TG01ID.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TG01ID.f:1:23: note: ‘tg01id’ was previously declared here
sl_tg01hd.cc:35:9: warning: type of ‘tg01hd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tg01hd, TG01HD)
      |         ^
sltmp/TG01HD.f:1:23: note: return value type mismatch
sltmp/TG01HD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TG01HD.f:1:23: note: ‘tg01hd’ was previously declared here
sl_tg01jd.cc:35:9: warning: type of ‘tg01jd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tg01jd, TG01JD)
      |         ^
sltmp/TG01JD.f:1:23: note: return value type mismatch
sltmp/TG01JD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TG01JD.f:1:23: note: ‘tg01jd’ was previously declared here
sl_ag08bd.cc:37:9: warning: type of ‘ag08bd_’ does not match original declaration [-Wlto-type-mismatch]
   37 |     int F77_FUNC (ag08bd, AG08BD)
      |         ^
sltmp/AG08BD.f:1:23: note: return value type mismatch
sltmp/AG08BD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/AG08BD.f:1:23: note: ‘ag08bd’ was previously declared here
sl_sg03bd.cc:35:9: warning: type of ‘sg03bd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sg03bd, SG03BD)
      |         ^
sltmp/SG03BD.f:1:23: note: return value type mismatch
sltmp/SG03BD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SG03BD.f:1:23: note: ‘sg03bd’ was previously declared here
sl_sb03od.cc:35:9: warning: type of ‘sb03od_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb03od, SB03OD)
      |         ^
sltmp/SB03OD.f:1:23: note: return value type mismatch
sltmp/SB03OD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB03OD.f:1:23: note: ‘sb03od’ was previously declared here
sl_tb01pd.cc:35:9: warning: type of ‘tb01pd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (tb01pd, TB01PD)
      |         ^
sltmp/TB01PD.f:1:23: note: return value type mismatch
sltmp/TB01PD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/TB01PD.f:1:23: note: ‘tb01pd’ was previously declared here
sl_ab01od.cc:35:9: warning: type of ‘ab01od_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (ab01od, AB01OD)
      |         ^
sltmp/AB01OD.f:1:23: note: return value type mismatch
sltmp/AB01OD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/AB01OD.f:1:23: note: ‘ab01od’ was previously declared here
sl_ab13ad.cc:35:9: warning: type of ‘ab13ad_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (ab13ad, AB13AD)
      |         ^
sltmp/AB13AD.f:1:38: note: return value type mismatch
sltmp/AB13AD.f:1:38: note: type ‘double’ should match type ‘int’
sltmp/AB13AD.f:1:38: note: ‘ab13ad’ was previously declared here
sltmp/AB13AD.f:1:38: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sb02od.cc:36:9: warning: type of ‘sb02od_’ does not match original declaration [-Wlto-type-mismatch]
   36 |     int F77_FUNC (sb02od, SB02OD)
      |         ^
sltmp/SB02OD.f:1:23: note: return value type mismatch
sltmp/SB02OD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB02OD.f:1:23: note: ‘sb02od’ was previously declared here
sltmp/SB02OD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sg03ad.cc:35:9: warning: type of ‘sg03ad_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sg03ad, SG03AD)
      |         ^
sltmp/SG03AD.f:1:23: note: return value type mismatch
sltmp/SG03AD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SG03AD.f:1:23: note: ‘sg03ad’ was previously declared here
sl_sb03md.cc:35:9: warning: type of ‘sb03md_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb03md, SB03MD)
      |         ^
sltmp/SB03MD.f:1:23: note: return value type mismatch
sltmp/SB03MD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB03MD.f:1:23: note: ‘sb03md’ was previously declared here
sl_sb10dd.cc:35:9: warning: type of ‘sb10dd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb10dd, SB10DD)
      |         ^
sltmp/SB10DD.f:1:23: note: return value type mismatch
sltmp/SB10DD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10DD.f:1:23: note: ‘sb10dd’ was previously declared here
sltmp/SB10DD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
sl_sb10fd.cc:35:9: warning: type of ‘sb10fd_’ does not match original declaration [-Wlto-type-mismatch]
   35 |     int F77_FUNC (sb10fd, SB10FD)
      |         ^
sltmp/SB10FD.f:1:23: note: return value type mismatch
sltmp/SB10FD.f:1:23: note: type ‘void’ should match type ‘int’
sltmp/SB10FD.f:1:23: note: ‘sb10fd’ was previously declared here
sltmp/SB10FD.f:1:23: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used

可能是我安装的是octave6.4.0.2吧,我记得manjaro下的octave8没有这么多问题啊。不过也算成功了吧。

六、导入安装的包:

pkg load control

七、运行程序:

subplotSam1 或者subplotSam1.m

八、结果如下: