* [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 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 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: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: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 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: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 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 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: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 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 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 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
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