[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Multiple definition error with some compilers



Ingvarr Zhmakin wrote:

>  Доброе утро.
>
> > > > > ===
> > > > > virssmaa.o: In function `std::string::_Rep::_M_refdata()':
> > > > > virssmaa.o(.text+0x3680): multiple definition of `std::string::_Rep::_M_refdata()'
> > > > > BasicDomain.o(.text+0x1900): first defined here
> > > > > collect2: ld returned 1 exit status
> > > > > ===
> > > > > Замечено: оба цепепешника, из которых эти объектники сделаны, включают
> > > > > <string>.
> > > Только вот насчет того, что это решается апгрейдом...
> > > Я ж говорю -- с Каи (вылизанной версией, с которой все их примеры компилировались на ура) было похожее.
> > > Это какое-то глобальное явление -- невосприятие линкером объектников...
> > Хм, странно у меня с этой версией все ОК линковалось. Я надеюсь, ты пользуешься веткой woody, раз у тебя
> > такие версии gcc и STL?
> У меня potato с известного сидюка, вышедшего в продажу. Ряд пакетов проапгрейжен. Зависимости в порядке.
>

Ты ведь в курсе, что зависимости у разных дистрибутов Дебиан разные? К тому же, "зависимости в порядке" не означает "все работает нормально". В таких случаях часто помогает
апгрейд/инсталл некоторых "лишних" пакетов, которые выбираются согласно здравому смыслу, например (то_что_уже_стоит)-dev, (то_что_уже_стоит)-base. C jed, например, была у меня такая
ситуация.

> > А может тебе binutils проапгрейдить?
> Попробую...

Там ведь, кстати, линкер и содержится.

> > Можно попробовать проапгрейдить GCC до версии pre010801 из нестабильной ветки (при помощи wget+dpkg (или
> > можно еще как-то не добавляя нестабильную ветку в apt-sources?)). Вообще, та версия которая у тебя
> > (pre010403) у меня половину исходников не компилировала, которые 2.95 переваривал (internal compiler error
> > был). А версия pre010727 вообще не работала. А вот pre010801 (вчера поставил) вроде получше будет.
> Я вообще стал пробовать 3.0, потому что 2.95 стал зависать на компиляции с оптимизацией. То есть -- жрет мозги и жрет, пока меня не задалбывает и я его не убиваю. Ждать пробовал долго.

А какой у тебя пакет с gcc-2.95?




Reply to: