ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] gcc & stl
@ 2005-05-30  8:56 Andrey Rybak
  2005-05-30  9:09 ` Шайхутдинов Дамир
  0 siblings, 1 reply; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30  8:56 UTC (permalink / raw)
  To: community

Hello, altLinux!
Подскажите, как с помощью gcc откомпилировать код с++, использующий stl.
Использую Сизиф.

Если взять простенький код (файл x.cpp), содержащий просто

#include <vector>
using namespace std;
int main()
{
    int a[4] = {10, 20, 30, 40};
   vector<int> v(a, a+4);
   return 0;
}

то gcc x.cpp говорит:

/home/andrey/tmp/ccMLeqL8.o(.text+0xc2): In function 
`__static_initialization_and_destruction_0(int, int)':
x.cpp: undefined reference to `std::ios_base::Init::Init[in-charge]()'
...
и т.д.

Подозреваю, что не знаю - какие ключи gcc использовать при компиляции - 
помогите пожалуйста.




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30  8:56 [Comm] gcc & stl Andrey Rybak
@ 2005-05-30  9:09 ` Шайхутдинов Дамир
  2005-05-30  9:15   ` Andrey Rybak
  0 siblings, 1 reply; 25+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-30  9:09 UTC (permalink / raw)
  To: community

30.05.05 в 12:56 Andrey Rybak в своём письме писал(а):

> Hello, altLinux!
> Подскажите, как с помощью gcc откомпилировать код с++, использующий stl.
> Использую Сизиф.

g++ x.cpp не помогает?


-- 
WBR,
Damir Shayhutdinov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30  9:09 ` Шайхутдинов Дамир
@ 2005-05-30  9:15   ` Andrey Rybak
  2005-05-30  9:24     ` Шайхутдинов Дамир
  0 siblings, 1 reply; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30  9:15 UTC (permalink / raw)
  To: community

Шайхутдинов Дамир wrote:

> 30.05.05 в 12:56 Andrey Rybak в своём письме писал(а):
>
>> Hello, altLinux!
>> Подскажите, как с помощью gcc откомпилировать код с++, использующий stl.
>> Использую Сизиф.
>
>
> g++ x.cpp не помогает?
>
>
Вот, блин, и помогло. А как все-таки, если явно использовать gcc,  
написать командную строку?


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30  9:15   ` Andrey Rybak
@ 2005-05-30  9:24     ` Шайхутдинов Дамир
  2005-05-30  9:25       ` Andrey Rybak
  0 siblings, 1 reply; 25+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-30  9:24 UTC (permalink / raw)
  To: community

30.05.05 в 13:15 Andrey Rybak в своём письме писал(а):

> Шайхутдинов Дамир wrote:
>
>> 30.05.05 в 12:56 Andrey Rybak в своём письме писал(а):
>>
>>> Hello, altLinux!
>>> Подскажите, как с помощью gcc откомпилировать код с++, использующий  
>>> stl.
>>> Использую Сизиф.
>>
>> g++ x.cpp не помогает?
>>
> Вот, блин, и помогло. А как все-таки, если явно использовать gcc,   
> написать командную строку?

gcc x.cpp -lstdc++

Но гораздо правильнее пользоваться g++.

-- 
WBR,
Damir Shayhutdinov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30  9:24     ` Шайхутдинов Дамир
@ 2005-05-30  9:25       ` Andrey Rybak
  2005-05-30 10:19         ` Alexey Rusakov
  2005-05-30 10:29         ` Шайхутдинов Дамир
  0 siblings, 2 replies; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30  9:25 UTC (permalink / raw)
  To: community


>
> gcc x.cpp -lstdc++
>
> Но гораздо правильнее пользоваться g++.
>
По-че-му? (Извиняюсь за дотошность)


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30  9:25       ` Andrey Rybak
@ 2005-05-30 10:19         ` Alexey Rusakov
  2005-05-30 10:27           ` Andrey Rybak
  2005-05-30 10:29         ` Шайхутдинов Дамир
  1 sibling, 1 reply; 25+ messages in thread
From: Alexey Rusakov @ 2005-05-30 10:19 UTC (permalink / raw)
  To: community

Andrey Rybak wrote:

>>gcc x.cpp -lstdc++
>>
>>Но гораздо правильнее пользоваться g++.
>>
>По-че-му? (Извиняюсь за дотошность)
>
Потому что C и C++ - два РАЗНЫХ языка. gcc - компилятор C. g++ - 
компилятор C++. То, что gcc знает про C++, считайте необязательной фичей.

-- 
  Alexey "Ktirf" Rusakov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:19         ` Alexey Rusakov
