Вопросы с тегом «gcc»

GCC - это коллекция компиляторов GNU. Это де-факто стандартный компилятор для C, C ++, Go, Fortran и Ada в Linux, а также поддерживает многие другие языки и платформы. Помимо компилятора GCC имеет набор инструментов (libc, libstdc ++, objdump, nm и т. Д.), Которые широко используются на нескольких платформах и системах.

4
Как узнать, откуда включен заголовочный файл?
Как узнать, где g ++ нашел включаемый файл? В основном, если я #include <foo.h> g ++ просканирует путь поиска, используя любые параметры включения для добавления или изменения пути. Но, в конце концов, есть ли способ определить абсолютный путь к foo.h, который g ++ выбрал для компиляции? Особенно актуально, если во …
101 c++  c  gcc  include  g++ 

2
В чем разница между параметрами gcc `-fpic` и` -fPIC`?
Я уже читал gccсправочную страницу, но до сих пор не могу понять разницу между -fpicи -fPIC. Может ли кто-нибудь объяснить это очень просто и понятно? Связанные вопросы: Что означает -fPIC при создании общей библиотеки? Каковы, если таковые имеются, последствия компиляции объектов с флагом gcc -fPIC, если они используются в исполняемых …
99 gcc  fpic 

9
Ошибка компиляции: «g ++: ошибка при попытке выполнить exec 'cc1plus': execvp: нет такого файла или каталога»
Когда я компилирую программу C / C ++ с помощью popenin php... я получил эту ошибку: g++: error trying to exec 'cc1plus': execvp: No such file or directory но если я запустил php-код в оболочке .. он отлично работает .. в Arch Linux .. Код PHP: <?php function rfile($fp) { …
99 php  c++  c  linux  gcc 

7
Предупреждение C ++: деление двойного на ноль
Случай 1: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0.0)<<std::endl; } Компилируется без предупреждений и выводов inf. Хорошо, C ++ может обрабатывать деление на ноль ( посмотреть вживую ). Но, Случай 2: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0)<<std::endl; } Компилятор выдает следующее предупреждение ( …

1
Инициализация члена при использовании делегированного конструктора
Я начал пробовать стандарт C ++ 11 и нашел этот вопрос, который описывает, как вызвать ваш ctor из другого ctor в том же классе, чтобы избежать использования метода инициализации и т.п. Теперь я пробую то же самое с кодом, который выглядит следующим образом: hpp: class Tokenizer { public: Tokenizer(); Tokenizer(std::stringstream …

8
Как изменить компилятор GCC по умолчанию в Ubuntu?
Я установил gcc-3.3 / g ++ - 3.3 на ubuntu 11.04, в котором уже есть gcc / g ++ - 4.4. Итак, в моей системе доступны как gcc-3.3, так и 4.4. Могу называть оба компилятора как хочу. Если я просто вызову команду, gccбудет вызван gcc-4.4. Чтобы вызвать gcc-3.3, мне нужно …
98 linux  ubuntu  gcc 

4
экспериментальная :: ошибка компоновщика файловой системы
Я пытаюсь использовать новые функции C ++ 1z, фактически, в рамках разработки в рамках gcc 6.0. Если я попробую этот небольшой пример: #include <iostream> #include <experimental/filesystem> namespace fs = std::experimental::filesystem; int main() { fs::path p1 = "/home/pete/checkit"; std::cout << "p1 = " << p1 << std::endl; } Я получил: / …
98 c++  gcc  c++17 

13
Распутывание результата std :: type_info :: name
В настоящее время я работаю над некоторым кодом регистрации, который должен, среди прочего, печатать информацию о вызывающей функции. Это должно быть относительно просто, стандартный C ++ имеет type_infoкласс. Он содержит имя typeid'd класса / функции / и т. Д. но это искалечено. Это не очень полезно. Т.е. typeid(std::vector<int>).name()возвращается St6vectorIiSaIiEE. Есть …
97 c++  gcc  name-mangling 


13
Как я могу использовать sizeof в макросе препроцессора?
Есть ли способ использовать a sizeofв макросе препроцессора? Например, за эти годы было множество ситуаций, в которых я хотел сделать что-то вроде: #if sizeof(someThing) != PAGE_SIZE #error Data structure doesn't match page size #endif То, что я здесь проверяю, полностью выдумано - дело в том, что я часто люблю вставлять …
95 c  gcc 


7
Как настроить задание cron для запуска исполняемого файла каждый час?
Мне нужно настроить задание cron, которое запускает исполняемый файл, скомпилированный с использованием gcc, один раз в час. Я вошел в систему как root и набрал crontab -e Затем я ввел следующее и сохранил файл. 0 * * * * /path_to_executable Однако работа cron не работает. Я вижу, что когда я …
95 c  linux  gcc  cron  crontab 

7
Как скомпилировать без предупреждений, рассматриваемых как ошибки?
Проблема в том, что тот же код, который хорошо компилируется в Windows, не может быть скомпилирован в Ubuntu. Каждый раз, когда я получаю эту ошибку: cc1: warnings being treated as errors Это большая база кода, и мне не нравится исправлять все предупреждения. Есть ли способ успешно скомпилировать, несмотря на предупреждения?

7
C / C ++ с GCC: статическое добавление файлов ресурсов в исполняемый файл / библиотеку
Кто-нибудь знает, как статически скомпилировать любой файл ресурсов прямо в исполняемый файл или файл общей библиотеки с помощью GCC? Например, я хотел бы добавить файлы изображений, которые никогда не меняются (а если они это сделают, мне все равно придется заменить файл), и я бы не хотел, чтобы они валялись в …

9
Как отключить предупреждения о неиспользуемых переменных, исходящие из gcc, в стороннем коде, который я не хочу редактировать?
Я хотел бы знать, какой переключатель вы передаете компилятору gcc, чтобы отключить предупреждения о неиспользуемых переменных? У меня возникают ошибки из-за повышения в окнах, и я не хочу касаться кода повышения: C:\boost_1_52_0/boost/system/error_code.hpp: At global scope: C:\boost_1_52_0/boost/system/error_code.hpp:214:36: error: 'boost::system::posix_category' defined but not used [-Werror=unused-variable] C:\boost_1_52_0/boost/system/error_code.hpp:215:36: error: 'boost::system::errno_ecat' defined but not used …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.