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

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

7
Как включить (буквально) ВСЕ предупреждения GCC?
Я хотел бы включить - буквально - ВСЕ предупреждения, которые имеет GCC. (Вы думаете, это будет легко ...) Вы могли бы подумать, что -Wallможно сделать, но нет! Все еще нужно -Wextra. Вы могли бы подумать, что -Wextraможно сделать, но нет! Не все перечисленные здесь предупреждения (например, -Wshadow) включены этим. И …

9
Где gcc ищет заголовочные файлы C и C ++?
В системе Unix, где gcc ищет заголовочные файлы? Сегодня утром я потратил немного времени на поиск некоторых системных заголовочных файлов, так что я подумал, что это будет хорошей информацией для вас.
186 c  gcc  header 

1
Отключить все предупреждения GCC
Я работаю над проектом, который будет читать сообщения об ошибках компилятора определенного типа и делать с ними полезные вещи. Пример кода, на котором я тестирую это (случайное приложение с открытым исходным кодом) и, следовательно, часто перестраиваемый, содержит несколько битов, генерирующих предупреждения, которые меня не интересуют. Как отключить все предупреждения от …
185 gcc  g++  warnings 

3
Почему GCC генерирует такую ​​радикально отличную сборку для почти одного и того же C-кода?
При написании оптимизированной ftolфункции я обнаружил очень странное поведение в GCC 4.6.1. Позвольте мне сначала показать вам код (для ясности я отметил различия): fast_trunc_one, C: int fast_trunc_one(int i) { int mantissa, exponent, sign, r; mantissa = (i & 0x07fffff) | 0x800000; exponent = 150 - ((i >> 23) & 0xff); …

2
Реалистичное использование ключевого слова C99 «Restrict»?
Я просматривал некоторую документацию и вопросы / ответы и видел упомянутое. Я прочитал краткое описание, в котором говорится, что программист обещает, что указатель не будет использоваться для указания другого места. Может ли кто-нибудь предложить некоторые реалистичные случаи, когда на самом деле стоит использовать это?
183 c  gcc  c99  restrict-qualifier 

5
Как создать символ отладки gcc вне цели сборки?
Я знаю, что могу генерировать символ отладки, используя опцию -g. Однако символ встраивается в целевой файл. Может ли gcc генерировать символ отладки вне исполняемого файла / библиотеки результата? Как и .pdb файл Windows VC ++ компилятор сделал.
176 gcc  debugging  pdb-files 

8
Errno потокобезопасный?
В errno.h, эта переменная объявлена ​​так, extern int errno;поэтому мой вопрос: безопасно ли проверять errnoзначение после некоторых вызовов или использовать perror () в многопоточном коде. Это потокобезопасная переменная? Если нет, то какая альтернатива? Я использую Linux с GCC на архитектуре x86.
176 c  linux  multithreading  gcc 

6
Clang против GCC для моего проекта по разработке Linux
Я учусь в колледже, и для проекта, в котором мы используем C. Мы изучили GCC и Clang, и Clang выглядит гораздо более удобным для пользователя, чем GCC. В результате мне интересно, каковы преимущества или недостатки использования clang, в отличие от GCC, для разработки на C и C ++ в Linux? …
175 c++  c  linux  gcc  clang 

11
«/ Usr / bin / ld: не могу найти -lz»
Я пытаюсь скомпилировать исходный код Android под Ubuntu 10.04. Я получаю сообщение об ошибке, / usr / bin / ld: не могу найти -lz Подскажите, пожалуйста, как мне это исправить? Что cannot find -lzзначит? Вот полное сообщение об ошибке: external/qemu/Makefile.android:1101: warning: overriding commands for target `external/qemu/android/avd/hw-config-defs.h' external/qemu/Makefile.android:933: warning: ignoring old …
172 linux  gcc  linker 

4
Дорогой прыжок с GCC 5.4.0
У меня была функция, которая выглядела так (показывая только важную часть): double CompareShifted(const std::vector<uint16_t>& l, const std::vector<uint16_t> &curr, int shift, int shiftY) { ... for(std::size_t i=std::max(0,-shift);i<max;i++) { if ((curr[i] < 479) && (l[i + shift] < 479)) { nontopOverlap++; } ... } ... } Написанная так, эта функция заняла ~ …
171 c++  gcc 

11
Несколько библиотек glibc на одном хосте
Несколько библиотек glibc на одном хосте Мой сервер Linux (SLES-8) в настоящее время имеет glibc-2.2.5-235, но у меня есть программа, которая не будет работать в этой версии и требует glibc-2.3.3. Можно ли установить несколько glibcs ​​на одном хосте? Это ошибка, которую я получаю, когда запускаю свою программу на старом glibc: …
171 linux  gcc  glibc 

11
Ошибка «gnu / stubs-32.h: нет такого файла или каталога» при компиляции исходного кода Nachos
Я пытаюсь установить Nachos на свой ноутбук, и у меня есть Ubuntu 11.04 на ноутбуке. Код написан на C и поэтому для его сборки я предполагаю, что мне понадобится кросс-компилятор. Вот где моя проблема. Я загрузил исходный код кросс-компилятора MIPS с помощью команды wget http://mll.csie.ntu.edu.tw/course/os_f08/assignment/mips-decstation.linux-xgcc.gz и я расстегнул молнию, используя …

7
Я не могу найти существующую библиотеку
Я пытаюсь связать приложение с g ++ в этой системе Debian lenny. ld жалуется, что не может найти указанные библиотеки. Конкретным примером здесь является ImageMagick, но у меня возникают похожие проблемы и с некоторыми другими библиотеками. Я звоню компоновщику с: g++ -w (..lots of .o files/include directories/etc..) \ -L/usr/lib -lmagic …

5
Как посмотреть, какие флаги -march = native активируют?
Я компилирую свое приложение C ++, используя GCC 4.3. Вместо того, чтобы вручную выбирать флаги оптимизации, которые я использую -march=native, теоретически следует добавить все флаги оптимизации, применимые к оборудованию, на котором я компилирую. Но как я могу проверить, какие флаги он использует?

4
предупреждение: несовместимое неявное объявление встроенной функции 'xyz'
Я получаю ряд этих предупреждений при компиляции нескольких двоичных файлов: warning: incompatible implicit declaration of built-in function ‘strcpy’ warning: incompatible implicit declaration of built-in function ‘strlen’ warning: incompatible implicit declaration of built-in function ‘exit’ Чтобы попытаться решить эту проблему, я добавил #include <stdlib.h> вверху файлов C, связанных с этим предупреждением, …
164 c  gcc  gcc-warning 

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