@ 2005-05-30 10:27           ` Andrey Rybak
  2005-05-30 10:59             ` Alexey Rusakov
  0 siblings, 1 reply; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30 10:27 UTC (permalink / raw)
  To: community


>  gcc - компилятор C.

Нет. Не только С

> g++ - компилятор C++. То, что gcc знает про C++, считайте 
> необязательной фичей.
>
Он не только знает про С++ но и компиллирует на С++.
Я - не профи, но что gcc знает про С++, считать "необязательной фичей" 
не могу:
ls -al /usr/bin/g++
lrwxrwxrwx  1 root root 3 Фев  7 11:28 /usr/bin/g++ -> gcc


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30  9:25       ` Andrey Rybak
  2005-05-30 10:19         ` Alexey Rusakov
@ 2005-05-30 10:29         ` Шайхутдинов Дамир
  2005-05-30 10:35           ` Andrey Rybak
  2005-05-30 11:35           ` Boldin Pavel
  1 sibling, 2 replies; 25+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-30 10:29 UTC (permalink / raw)
  To: community

30.05.05 в 13:25 Andrey Rybak в своём письме писал(а):

>
>>
>> gcc x.cpp -lstdc++
>>
>> Но гораздо правильнее пользоваться g++.
>>
> По-че-му? (Извиняюсь за дотошность)

Насколько я понял из курения мануала по gcc (info gcc, если заинтересует)
gcc -lstdc++ сначала перегоняет C++ код в C, затем компилирует  
компилятором языка C, получается объектный код (к нему потом  
прилинковывает библиотечки приплюснутые) - то есть делает лишнее  
преобразование C++->C.

g++ компилирует сразу из C++ в объектный код - как следствие, программа  
получается более оптимизированной.

-- 
WBR,
Damir Shayhutdinov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:29         ` Шайхутдинов Дамир
@ 2005-05-30 10:35           ` Andrey Rybak
  2005-05-30 10:51             ` Alexey I. Froloff
                               ` (4 more replies)
  2005-05-30 11:35           ` Boldin Pavel
  1 sibling, 5 replies; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30 10:35 UTC (permalink / raw)
  To: community

Шайхутдинов Дамир wrote:

> 30.05.05 в 13:25 Andrey Rybak в своём письме писал(а):
>
>
> Насколько я понял из курения мануала по gcc (info gcc, если заинтересует)
> gcc -lstdc++ сначала перегоняет C++ код в C, затем компилирует  
> компилятором языка C, получается объектный код (к нему потом  
> прилинковывает библиотечки приплюснутые) - то есть делает лишнее  
> преобразование C++->C.
>
> g++ компилирует сразу из C++ в объектный код - как следствие, 
> программа  получается более оптимизированной.
>
g++ - это всего лишь ссылка на gcc. Как она избавляется от лишнего 
преобразования C++->C ?



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:35           ` Andrey Rybak
@ 2005-05-30 10:51             ` Alexey I. Froloff
  2005-05-30 10:56               ` Andrey Rybak
  2005-05-30 11:05               ` Serge Polkovnikov
  2005-05-30 10:53             ` Шайхутдинов Дамир
                               ` (3 subsequent siblings)
  4 siblings, 2 replies; 25+ messages in thread
From: Alexey I. Froloff @ 2005-05-30 10:51 UTC (permalink / raw)
  To: ALT Linux Community

[-- Attachment #1: Type: text/plain, Size: 787 bytes --]

* Andrey Rybak <ra@> [050530 14:42]:
> > g++ компилирует сразу из C++ в объектный код - как следствие, 
> > программа  получается более оптимизированной.
> g++ - это всего лишь ссылка на gcc. Как она избавляется от лишнего 
> преобразования C++->C ?
$ ls -lL /usr/bin/gcc-3.3 
-rwxr-xr-x  2 root root 81200 Jan 14 20:11 /usr/bin/gcc-3.3

Неужели вы думаете, что компилятор C может занимать 80K?

P.S. ls -l /usr/lib/gcc-lib/i586-alt-linux/3.3.3/

P.P.S. Нет у меня тут gcc 3.4, пути немного другие, но смысл тот
же.

-- 
Regards, Sir Raorn.
-------------------
ALT QA Team Robot, который осуществлял пересборку, просил передать, что
если его запись в changelog'ах пакетов со временем будет забыта, то он
расстраиваться по этому поводу не станет.
		-- ldv in devel@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:35           ` Andrey Rybak
  2005-05-30 10:51             ` Alexey I. Froloff
@ 2005-05-30 10:53             ` Шайхутдинов Дамир
  2005-05-30 11:00               ` Andrey Rybak
  2005-05-30 11:04             ` Sergey Lebedev
                               ` (2 subsequent siblings)
  4 siblings, 1 reply; 25+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-30 10:53 UTC (permalink / raw)
  To: community

30.05.05 в 14:35 Andrey Rybak в своём письме писал(а):

> Шайхутдинов Дамир wrote:
>
>> 30.05.05 в 13:25 Andrey Rybak в своём письме писал(а):
>>
>>
>> Насколько я понял из курения мануала по gcc (info gcc, если  
>> заинтересует)
>> gcc -lstdc++ сначала перегоняет C++ код в C, затем компилирует   
>> компилятором языка C, получается объектный код (к нему потом   
>> прилинковывает библиотечки приплюснутые) - то есть делает лишнее   
>> преобразование C++->C.
>>
>> g++ компилирует сразу из C++ в объектный код - как следствие,  
>> программа  получается более оптимизированной.
>>
> g++ - это всего лишь ссылка на gcc. Как она избавляется от лишнего  
> преобразования C++->C ?

У меня вовсе не ссылка (RH9). Альта под рукой сейчас нет.

ls -l /usr/bin/g++
-rwxr-xr-x    4 root     root        81348 Фев 25  2003 /usr/bin/g++

Что у тебя говорит
rpm -qa | grep gcc
?









-- 
WBR,
Damir Shayhutdinov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:51             ` Alexey I. Froloff
@ 2005-05-30 10:56               ` Andrey Rybak
  2005-05-30 14:25                 ` Andrey Rahmatullin
  2005-05-30 11:05               ` Serge Polkovnikov
  1 sibling, 1 reply; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30 10:56 UTC (permalink / raw)
  To: community


>
>Неужели вы думаете, что компилятор C может занимать 80K?
>  
>
Это много или мало? ;-)

>P.S. ls -l /usr/lib/gcc-lib/i586-alt-linux/3.3.3/
>
>P.P.S. Нет у меня тут gcc 3.4, пути немного другие, но смысл тот
>же.
>  
>
Уточните Вашу реплику - какой тотже смысл?



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:27           ` Andrey Rybak
@ 2005-05-30 10:59             ` Alexey Rusakov
  0 siblings, 0 replies; 25+ messages in thread
From: Alexey Rusakov @ 2005-05-30 10:59 UTC (permalink / raw)
  To: community

Andrey Rybak wrote:

>> gcc - компилятор C.
>>    
>>
>
>Нет. Не только С
>
>  
>
>>g++ - компилятор C++. То, что gcc знает про C++, считайте 
>>необязательной фичей.
>>    
>>
>Он не только знает про С++ но и компиллирует на С++.
>Я - не профи, но что gcc знает про С++, считать "необязательной фичей" 
>не могу:
>ls -al /usr/bin/g++
>lrwxrwxrwx  1 root root 3 Фев  7 11:28 /usr/bin/g++ -> gcc
>  
>
Если вы будете компилировать программы на C++ при помощи gcc, вам 
регулярно будут говорить об этом. Потому что это возможный источник граблей.
При запуске gcc анализирует, под каким именем он был запущен, и в 
зависимости от этого использует разные наборы ключей по умолчанию 
(-lstdc++ - это только один из них). Вам, и любому разработчику, об этих 
ключах помнить без надобности. Если вы будете делать наоборот, ключи 
будут другие и не одна так другая программа у вас попросту не соберётся. 
С чего, собственно, вы и начали тред.

-- 
  Alexey "Ktirf" Rusakov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:53             ` Шайхутдинов Дамир
@ 2005-05-30 11:00               ` Andrey Rybak
  2005-05-30 11:41                 ` Шайхутдинов Дамир
  0 siblings, 1 reply; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30 11:00 UTC (permalink / raw)
  To: community


> У меня вовсе не ссылка (RH9). Альта под рукой сейчас нет.
>
> ls -l /usr/bin/g++
> -rwxr-xr-x    4 root     root        81348 Фев 25  2003 /usr/bin/g++
>
> Что у тебя говорит
> rpm -qa | grep gcc
> ?
>
>
gcc3.3-c++-3.3.3-alt7
gcc-c++-common-1.4.6-alt1
gcc3.3-g77-3.3.3-alt7
libgcc3.4-3.4.3-alt4
gcc-g77-common-1.4.6-alt1
gcc-common-1.4.6-alt1
gcc3.3-3.3.3-alt7

>
>
>
>
>
>



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:35           ` Andrey Rybak
  2005-05-30 10:51             ` Alexey I. Froloff
  2005-05-30 10:53             ` Шайхутдинов Дамир
@ 2005-05-30 11:04             ` Sergey Lebedev
  2005-05-30 11:12               ` Andrey Rybak
  2005-05-30 11:13             ` Vasya Makarov
  2005-05-30 11:20             ` Andrew Borodin
  4 siblings, 1 reply; 25+ messages in thread
From: Sergey Lebedev @ 2005-05-30 11:04 UTC (permalink / raw)
  To: community

On 30 May, Andrey Rybak wrote:
> Шайхутдинов Дамир wrote:
> 
> >30.05.05 в 13:25 Andrey Rybak в своём письме писал(а):
> >
> >
> >Насколько я понял из курения мануала по gcc (info gcc, если заинтересует)
> >gcc -lstdc++ сначала перегоняет C++ код в C, затем компилирует  
> >компилятором языка C, получается объектный код (к нему потом  
> >прилинковывает библиотечки приплюснутые) - то есть делает лишнее  
> >преобразование C++->C.
> >
> >g++ компилирует сразу из C++ в объектный код - как следствие, 
> >программа  получается более оптимизированной.
> >
> g++ - это всего лишь ссылка на gcc. Как она избавляется от лишнего 
> преобразования C++->C ?

Нуууууууууу.
А если полностью заглядеть, всю цепочку symlink'ов?

-=(barabashka)=- [linuxcomp:~] ls -al `which gcc`
lrwxrwxrwx  1 root root 30 Апр  7 14:50 /usr/bin/gcc ->/etc/alternatives/|usr|bin|gcc

-=(barabashka)=- [linuxcomp:~] ls -al /etc/alternatives/\|usr\|bin\|gcc
lrwxrwxrwx  1 root root 20 Апр  7 14:50 
/etc/alternatives/|usr|bin|gcc -> /usr/bin/gcc_wrapper




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:51             ` Alexey I. Froloff
  2005-05-30 10:56               ` Andrey Rybak
@ 2005-05-30 11:05               ` Serge Polkovnikov
  2005-05-30 12:27                 ` Vasya Makarov
  2005-05-30 14:53                 ` Andrey Rahmatullin
  1 sibling, 2 replies; 25+ messages in thread
From: Serge Polkovnikov @ 2005-05-30 11:05 UTC (permalink / raw)
  To: ALT Linux Community

понеділок 30 травень 2005 13:51, Alexey I. Froloff Ви написали:
>  > g++ компилирует сразу из C++ в объектный код - как следствие,
>  >
> > > программа  получается более оптимизированной.
> >
> > g++ - это всего лишь ссылка на gcc. Как она избавляется от лишнего
> > преобразования C++->C ?
>
> $ ls -lL /usr/bin/gcc-3.3
> -rwxr-xr-x  2 root root 81200 Jan 14 20:11 /usr/bin/gcc-3.3
>
> Неужели вы думаете, что компилятор C может занимать 80K?
>
> P.S. ls -l /usr/lib/gcc-lib/i586-alt-linux/3.3.3/
>
> P.P.S. Нет у меня тут gcc 3.4, пути немного другие, но смысл тот
> же.
Только что откомпилировал свою прогу и с gcc -lstdc++ и с g++ - размер один в 
один. Думаю код тоже. 

-- 
С уважением,
Сергей Полковников


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 11:04             ` Sergey Lebedev
@ 2005-05-30 11:12               ` Andrey Rybak
  0 siblings, 0 replies; 25+ messages in thread
From: Andrey Rybak @ 2005-05-30 11:12 UTC (permalink / raw)
  To: community


>А если полностью заглядеть, всю цепочку symlink'ов?
>  
>
Да уже заглянул :-) . А вот мана на этот враппер нету :'( .

>-=(barabashka)=- [linuxcomp:~] ls -al `which gcc`
>lrwxrwxrwx  1 root root 30 Апр  7 14:50 /usr/bin/gcc ->/etc/alternatives/|usr|bin|gcc
>
>-=(barabashka)=- [linuxcomp:~] ls -al /etc/alternatives/\|usr\|bin\|gcc
>lrwxrwxrwx  1 root root 20 Апр  7 14:50 
>/etc/alternatives/|usr|bin|gcc -> /usr/bin/gcc_wrapper
>
>
>  
>
Всем спасибо за обсуждение.


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:35           ` Andrey Rybak
                               ` (2 preceding siblings ...)
  2005-05-30 11:04             ` Sergey Lebedev
@ 2005-05-30 11:13             ` Vasya Makarov
  2005-05-30 11:20             ` Andrew Borodin
  4 siblings, 0 replies; 25+ messages in thread
From: Vasya Makarov @ 2005-05-30 11:13 UTC (permalink / raw)
  To: community

Andrey Rybak пишет:
> Шайхутдинов Дамир wrote:
> 
>> 30.05.05 в 13:25 Andrey Rybak в своём письме писал(а):
>>
>>
>> Насколько я понял из курения мануала по gcc (info gcc, если заинтересует)
>> gcc -lstdc++ сначала перегоняет C++ код в C, затем компилирует  
>> компилятором языка C, получается объектный код (к нему потом  
>> прилинковывает библиотечки приплюснутые) - то есть делает лишнее  
>> преобразование C++->C.
>>
>> g++ компилирует сразу из C++ в объектный код - как следствие, 
>> программа  получается более оптимизированной.
>>
> g++ - это всего лишь ссылка на gcc. Как она избавляется от лишнего 
> преобразования C++->C ?
> 
> 
Одна и таже программа вызываемая по разным именам может делать 
_совершенно_ разные весчи.
-- 
Regards,
Vasya


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:35           ` Andrey Rybak
                               ` (3 preceding siblings ...)
  2005-05-30 11:13             ` Vasya Makarov
@ 2005-05-30 11:20             ` Andrew Borodin
  4 siblings, 0 replies; 25+ messages in thread
From: Andrew Borodin @ 2005-05-30 11:20 UTC (permalink / raw)
  To: community

On Mon, May 30, 2005 at 01:35:35PM +0300, Andrey Rybak wrote:
> g++ - это всего лишь ссылка на gcc. Как она избавляется от 
> лишнего преобразования C++->C ?

Сылка -- это другое имя файла. А в программе всегда есть 
возможность узнать, с каким именем она запущена. И в зависимости 
от этого имени вести себя тем или иным образом.

-- 

С уважением,
А. Бородин.


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:29         ` Шайхутдинов Дамир
  2005-05-30 10:35           ` Andrey Rybak
