LINUX.ORG.RU

Не работает make для другого каталога

 ,


0

1

У меня такая структура проекта:

projects/prj1/src

projects/prj2/src

Когда я компилирую проект prj2 и все исходники лежат тут projects/prj2/src - всё работает... Но если я хочу подцепить исходники из projects/prj1/src, то возникает ошибка.

Почему так происходит?



Последнее исправление: sitev_ru (всего исправлений: 1)

хочу подцепить

Что ты хочешь сделать с исходниками?

возникает ошибка

Которая написана на древнегреческом и поэтому ты её не то что понять, но даже перепечатать сюда не можешь?

Почему так происходит?

Потому что ты делаешь что-то странное и никому не рассказываешь что именно.

MimisGotAPlan
()
Ответ на: комментарий от MimisGotAPlan

Я по всякому извращаюсь, разные ошибки...

Например, такая:

Нет правила для сборки цели "../prj1/src/file1.o", требуемый для «prj2»

sitev_ru
() автор топика
Ответ на: комментарий от sitev_ru

prj1

Ну где-то у тебя в Makefile написано «prj1», а исходники лежат в «prj2».

MimisGotAPlan
()

Вообще лучше было бы выложить Makefile, сообщения об ошибках и вывод команды

ls -R
для верхнего каталога projects. Иначе можно только сказать, что где-то что-то не так в Makefile.

aureliano15 ★★
()
Ответ на: комментарий от sitev_ru

У меня задано src/%.o: ../src/%.o

Странное правило. Оно говорит, что объектники, лежащие в подкаталоге src текущего каталога, должны получаться из объектников, лежащих в подкаталоге src, находящегося внутри каталога, который на один уровень выше, чем текущий.

Лучше всё-таки кинуть полное содержимое Makefile, полный лог ошибок команды make и содержимое всех подкаталогов projects/, которое можно получить по команде ls с опцией -R. А для наглядности каждый из этих 3 блоков заключить в пару тегов [code]...[/code] ( см. www.linux.org.ru/help/lorcode.md )

aureliano15 ★★
()

Если я правильно помню, то надо использовать SUBDIR вот так. Вот стуктура.
project/Makefile.am

SUBDIRS=prj1/src prj2/src
project/prj1/Makefile.am
bin_PROGRAMS=test1
test1_SOURCES=main.c new.c
AUTOMAKE_OPTIONS=foreign
project/prj2/Makefile.am
bin_PROGRAMS=test2
test2_SOURCES=main.c new.c
AUTOMAKE_OPTIONS=foreign

u0atgKIRznY5
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.