Публикации по теме 'gcc'


Первые шаги в программировании на C (GNU Linux)
Предыдущие знания , в качестве совета рекомендую ознакомиться с информацией о c (язык программирования) , компилятор , GCC (GNU Compiler Collection) , Текстовые редакторы Linux . (vi, vim, emacs, atom и т. д.)», оболочка Linux , Bash , ассемблер . Давайте напишем нашу первую программу на C, для этого воспользуемся текстовым редактором Linux (vi, emacs, atom и т. д.), напишем следующий код и сохраним его как hello.c : После того, как вы это сделаете, можно начать..

RELRO: RELocation только для чтения
Эта статья была первоначально размещена на blog.isis.poly.edu 2 июня 2011 г. . В этой статье описываются разделы перемещения ELF, как использовать их для выполнения произвольного кода и как защитить их во время выполнения. Разделы переезда в формате ELF Динамически связанный двоичный файл ELF использует поисковую таблицу, называемую глобальной таблицей смещения (GOT), для динамического разрешения функций, которые находятся в разделяемых библиотеках. Когда вы вызываете функцию,..

Атрибуты C ++
В C ++ 11 атрибуты были добавлены как способ к стандартизированным функциям, таким как gnu __attribute__ и msvc's __declspec . Предоставление языка для стандартных атрибутов, а также нестандартных атрибутов посредством использования пространств имен, хотя поведение нестандартных атрибутов было урегулировано только для C ++ 17. И, к сожалению, по состоянию на 2018 год ни GCC, ни MSVC не предлагают атрибуты, зависящие от поставщика, хотя переносимый стандартный синтаксис C ++...

Процесс компиляции для языка программирования C
Языки компьютерного программирования — это мощный инструмент, созданный с целью написания инструкций для компьютера с использованием различных кодовых слов. Этот код облегчил создание некоторых удивительных программ, которые теперь стали частью нашей повседневной жизни. Но как они работают? Во-первых, полезно понимать две основные категории компьютерных языков. Языки низкого уровня против языков высокого уровня Языки программирования обычно можно отнести к одному из двух типов...

Как работает процесс компиляции программ на C
C - это компилируемый язык. Его исходный код пишется с помощью любого редактора по выбору программиста в виде текстового файла, а затем он должен быть скомпилирован в машинный код. Исходные файлы C по соглашению называются с расширением .c , и мы используем команду «gcc» для компиляции исходных файлов C. (GCC - это аббревиатура от GNU Compiler Collection, и это система компиляции, созданная проектом GNU.) Четыре этапа компиляции: предварительная обработка, компиляция, сборка,..

Вопросы по теме 'gcc'

Собирается ли Objective-C в Linux мусор?
В Objective-C v2.0 (который использует Mac) появилась новая функция «Сборка мусора». Я ребенок на ПК с Linux (Ubuntu, если вам интересно). Итак, мой вопрос: использование компилятора gcc/g++ - это сбор мусора Objective-C?
970 просмотров
schedule 14.01.2024

Исправлена ​​ошибка с четырьмя nops в if (0), world больше не имеет смысла
Я писал функцию, чтобы выяснить, есть ли у данной системы линейных неравенств решение, как вдруг она начала давать неправильные ответы после, казалось бы, безобидного изменения. Я отменил некоторые изменения, переделал их, а затем продолжил...
730 просмотров
schedule 21.12.2023

«сравнение всегда верно из-за предупреждения об ограниченном диапазоне типов данных» в C?
У меня есть следующий код //Point.h #define WIDTH 8 #define HEIGHT 8 typedef struct Point { char x; char y; } Point; //Board.c #include <stdbool.h> // Some other functions that we don't care about... bool inBounds(Point * p) {...
26628 просмотров
schedule 13.01.2024

Добавление ведущих символов подчеркивания к символам сборки с помощью GCC на Win32?
У меня есть фрагмент кода C, который вызывает функцию, определенную в ассемблере. В качестве примера предположим, что foo.c содержит: int bar(int x); /* returns 2x */ int main(int argc, char *argv[]) { return bar(7); } И bar.s содержит...
22284 просмотров
schedule 26.07.2022

Компиляция файлов makefile C/C++ под Windows (XP)
Я пытаюсь использовать библиотеку Python (pyMedia), в которой есть некоторые необходимые библиотеки, отличные от Python. (libogg, libvorbis, liblame и libfaad2 - это не относится к конкретному вопросу). libogg требует, чтобы вы вручную...
6403 просмотров

Как увеличить размер исполняемого стека gcc?
У меня есть большая метапрограмма Boost/Spirit, которая сбрасывает стек gcc, когда я пытаюсь ее скомпилировать. Как я могу увеличить размер стека gcc, чтобы я мог скомпилировать эту программу? Примечание: бесконечной рекурсии не происходит, но...
16192 просмотров
schedule 16.03.2024