@ 2005-05-30 11:35           ` Boldin Pavel
  1 sibling, 0 replies; 25+ messages in thread
From: Boldin Pavel @ 2005-05-30 11:35 UTC (permalink / raw)
  To: community

Шайхутдинов Дамир пишет:

> 30.05.05 в 13:25 Andrey Rybak в своём письме писал(а):
>
>>
>>>
>>> gcc x.cpp -lstdc++
>>>
>>> Но гораздо правильнее пользоваться g++.
>>>
>> По-че-му? (Извиняюсь за дотошность)
>
>
> Насколько я понял из курения мануала по gcc (info gcc, если заинтересует)
> gcc -lstdc++ сначала перегоняет C++ код в C, затем компилирует  
> компилятором языка C, получается объектный код (к нему потом  
> прилинковывает библиотечки приплюснутые) - то есть делает лишнее  
> преобразование C++->C.
>
> g++ компилирует сразу из C++ в объектный код - как следствие, 
> программа  получается более оптимизированной.
>
gcc и g++ - конвееры, они вызывают много других программ.

-- 

Boldin Pavel aka davinchi. mail-to: ldavinchi /at\ inbox _dot_ ru
    ZU - Zagovor Unixoidov. SSAU 303.




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 11:00               ` Andrey Rybak
@ 2005-05-30 11:41                 ` Шайхутдинов Дамир
  0 siblings, 0 replies; 25+ messages in thread
From: Шайхутдинов Дамир @ 2005-05-30 11:41 UTC (permalink / raw)
  To: community

30.05.05 в 15:00 Andrey Rybak в своём письме писал(а):

>> Что у тебя говорит
>> rpm -qa | grep gcc
>> ?
>>
>>
> gcc3.3-c++-3.3.3-alt7
> gcc-c++-common-1.4.6-alt1
> gcc3.3-g77-3.3.3-alt7
> libgcc3.4-3.4.3-alt4
> gcc-g77-common-1.4.6-alt1
> gcc-common-1.4.6-alt1
> gcc3.3-3.3.3-alt7

Тогда просто сравни
rpm -ql gcc3.3
и
rpm -ql gcc3.3-c++

И увидишь чем просто gcc отличается от gcc с поддержкой c++ наличием  
специального файла cc1plus в /usr/lib/gcc-lib/i586-alt-linux (путь по  
памяти), у меня в RH9 лежит по пути /usr/lib/gcc-lib/i386-redhat-linux

Этот файл отвечает за компиляцию C++ кода, и вызывается gcc при компиляции  
cpp файлов.
Ему для работы требуются некоторые настройки (в том числе указание  
библиотек и ключей), которые автоматически указывает g++, но не указывает  
gcc.
Поведение программы, которую вызывают через симлинк может сильно  
отличаться от обычного (хорошая иллюстрация этого - busybox).

Поэтому для полной уверенности в правильности скомпилированного плюснутого  
кода используй g++.

-- 
WBR,
Damir Shayhutdinov


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 11:05               ` Serge Polkovnikov
@ 2005-05-30 12:27                 ` Vasya Makarov
  2005-05-30 14:53                 ` Andrey Rahmatullin
  1 sibling, 0 replies; 25+ messages in thread
From: Vasya Makarov @ 2005-05-30 12:27 UTC (permalink / raw)
  To: community

Serge Polkovnikov пишет:
> ...
> Только что откомпилировал свою прогу и с gcc -lstdc++ и с g++ - размер один в 
> один. Думаю код тоже. 
> 
> 
diff подтверждает?
-- 
Regards,
Vasya


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 10:56               ` Andrey Rybak
@ 2005-05-30 14:25                 ` Andrey Rahmatullin
  0 siblings, 0 replies; 25+ messages in thread
From: Andrey Rahmatullin @ 2005-05-30 14:25 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 479 bytes --]

On Mon, May 30, 2005 at 01:56:30PM +0300, Andrey Rybak wrote:
> >Неужели вы думаете, что компилятор C может занимать 80K?
> Это много или мало? ;-)
Мало.
> >P.P.S. Нет у меня тут gcc 3.4, пути немного другие, но смысл тот
> >же.
> Уточните Вашу реплику - какой тотже смысл?
Смысл тот же для 3.4 и 3.4.

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

> В системе установлен kudzu ?
Конечно да. Какое хайку без кудзы? :)
		-- avp in sisyphus@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 11:05               ` Serge Polkovnikov
  2005-05-30 12:27                 ` Vasya Makarov
@ 2005-05-30 14:53                 ` Andrey Rahmatullin
  2005-05-30 15:17                   ` Andrey Rahmatullin
  1 sibling, 1 reply; 25+ messages in thread
