Articles of makefile

makefile включает * .h файл в другой каталог

Поскольку файлы * .o, * .h и * .c хранятся в разных каталогах, мне нужно добавлять префикс $ (ODIR) или $ (IDIR) каждый раз, когда я пишу файл * .o или * .h? Есть ли изящный способ сделать это? Возможно, каким-то образом, как $ (IDIR) / {ah, bh, ch}? Это образец файла makefile: GCC = […]

GNU Сделать «Abort trap: 6» после вызова gcc, однако вызов действителен только при выполнении

Я использую GNU Make для создания проекта C / C ++, который многие люди будут использовать. Makefile пытается быть общим, поскольку в этом проекте есть много дополнительных файлов, и каждый пользователь выбирает эти файлы через интерфейс MATLAB, которые затем передаются в make-файл через аргументы командной строки (make target OPTS = «XYZ» и т. Д.). Когда […]

Неопределенная ссылка вместо makefile

Код, который я хочу запустить, имеет make-файл, и он показывает ошибку: /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu/crt1.o: In function `_start’:(.text+0x20): undefined reference to `main’ collect2: error: ld returned 1 exit status make: *** [Nfa] Error 1 Файл с основной функцией – terp.c. Часть кода с main (): #ifdef MAIN #define ALLOCATE #include “global.h” /*externs for Verbose*/ #define SIZE 256 PRIVATE […]

Отсутствует разделитель в Makefile?

Следующий Makefile не работает, и я не уверен, что происходит. CC = gcc CFLAGS = -Wall -g demo: ${CC} ${CFLAGS} demo.c -o demo lib: ${CC} ${CFLAGS} lib.c -o lib clean: rm -f lib demo Демо имеет основную функцию, а lib имеет набор методов, используемых в демонстрации. Я добавил флаг -c в lib. Однако, когда я […]

undefined symbol: PyExc_ImportError при вложении Python в C

Я разрабатываю совместно используемую библиотеку C, которая делает вызов сценария python. Когда я запускаю приложение, я получаю эту ошибку: Traceback (most recent call last): File “/home/ubuntu/galaxy-es/lib/galaxy/earthsystem/gridftp_security/gridftp_acl_plugin.py”, line 2, in import galaxy.eggs File “/home/ubuntu/galaxy-es/lib/galaxy/eggs/__init__.py”, line 5, in import os, sys, shutil, glob, urllib, urllib2, ConfigParser, HTMLParser, zipimport, zipfile File “/usr/lib/python2.7/zipfile.py”, line 6, in import io File […]

Как включить файлы из нескольких каталогов в C на Linux?

gcc main.c -o main -I include Я создаю небольшое приложение c, где все мои исходные файлы находятся в каталоге src, а все заголовочные файлы в каталоге include, а также все распространенные файлы находятся в общем каталоге. Все эти три каталога находятся под одним каталогом, называемым каталогом «app», а также main.c. Теперь я пытаюсь запустить main.c, […]

Простая программа для драйвера устройства Linux

include #include #include int my_init(void){ printk(” Angus : Module Insertion is successful!”); return 0; } void my_cleanup(void){ printk(” Angus : Module unloading successful!”); } module_init(my_init); module_cleanup(my_cleanup); Makefile: obj-m:=simple.o aoll: make -C /usr/src/linux-headers-3.2.0-25-generic-pae/ M=$(PWD) modules clean: make -C /usr/src/linux-headers-3.2.0-25-generic-pae/ M=$(PWD) clean make -C => изменится на каталог перед выполнением make, В этом пути /usr/src/linux-headers-3.2.0-25-generic-pae/ У меня […]

FFmpeg: пример построения кода C

Я сконфигурировал и скомпилировал библиотеку FFmpeg, используя эту ссылку: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu Теперь я пытаюсь создать примеры кода C, предоставленные FFmpeg, здесь: https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples Тем не менее, когда я запускаю make install-examples или make install (предлагается / example / README), я получаю сообщение такого типа: make: *** Нет правила для создания целевого ‘/ doc / examples / README’, […]

Ошибка репликации Makefile

Я пытаюсь получить этот makefile relink и не перекомпилировать unessecarily файлы, которые не изменены. «Libft» – это моя библиотека и не имеет никаких ошибок. Ошибка, которую я испытываю при выполнении make является : make: *** No rule to make target `main.o’, needed by `ft_printf’. Stop. Мой файл makefile: NAME = ft_printf SRC = main.c\ ft_printf.c\ […]

Где «Все» принадлежит Makefile?

Где мы помещаем все в Makefiles? У меня был аналогичный вопрос, который был найден ранее , но мне нужно было немного больше деталей. Я также посмотрел инструкцию GNU , но потерялся в горах документации. Я попробовал googles, но не нашел хорошего примера. Итак, я сделал то, что было последним, и попытался понять это, взломав сам […]