Как мне узнать, что по умолчанию включают каталоги, ссылки по умолчанию и ссылки по умолчанию библиотеки gcc, g ++ / c ++ в Ubuntu 11.04? - PullRequest
11 голосов
/ 19 января 2012

Для следующих 3 случаев компиляции:

gcc -o helloc hello.c                    (1)

g++ -o hellocpp hello.cpp                (2)

c++ -o hellocpp hello.cpp                (3)

откуда мне знать «каталоги включения по умолчанию», «каталоги ссылок по умолчанию» и «библиотеки ссылок по умолчанию» в каждом случае? Я использую gcc 4.5.2 в 32-битной среде Ubuntu 11.04.

В случае (1) gcc использует стандартные библиотеки C или библиотеки GNU C? Есть ли разница между двумя библиотеками C?

Сравнивая случаи (2) и (3), есть ли разница в "библиотеках ссылок по умолчанию", используемых компилятором? Используют ли они стандартные библиотеки C ++ или библиотеки GNU C ++? В чем разница между двумя библиотеками C ++?

Заранее спасибо за любые предложения.

Лоуренс Цанг

Ответы [ 2 ]

12 голосов
/ 19 января 2012

Скажите gcc -v или g++ -v для распечатки подробной информации об окружающей среде.

например. для меня это говорит:

#include <...> search starts here:
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/../../../../include/c++/4.6.2
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/../../../../include/c++/4.6.2/i686-pc-linux-gnu
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/../../../../include/c++/4.6.2/backward
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/include
 /usr/local/include
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/include-fixed
 /usr/include

Также попробуйте gcc -dumpspecs, чтобы увидеть подробности о запущенных инструментах в цепочке инструментов.

9 голосов
/ 08 августа 2012

Ответ Kerrek SB не совсем подходит для меня в Ubuntu 12.04, но, похоже, это работает:

cpp -v

Вниз я получаю следующее:

#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...