Имеет ли значение порядок строк ссылок для supc++?
Это продолжение предыдущего вопроса - Как использовать другой STL с g++ Теперь я могу получить свой код для сборки, используя другой STL. Однако мне все еще нужно связать -lsupc++ (вместе с указанным другим STL) Я вижу анекдотические...
1488 просмотров
schedule 31.07.2022

Создание универсальных двоичных файлов на Mac — форсирование одного дочернего процесса компилятора
Ваше здоровье, в компании мы создаем порт наших игр, и нам нужно скомпилировать PythonOgre , оболочку Ogre3d для Python. Это огромный кусок кода, особенно сгенерированный код оболочки. У нас есть Mac Mini с 1 ГБ оперативной памяти. Мы...
357 просмотров
schedule 19.10.2023

Глобально использовать malloc Google?
Я хотел бы поэкспериментировать с tcmalloc от Google в Linux... У меня здесь огромный проект с сотнями файлов Makefile, сгенерированных qmake... Я хотел бы найти способ заставить gcc глобально связываться с tcmalloc (как это делает с libc)......
1831 просмотров
schedule 20.11.2023

Зарезервированные ключевые слова в Objective-C?
На вчерашней встрече CocoaHeads в Оресунде Пейлоу создал отличную викторину по ObjC. Конкуренция была интенсивной, и три человека остались с одинаковыми баллами, когда нужно было оценить последний вопрос: сколько зарезервированных ключевых слов...
11158 просмотров

неявное объявление getopt в Solaris?
В Solaris gcc дает мне неявное объявление функции `getopt' при компиляции #include <unistd.h> #include <stdlib.h> int main(int argc, char *argv[]) { getopt(1,argv,""); return 0; } справочная страница для...
4951 просмотров
schedule 26.03.2024

gcc: предупреждение: большое целое неявно усекается до беззнакового типа
#include<stdio.h> int main() { unsigned char c; c = 300; printf("%d",c); return 0; } Является ли вывод каким-либо образом предсказуемым или неопределенным?
28987 просмотров
schedule 29.11.2023

ada95 имеет 3 файла .ali, .adb и .o - могу ли я скомпилировать
Я нашел старую работу из колледжа с моим последним проектом Ada95. К сожалению, диск был поврежден, и мне удалось восстановить только 3 файла (исходник и исполняемый файл восстановить не удалось): проект.adb, проект.али и проект.о Этих 3 файлов...
530 просмотров
schedule 18.09.2022

Открытие fstream с файлом с именем файла Unicode под Windows с использованием компилятора, отличного от MSVC
Мне нужно открыть файл как std::fstream (или фактически любой другой std::ostream), когда имя файла является именем файла «Unicode». Под MSVC у меня нестандартное расширение std::fstream::open(wchar_t const *,...) ? Что я могу сделать с другими...
9492 просмотров
schedule 10.03.2024

GCC экспортирует оформленное имя функции только из dll
У меня есть dll, она экспортирует функцию ... extern "C" int __stdcall MP_GetFactory( gmpi::IMpUnknown** returnInterface ) { } Я компилирую это с помощью компилятора Code :: Blocks GCC (V3.4.5). Проблема: полученная dll экспортирует...
2045 просмотров
schedule 15.04.2024

Как objdump может отображать исходный код с опцией -S?
Есть ли ссылка на исходный файл в бинарнике? Я попытался запустить строки в двоичном файле и не смог найти ссылку на указанный исходный файл...
49252 просмотров
schedule 07.11.2022

Компиляция без libc
Я хочу скомпилировать свой C-код без (g)libc. Как его отключить и какие функции от него зависят? Я попробовал -nostdlib, но это не помогает: код компилируется и работает, но я все еще могу найти имя libc в шестнадцатеричном дампе моего...
42458 просмотров
schedule 11.03.2024

размер пакета libpcap
Я работаю с libpcap на C в Linux (centos) и следую этому руководство Я хочу просто распечатать весь пакет в ASCII, и мне удалось заставить его работать, приведя его к u_char* в функции "my_callback". Но я не могу понять, как получить длину данных....
3576 просмотров
schedule 16.11.2023

Другие проблемы со временем ссылки GCC: неопределенная ссылка на main
Я пишу программное обеспечение для процессора Cortex-A8, и мне нужно написать код сборки ARM для доступа к определенным регистрам. Я использую компиляторы gnu и связанные цепочки инструментов, эти инструменты установлены на плате процессора...
15637 просмотров
schedule 07.07.2022

опция gcc std=gnu++0x
Мне нужно скомпилировать код C++, который использует параметр std=gnu++0x для компилятора g++ в Makefile.am. Поскольку этот параметр совместим только с gcc 4.3 и выше, сборка аварийно завершает работу на моей машине, где у меня есть gcc 4.2. Каковы...
2207 просмотров
schedule 06.05.2024