Как установить gcc-4.1 на Ubuntu 10.10 - PullRequest
1 голос
/ 12 ноября 2010

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

2) Теперь у меня есть только gcc-4.1-baseи -multilib установлен.При компиляции mex-файла:

/usr/bin/ld: cannot find -lstdc++
collect2: ld returned 1 exit status

Что-то не так с libstdc ++ 6-4.1-dev.Так что легче исправить, чем компилировать самому?

Спасибо

Ответы [ 2 ]

2 голосов
/ 15 ноября 2011

Я предполагаю, что вы используете версию 64 для Ubuntu, и ваша версия Matlab также 64-битная. Есть два способа, которые могут решить вашу проблему, упомянутую в 2):

  1. Откройте файл mexopts.sh (находится в каталоге yourhome / .matlab / MATLAB VERSION /), и комментарий CLIBS = "CLIBS -lstdc ++" для glnxa64.
  2. Проверьте, есть ли libstdc ++. Так. существует в каталоге / usr / lib. Если нет, создайте символическую ссылку /usr/lib/libstdc++.so на MATLABROOT / sys / os / glnxa64 / libstdc ++. So.6.0.xx (xx - это число, которое может изменяться в зависимости от версии matlab)
0 голосов
/ 12 ноября 2010

Я бы сам не скомпилировал. Я помню, сколько времени занимает (это одна из самых длинных частей построения любой системы Linux) ...

Итак, я полагаю, у вас сейчас нет полностью функционального GCC? Я получил это установить из apt-get в Ubuntu 10.10 x64 ...

Хорошо, значит, у вас нарушены зависимости, а? Я знаю, что это не элегантно, но попробуйте загрузить файлы deb вручную (http://packages.ubuntu.com/maverick/gcc-4.1 для 10.10 или http://packages.ubuntu.com/lucid/gcc-4.1 для 10.04 ), сохраните их в папку, перейдите в папку с терминала и запустите ее для каждого пакета:

dpkg -i package.deb

Есть более элегантный способ сделать это, но я просто не знаю ...

...