如何安装 gcc-4.1?

5 10.10 gcc

1) 我需要 gcc-4.1 来使用 Matlab mex,但我无法使用 apt-get install 完全安装它:

The following packages have unmet dependencies:
libstdc++6-4.1-dev : Depends: gcc-4.1-base (= 4.1.2-27ubuntu1) but 4.1.2-29ubuntu1 is     to be installed
Depends: g++-4.1 (= 4.1.2-27ubuntu1) but it is not going to be installed
E: Broken packages
Run Code Online (Sandbox Code Playgroud)

2)我现在只安装了 gcc-4.1-base 和 -multilib。编译 mex 文件时:

/usr/bin/ld: cannot find -lstdc++
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

libstdc++6-4.1-dev 有问题。所以我去http://packages.ubuntu.com/maverick/gcc-4.1下载 libstdc++6-4.1-dev_4.1.2-27ubuntu1_i386.deb。但是不能安装:

Dependency is not satisfiable: g++-4.1 (= 4.1.2-21ubuntu1)

谢谢

Rob*_*ans 1

不确定如果您覆盖依赖项并推出自己的 deb,它是否能正常运行,但值得一试。

apt-get build-dep deb-name-here  
apt-get source deb-name-here  
cd package-dir/deb  
nano control 
Run Code Online (Sandbox Code Playgroud)

并将依赖项更改为 > 而不是 =

cd ..  
debuild  
Run Code Online (Sandbox Code Playgroud)

它可能会起作用...

另一种选择是使用更新替代方案来回滚您的版本(更安全),
另一种选择是修改
三个构建中的两个构建所需的依赖项中的版本号,但这可能会破坏您的包管理。

最后也是最好的选择是从源代码编译~/src并安装到/opt您需要的版本,并告诉安装程序在那里查找依赖项


msw*_*msw 1

Ubuntu 通过确保发行版在其库中保持一致来努力避免旧的“依赖地狱”。通过使用落后几年的商业软件 (Matlab),您得到的 MEX 系统尚未为 Maverick 做好准备。

正如aking1012建议的那样,您必须对版本进行一些重大回滚。或许可以说,你不可能一边享受 Ubuntu 的便利,一边又吃老式的 MEX 东西(或者不费点功夫就不行)。