И снова C/C++
От: Xhunter  
Дата: 07.09.04 21:31
Оценка: :))) :))) :)))
Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?

08.09.04 12:15: Перенесено из 'Философия программирования'
Re: И снова C/C++
От: AndreyFedotov Россия  
Дата: 08.09.04 02:46
Оценка:
Здравствуйте, Xhunter, Вы писали:

X>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?


.c для Си и .cpp для C++
Но не лучше ли было об этом спрашивать в форуме по C/С++? А то такими темпами скоро и флаги форматирования printf'а станут важнейшим вопросом Философии программирования...
Re: И снова C/C++
От: Tark Россия  
Дата: 08.09.04 03:09
Оценка:
Здравствуйте, Xhunter, Вы писали:

X>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?



Очень извиняюсь, но разве не из *.lib?

Best regards.
Re[2]: И снова C/C++
От: INTP_mihoshi Россия  
Дата: 08.09.04 05:31
Оценка: :)))
Здравствуйте, Tark, Вы писали:

X>>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?


T>Очень извиняюсь, но разве не из *.lib?


Из .a и .o
Re[2]: И снова C/C++
От: Xhunter  
Дата: 08.09.04 06:31
Оценка:
Здравствуйте, Tark, Вы писали:

T>Здравствуйте, Xhunter, Вы писали:


X>>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?



T>Очень извиняюсь, но разве не из *.lib?


T>Best regards.


Можеть быть и из *.lib. Но *.lib файлы, как я подозреваю содержат информацию для связи импортируемых из *.dll функций с конечным исполняемым файлом. Но не все же функции импортируются из dll. Код некоторых линкуется прямо с кодом конечного *.exe файла.
Или я что то недопонимаю . Хотелось бы услышать мнение эксперта
... << RSDN@Home 1.1.4 beta 2 rev. 181>>
Re: И снова C/C++
От: Sergey J. A. Беларусь  
Дата: 08.09.04 06:41
Оценка: 1 (1) +2 :))) :)))
Здравствуйте, Xhunter, Вы писали:

X>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?


Вообще-то в конечный екзешник влинкивает линкер, а не вкомпиливает компилятор.
Я — свихнувшееся сознание Джо.
Re[2]: И снова C/C++
От: Хороший Человек Россия  
Дата: 08.09.04 06:43
Оценка:
Здравствуйте, Tark, Вы писали:

T>Здравствуйте, Xhunter, Вы писали:



T>Очень извиняюсь, но разве не из *.lib?


Из *.OBJ

T>Best regards.
... << RSDN@Home 1.1.4 @@subversion >>
Re[2]: И снова C/C++
От: Аноним  
Дата: 08.09.04 08:17
Оценка:
Здравствуйте, Sergey J. A., Вы писали:

SJA>Вообще-то в конечный екзешник влинкивает линкер, а не вкомпиливает компилятор.


Ooops... А кто тогда делает whole program optimization? Это когда информация из кучи объектников сливается в кучу, оптимизируется и затем из этого делается объектник? По-моему, как раз тот случай, когда "вкомпиливает компилятор".
PS. /GL для MSVC и /Qipo для ICC
Re[3]: И снова C/C++
От: Bell Россия  
Дата: 08.09.04 08:34
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Sergey J. A., Вы писали:


SJA>>Вообще-то в конечный екзешник влинкивает линкер, а не вкомпиливает компилятор.


А>Ooops... А кто тогда делает whole program optimization? Это когда информация из кучи объектников сливается в кучу, оптимизируется и затем из этого делается объектник? По-моему, как раз тот случай, когда "вкомпиливает компилятор".

А>PS. /GL для MSVC и /Qipo для ICC

"информация из кучи объектников" используется для дополнительной оптимизации каждого объектного файла, и количество их не меняется — никакого нового единственного объектного файла не генерируется.
Любите книгу — источник знаний (с) М.Горький
Re[3]: И снова C/C++
От: Sergey J. A. Беларусь  
Дата: 08.09.04 09:17
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Ooops... А кто тогда делает whole program optimization? Это когда информация из кучи объектников сливается в кучу, оптимизируется и затем из этого делается объектник? По-моему, как раз тот случай, когда "вкомпиливает компилятор".

А>PS. /GL для MSVC и /Qipo для ICC

Ну IMHO компилятор в этом случае вкомпиливает в некоторый промежуточный файл, который затем влинкивается линкером в конечный экзешник.
Я — свихнувшееся сознание Джо.
Re[4]: И снова C/C++
От: Carc Россия https://vk.com/gosha_mazov
Дата: 08.09.04 17:50
Оценка:
Здравствуйте, Bell, Вы писали:

B>Здравствуйте, Аноним, Вы писали:


А>>Здравствуйте, Sergey J. A., Вы писали:


SJA>>>Вообще-то в конечный екзешник влинкивает линкер, а не вкомпиливает компилятор.


А>>Ooops... А кто тогда делает whole program optimization? Это когда информация из кучи объектников сливается в кучу, оптимизируется и затем из этого делается объектник? По-моему, как раз тот случай, когда "вкомпиливает компилятор".

А>>PS. /GL для MSVC и /Qipo для ICC

B>"информация из кучи объектников" используется для дополнительной оптимизации каждого объектного файла, и количество их не меняется — никакого нового единственного объектного файла не генерируется.

В принципе у HP по моему были такие реализации которые делали единое промежуточное представление, т.е. по сути единый обьектник. По крайней мере какие то куски кода и идеи ребяты из компании Interstron приводили
Aml Pages Home
Re: ? ?нова C/C++
От: Аноним  
Дата: 29.08.09 06:14
Оценка:
?од?кажи?е, и? каки? ?айлов (?айла? ? каким ?а??и?ением) компил??о? ?и или ?и++ бе?е? код и вкомпиливае? его в коне?н?й екзе?ник?
Re[3]: И снова C/C++
От: LaptevVV Россия  
Дата: 29.08.09 06:27
Оценка:
Здравствуйте, Xhunter, Вы писали:

X>Можеть быть и из *.lib. Но *.lib файлы, как я подозреваю содержат информацию для связи импортируемых из *.dll функций с конечным исполняемым файлом. Но не все же функции импортируются из dll. Код некоторых линкуется прямо с кодом конечного *.exe файла.

X>Или я что то недопонимаю . Хотелось бы услышать мнение эксперта
Хотя я не эксперт, но...
Либы — это статические библиотеки. Линкер из них извлекает стандартные функции и присолединяет к исполняемому файлу при статической сборке.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: И снова C/C++
От: LaptevVV Россия  
Дата: 29.08.09 06:31
Оценка:
Здравствуйте, Xhunter, Вы писали:

X>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?

исходный -> объектный -> исполняемый.
Исходный компилирует компилятор и получает объектный файл (или неколько), потом объектные файлы попадают на вход линкеру, который еще и из статических библиотек файлы извлекает, и он делает exe. Это при статической сборке.
Или линкер может сделать dll.
Или линкер может сделать exe, в котором ты используешь другую dll — при динамическом связывании.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: И снова C/C++
От: FoolS.Top Армения  
Дата: 29.08.09 06:39
Оценка:
Здравствуйте, Xhunter, Вы писали:

X>Подскажите, их каких файлов (файлах с каким расширением) компилятор си или си++ берет код и вкомпиливает его в конечный екзешник?


Смотрите здесь
Feierlich, misterioso
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.