From: Andrey Rahmatullin @ 2005-05-30 14:53 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 722 bytes --]

On Mon, May 30, 2005 at 02:05:02PM +0300, Serge Polkovnikov wrote:
> Только что откомпилировал свою прогу и с gcc -lstdc++ и с g++ - размер один в 
> один. Думаю код тоже. 
wrar@wrars-comp ~ $ gcc 1.cpp -lstdc++ -o gcc.out
wrar@wrars-comp ~ $ g++ 1.cpp  -o g++.out
wrar@wrars-comp ~ $ l *.out
-rwxr-xr-x  1 wrar wrar 8208 Май 30 20:51 g++.out
-rwxr-xr-x  1 wrar wrar 8160 Май 30 20:50 gcc.out
wrar@wrars-comp ~ $ <1.cpp
#include <iostream>
int main()
{
  std::cout << "Hello, world";
  return 0;
}


-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

>ЗЫ. Я ещё подумал: если джава-приложения не собираются в хэшере, то как
>в Сизиф попал OO.o?
С трудом :)
		-- jaa in sisyphus@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [Comm] gcc & stl
  2005-05-30 14:53                 ` Andrey Rahmatullin
@ 2005-05-30 15:17                   ` Andrey Rahmatullin
  0 siblings, 0 replies; 25+ messages in thread
From: Andrey Rahmatullin @ 2005-05-30 15:17 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 852 bytes --]

On Mon, May 30, 2005 at 08:53:44PM +0600, Andrey Rahmatullin wrote:
> -rwxr-xr-x  1 wrar wrar 8208 Май 30 20:51 g++.out
> -rwxr-xr-x  1 wrar wrar 8160 Май 30 20:50 gcc.out
Код там, кстати, на 1-й взгляд действительно одинаковый (за искл.
адресов). А вот это уже интереснее:
wrar@wrars-comp ~ $ libs gcc.out
libstdc++.so.6
libc.so.6
wrar@wrars-comp ~ $ libs g++.out
libstdc++.so.6
libm.so.6
libgcc_s.so.1
libc.so.6
wrar@wrars-comp ~ $ which libs
libs () {
        objdump -p $1 | grep NEEDED | awk '{print $2}'
}


-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

> А если я опакечу xephem (планетарий) и к нему звездный каталог
> xephem-usno?  Каталог 6Гбайт (в архиве наверно 2 Гб будет).
> Можно в Сизиф его?  Шутка. :-))))
Действительно шутка - incoming ведь тоже квотирован. :)
		-- ldv in sisyphus@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2005-05-30 15:17 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-05-30  8:56 [Comm] gcc & stl Andrey Rybak
2005-05-30  9:09 ` Шайхутдинов Дамир
2005-05-30  9:15   ` Andrey Rybak
2005-05-30  9:24     ` Шайхутдинов Дамир
2005-05-30  9:25       ` Andrey Rybak
2005-05-30 10:19         ` Alexey Rusakov
2005-05-30 10:27           ` Andrey Rybak
2005-05-30 10:59             ` Alexey Rusakov
2005-05-30 10:29         ` Шайхутдинов Дамир
2005-05-30 10:35           ` Andrey Rybak
2005-05-30 10:51             ` Alexey I. Froloff
2005-05-30 10:56               ` Andrey Rybak
2005-05-30 14:25                 ` Andrey Rahmatullin
2005-05-30 11:05               ` Serge Polkovnikov
2005-05-30 12:27                 ` Vasya Makarov
2005-05-30 14:53                 ` Andrey Rahmatullin
2005-05-30 15:17                   ` Andrey Rahmatullin
2005-05-30 10:53             ` Шайхутдинов Дамир
2005-05-30 11:00               ` Andrey Rybak
2005-05-30 11:41                 ` Шайхутдинов Дамир
2005-05-30 11:04             ` Sergey Lebedev
2005-05-30 11:12               ` Andrey Rybak
2005-05-30 11:13             ` Vasya Makarov
2005-05-30 11:20             ` Andrew Borodin
2005-05-30 11:35           ` Boldin Pavel

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git