Ошибка компиляции драйвера Linux, невозможно использовать $ (shell pwd) / xxx в качестве пути включения - PullRequest
0 голосов
/ 03 августа 2011

Когда я компилирую свой привод Linux, я нахожу проблему:

У меня есть несколько способов определить путь включения

Относительный путь с помощью $ (shell pwd), но это не такt работа:

MOD_INC=$(shell pwd)/include
EXTRA_CFLAGS+=-I$(MOD_INC)

Я нашел: $ (shell pwd) == / home / myname / prj_svn

B abosulte path, работает:

MOD_INC=/home/myname/prj_svn/include
EXTRA_CFLAGS+=-I$(MOD_INC)

C определить путь, он работает:

PRJ_PATH=/home/myname/prj_svn
MOD_INC=$(PRJ_PATH)/include
EXTRA_CFLAGS+=-I$(MOD_INC)

Не знаю почему?

Я пробую их в проекте приложения, все они могут работать.

спасибо за вашу помощь!

1 Ответ

1 голос
/ 03 августа 2011

Make довольно часто меняет каталог при сборке;я не хотел бы полагаться на значение pwd в любой конкретный момент времени.

Как насчет определения переменной среды, называемой чем-то вроде MODULE_HOME, установки на /home/myname/prj_svn и записи всех вашихпути относительно этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...