Make не заданы цели и не найден make файл останов
Я пытаюсь использовать GCC (Linux) с make-файлом для компиляции моего проекта.
Я получаю следующую ошибку, которая не может расшифровать в этом контексте:
Типичный пример, которым вы «делаете» исходный файл «не существующим», - это сброс переменной VPATH или SRC по ошибке, когда вам нужно добавить к ней. Я имею в виду usnig VPATH= вместо VPATH+= . Это делает Makefile файл не может видеть файлы, когда файл на самом деле там.Обычно это потому, что у вас нет файла, который vertex.cpp можно сделать доступным. Проверь это:
- этот файл существует.
- вы находитесь в правильном каталоге, когда вы делаете.
Кроме этого, я не могу больше предложить. Возможно, вы могли бы дать нам список каталогов этого каталога.
Да, у некоторых из моих классов нет файлов .cpp, поэтому их там не было, что вызвало ошибку. Спасибо. Вы также можете получить такую ошибку, если есть некоторые заголовочные файлы, которые вы удалили, но все еще есть в вашем Makefile @par, это похоже на другой вопрос для меня. Вы, вероятно, получите больше информации, если зададите вопрос. Кроме того, убедитесь, что вы сохранили свой Makefile после его редактирования . Это то, что досталось мне. Я сделал все свои правки, затем забыл нажать CTRL + SПо моему опыту, эта ошибка часто вызвана орфографической ошибкой.
Я получил эту ошибку сегодня.
make [1]: *** Нет правила для создания цели maintenaceDialog.cpp', needed by maintenaceDialog.o '. Стоп.
В моем случае ошибка была просто орфографической ошибкой. Слово ТЕХНИЧЕСКОЕ ОБСЛУЖИВАНИЕ отсутствовало, это третий Н.
Также проверьте правильность написания ваших имен файлов.
Мета почему в этом случае из-за явного перечисления отношений объект / источник / заголовок. Если новые инструменты, такие как SubCons или CMake , не нужны, gcc -MT и gnu make pattern может решить эту проблему. См также . В моем случае путь был неправильным, ../../src/file.c но на самом деле это было ../../src/folder/file.cВы можете добавить каталог, используя аргумент -I для gcc.
В моем случае я использовал запятые в качестве разделителей. Чтобы использовать ваш пример, я сделал это:
Меняя его на эквивалент
Это точно? Помните, что синтаксис Makefile учитывает пробелы и требует вкладок для отступа команд под действиями.
Проблема, которую я обнаружил, была еще глупее, чем то, о чем говорили другие.
Наши make-файлы получают списки объектов для сборки. Кто-то добавил TheOtherLibrary в один из списков, как показано ниже.
Они должны были сделать это:
Если бы они сделали это вторым способом, они бы не уничтожили Library сборку. Плюс в += это очень важно.
В моем случае это было связано с ошибкой многострочного правила в Makefile. У меня было что-то вроде:
Обратная косая черта в конце списка файлов в CONFIG_OBJ1 правиле вызвала эту ошибку. Это должно быть как:
Одной из частых ошибок может быть опечатка в другом имени файла .
Содержимое моей папки:
В то время как мой makefile выглядит
Давайте makefile немного изменим , то есть заменим шаблоны явными правилами:
Чудо! Можно сделать следующие выводы:
Теперь у нас есть идея проверить и другие зависимости в правиле :
Вы можете взглянуть на EncFS. Особенно полезно шифровать файлы, хранящиеся в облаке, потому что они могут шифровать файлы или папки. Это тоже быстро. Вот вам GUI для EncFS, если вам это нужно.
Это происходит потому, что в этом каталоге нет файла с именем Makefile. Чтобы создать этот Makefile, вам необходимо выполнить
. Скрипт configure определяет, есть ли в вашей системе все зависимости, необходимые для компиляции приложения. Если зависимость не найдена, configure завершится с ошибкой, и Makefile не будет создан. Чтобы решить эту проблему, вы должны установить все зависимости, необходимые приложению.
Приложение xf86-video-intel похоже предоставляется пакетом xserver-xorg-video-intel, и его зависимости могут быть легко установленный при запуске
Для получения дополнительной информации вы можете прочитать файлы README или INSTALL.
Это происходит потому, что в этом каталоге нет файла с именем Makefile. Чтобы создать этот Makefile, вам необходимо выполнить
Скрипт configure определяет, есть ли в вашей системе все зависимости, необходимые для компиляции приложения. Если зависимость не найдена, команда configure завершится с ошибкой, и файл Makefile не будет создан. Чтобы решить эту проблему, вы должны установить все зависимости, необходимые приложению.
Приложение xf86-video-intel похоже предоставляется пакетом xserver-xorg-video-intel, и его зависимости могут быть легко установленный при запуске
Для получения дополнительной информации вы можете прочитать файлы README или INSTALL.
Ознакомьтесь с инструкциями по компиляции вашей программы. Вероятно, сначала вы должны запустить ./configure. Этот скрипт создаст «Makefile» на основе вашей установки и «Makefile.in».
Вы можете временно отключить ивритский язык при поиске помощи в Интернете, просто запустите
Точнее, autoreconf сгенерировал Makefile.in из Makefile.am и configure создает из него Makefile. – Lekensteyn 11 February 2012 в 23:39Просто помните, что для запуска файла ./configure вам понадобился компилятор. Сделайте что-нибудь вроде sudo apt-get install gcc. затем снова запустите ./configure и должен работать
Не волнуйтесь .. Есть только некоторые пакеты, которые нужно включить. Введите «sudo synaptic» в терминале и введите .. в поле поиска типа «qt4-qmake» и отметьте для установки. то же, что и выше, поиск «libqt4-dev» и «libxml2-dev» и сделать один и тот же знак для установки одновременно .. затем применить без проверки вариант загрузки. здесь это . Затем перейдите в каталог cd netanim и введите «make clean» и введите, если он не работает, введите «qmake NetAnim.pro» и введите его, он занимает пару секунд. затем введите «make» и введите . Здесь его сделано, это займет меньше минуты. Теперь в каталоге netanim введите «./NetAnim» и введите.
Здесь вы увидите интерфейс анимации. Удачи
Вы не отвечаете на вопрос о версии Ubuntu, прошедшей в конце жизни. Кроме того, этот вопрос уже имеет ответы и принят. Итак, зачем добавлять информацию? – Marc Vanhoomissen 2 October 2017 в 12:55Просто помните, что для запуска файла ./configure вам понадобился компилятор. Сделайте что-нибудь вроде sudo apt-get install gcc . затем снова запустите ./configure и должен работать
Мой каталог /usr/local/src
ОТВЕТЫ
Ответ 1
make принимает файл makefile как входной. Обычно файл Makefile называется makefile или makefile . Команда configure должна генерировать make файл, так что make может быть в свою очередь выполнен. Проверьте, был ли make файл создан в вашем рабочем каталоге.
Ответ 2
работает make clean , а затем ./configure должен решить вашу проблему.
Ответ 3
Я получил ту же ошибку, и я исправил ее, посмотрев решение с этого сайта:
У вас возникла ошибка после запуска "./configure"? Возможно, что-то об отсутствии tclConfig.sh. Если это так, вместо запуска './configure' сначала нужно сначала искать tclConfigure.sh, а затем поместить его в эту команду, в моем случае, в папку /usr/lib/. А затем запустите: './configure ---- с-tcl =/usr/lib --with-tclinclude =/usr/include'
Ответ 4
Команда ./configure должна сгенерировать make файл с именем makefile или Makefile . если в каталоге нет этого файла, вам следует проверить, успешно ли выполнена команда configure .
в моем случае я настраиваю apr-util :
поскольку --with-apr=/usr/local/apr/bin/apr-1-config , apr еще не установлен, поэтому при сбое настройки не было сгенерировано apr /usr/local/apr/bin/apr-1-config .
Поэтому я устанавливаю apr , затем настраиваю apr-util , все работает.
Ответ 5
Вы должны были иметь что-то вроде этого:
после вашего ./configure runs . Поэтому вам нужно сначала разрешить обнаруженные зависимости, а затем еще раз попробовать ./configure и затем запустить make!
Ответ 6
Если после. /configure Makefile.in и Makefile.am сгенерированы и произойдут сбой (показывая следующее make: *** Не указаны цели и не найден make файл. Стоп.), Поэтому что-то не настроено хорошо, чтобы решить это, сначала запустите команду "autoconf", чтобы решить неправильную конфигурацию, затем повторно запустите "./configure" commande и, наконец, "make"
Ответ 7
Недавно я столкнулся с этой проблемой, пытаясь вручную установить texane-утилиту STLink с открытым исходным кодом в Ubuntu. Как ни странно, решение было
Ответ 8
Распакуйте источник из рабочего каталога и cd в каталог файлов с правами root. Используйте команды. /configure, затем создайте и выполните установку
проблема с установкой программы wine
Зд@ровo всем.
я новичок Linux помогите кто в курсе
не получается установить прогу wine-0.9.31
она очень нужна так как я не давно поверх WINХР поставил Linux Mandriva 2007
и в мандриве по умолчанию монтируются все диски от xp c доступом «только для чтение»
хотелось бы запускать программы из Винды.
как написано в readme (приведенное ниже)
1-й способ
tar -xvf wine-0.9.31.tar //распаковываю архив
cd wine-0.9.31 //перехожу в wine-0.9.31
вот README для wine
1. INTRODUCTION
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix. It
consists of a program loader which loads and executes a Microsoft
Windows binary, and a library (called Winelib) that implements Windows
API calls using their Unix or X11 equivalents. The library may also
be used for porting Win32 code into native Unix executables.
Wine is free software, released under the GNU LGPL; see the file
LICENSE for the details.
Whenever you compile from source, it is recommended to use the Wine
Installer to build and install Wine. From the top-level directory
of the Wine source (which contains this file), run:
To compile and run Wine, you must have one of the following:
Linux version 2.0.36 or above
FreeBSD 5.3 or later
Solaris x86 2.5 or later
NetBSD-current
Mac OS X 10.4 or later
As Wine requires kernel-level thread support to run, only the operating
systems mentioned above are supported.
Other operating systems which support kernel threads may be supported
in the future.
Linux info:
While Linux 2.2.x should still work and Linux 2.0.x may still work
(older 2.0.x versions had thread-related crashes),
it's best to have a current kernel such as 2.4.x or 2.6.x.
FreeBSD info:
Wine should build on FreeBSD 4.x and FreeBSD 5.x, but versions before
FreeBSD 5.3 will generally not work properly.
Solaris info:
You will most likely need to build Wine with the GNU toolchain
(gcc, gas, etc.). Warning : installing gas does *not* ensure that it
will be used by gcc. Recompiling gcc after installing gas or
symlinking cc, as and ld to the gnu tools is said to be necessary.
NetBSD info:
Make sure you have the USER_LDT, SYSVSHM, SYSVSEM, and SYSVMSG options
turned on in your kernel.
Mac OS X info:
You need Xcode 2.4 or later to build properly on x86.
Supported file systems:
Wine should run on most file systems. However, Wine will fail to start
if umsdos is used for the /tmp directory. A few compatibility problems have
also been reported using files accessed through Samba. Also, as NTFS
can only be used safely with readonly access for now, we recommend against
using NTFS, as Windows programs need write access almost everywhere.
In case of NTFS files, copy over to a writable location.
Basic requirements:
You need to have the X11 development include files installed
(called xlib6g-dev in Debian and XFree86-devel in Red Hat).
Build tool requirements:
On x86 Systems gcc >= 2.7.2 is required.
Versions earlier than 2.7.2.3 may have problems when certain files
are compiled with optimization, often due to problems with header file
management.
Of course you also need "make" (most likely GNU make).
You also need flex version 2.5 or later and bison.
Optional support libraries:
Run ./configure --verbose to see the optional libraries that could
be used but aren't found on your system.
In case you chose to not use wineinstall, run the following commands
to build Wine:
./configure
make depend
make
This will build the program "wine" and numerous support libraries/binaries.
The program "wine" will load and run Windows executables.
The library "libwine" ("Winelib") can be used to compile and link
Windows source code under Unix.
To see compile configuration options, do ./configure --help.
To upgrade to a new release by using a patch file, first cd to the
top-level directory of the release (the one containing this README
file). Then do a "make clean", and patch the release with:
bunzip2 -c patch-file | patch -p1
where "patch-file" is the name of the patch file (something like
wine-0.9.x.diff.bz2). You can then re-run "./configure", and then
run "make depend && make".
Once Wine has been built correctly, you can do "make install"; this
will install the wine executable, the Wine man page, and a few other
needed files.
Don't forget to uninstall any conflicting previous Wine installation
first. Try either "dpkg -r wine" or "rpm -e wine" or "make uninstall"
before installing.
In case of library loading errors
(e.g. "Error while loading shared libraries: libntdll.so"), make sure
to add the library path to /etc/ld.so.conf and run ldconfig as root.
6. RUNNING PROGRAMS
When invoking Wine, you may specify the entire path to the executable,
or a filename only.
wine sol (using the search Path as specified in
wine sol.exe the config file to locate the file)
wine c:\\windows\\sol.exe (using DOS filename syntax)
wine /usr/windows/sol.exe (using Unix filename syntax)
wine sol.exe /parameter1 -parameter2 parameter3
(calling program with parameters)
Wine is not yet complete, so several programs may crash. In that crash
you will be dropped into the debugger so that you can investigate and
fix the problem. For more information on how to do this, please check
the debugging section of the Wine Developer's Guide.
Читайте также: