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

Re: Multiple definition error with some compilers



 Доброе утро.

> > > > ===
> > > > 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 с известного сидюка, вышедшего в продажу. Ряд пакетов проапгрейжен. Зависимости в порядке.

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

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

                   Ingvarr.



Reply to: