make: *** No rule to make target `plugins'.

  • arvdr:/usr/src/vdr/PLUGINS# cd /usr/src/vdr/PLUGINS/src
    arvdr:/usr/src/vdr/PLUGINS/src# cd reelchannelscan
    arvdr:/usr/src/vdr/PLUGINS/src/reelchannelscan# dir
    COPYING Makefile channels.conf csmenu.c dirfiles.c filter.h patches service.h transponders.h
    HISTORY README channelscan.c csmenu.h dirfiles.h i18n.c scan.c transponders
    HISTORY.old TODO channelscan.h debug.h filter.c i18n.h scan.h transponders.c
    arvdr:/usr/src/vdr/PLUGINS/src/reelchannelscan# cd ../..
    arvdr:/usr/src/vdr/PLUGINS# make plugins
    make: *** No rule to make target `plugins'. Stop.


    как побороть эту ошибку ?

  • в какой директории надо выполнять make all или make plugins ?
    согласно вики


    ===========================
    Для вызова компилятора перейдите в корневой каталог VDR и запусьтите процесс компиляции
    cd ../..
    make plugins
    ==========================
    пробую и получаю
    arvdr:/usr/src/vdr/PLUGINS/src/reelchannelscan# cd ../..
    arvdr:/usr/src/vdr/PLUGINS# make all
    make: *** No rule to make target `all'. Stop.


    процесс пошел из /usr/src/vdr/PLUGINS/src/reelchannelscan
    но что-то многого не хватает в моей системе....


    arvdr:/usr/src/vdr/PLUGINS/src/reelchannelscan# make all
    g++ -fPIC -O2 -Wall -Woverloaded-virtual -m32 -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"reelchannelscan"' -DVDRDIR=\"../../..\" -DNDEBUG -DWITH_EIT -I../../../include -I/include channelscan.c
    In file included from channelscan.c:27:
    i18n.h:12:22: error: vdr/i18n.h: No such file or directory
    i18n.h:13:24: error: vdr/config.h: No such file or directory
    In file included from channelscan.c:28:
    service.h:14:25: error: vdr/osdbase.h: No such file or directory
    In file included from channelscan.c:29:
    csmenu.h:20:26: error: vdr/channels.h: No such file or directory
    csmenu.h:21:27: error: vdr/menuitems.h: No such file or directory
    csmenu.h:22:24: error: vdr/thread.h: No such file or directory
    csmenu.h:23:25: error: vdr/sources.h: No such file or directory
    In file included from csmenu.h:26,
    from channelscan.c:29:
    scan.h:16:24: error: vdr/device.h: No such file or directory
    scan.h:18:21: error: vdr/eit.h: No such file or directory
    In file included from scan.h:19,
    from csmenu.h:26,
    from channelscan.c:29:
    filter.h:12:24: error: vdr/filter.h: No such file or directory
    filter.h:14:27: error: libsi/section.h: No such file or directory
    filter.h:15:30: error: libsi/descriptor.h: No such file or directory
    In file included from scan.h:22,
    from csmenu.h:26,
    from channelscan.c:29:
    channelscan.h:29:24: error: vdr/plugin.h: No such file or directory
    i18n.h:15: error: 'tI18nPhrase' does not name a type
    service.h:24: error: ISO C++ forbids declaration of 'cOsdMenu' with no type
    service.h:24: error: expected ';' before '*' token
    transponders.h:86: error: 'cChannel' has not been declared
    transponders.h:138: error: 'cChannel' has not been declared
    transponders.h:152: error: 'cChannel' has not been declared
    transponders.h:169: error: 'cChannel' has not been declared
    filter.h:38: error: expected class-name before '{' token
    filter.h:38: warning: 'class PatFilter' has virtual functions but non-virtual destructor
    filter.h:71: error: 'uchar' has not been declared
    filter.h:73: error: expected class-name before '{' token
    filter.h:79: error: 'cSectionSyncer' does not name a type
    filter.h:73: warning: 'class SdtFilter' has virtual functions but non-virtual destructor
    filter.h:96: error: expected class-name before '{' token
    filter.h:105: error: 'cSectionSyncer' does not name a type
    filter.h:106: error: 'MAXNITS' was not declared in this scope
    filter.h:96: warning: 'class NitFilter' has virtual functions but non-virtual destructor
    channelscan.h:47: error: expected class-name before '{' token
    channelscan.h:61: error: ISO C++ forbids declaration of 'cOsdObject' with no type
    channelscan.h:61: error: 'cOsdObject' declared as a 'virtual' field
    channelscan.h:61: error: expected ';' before '*' token
    channelscan.h:62: error: ISO C++ forbids declaration of 'cMenuSetupPage' with no type
    channelscan.h:62: error: 'cMenuSetupPage' declared as a 'virtual' field
    channelscan.h:62: error: expected ';' before '*' token
    channelscan.h: In member function 'virtual const char* cPluginChannelscan::Description()':
    channelscan.h:54: error: 'tr' was not declared in this scope
    channelscan.h: In member function 'virtual const char* cPluginChannelscan::MainMenuEntry()':
    channelscan.h:60: error: 'tr' was not declared in this scope
    channelscan.h: At global scope:
    channelscan.h:73: error: expected class-name before '{' token
    channelscan.h:73: warning: 'class cMenuChannelscanSetup' has virtual functions but non-virtual destructor
    scan.h:41: error: expected class-name before '{' token
    scan.h:51: error: 'cChannel' has not been declared
    scan.h:52: error: 'cChannel' has not been declared
    scan.h:53: error: 'cChannel' has not been declared
    scan.h:54: error: 'cChannel' has not been declared
    scan.h:60: error: ISO C++ forbids declaration of 'cDevice' with no type
    scan.h:60: error: expected ';' before '*' token
    scan.h:61: error: ISO C++ forbids declaration of 'cChannel' with no type
    scan.h:61: error: expected ';' before '*' token
    scan.h:82: error: ISO C++ forbids declaration of 'cEitFilter' with no type
    scan.h:82: error: expected ';' before '*' token
    scan.h:41: warning: 'class cScan' has virtual functions but non-virtual destructor
    dirfiles.h:52: error: expected class-name before '{' token
    dirfiles.h:69: error: expected ',' or '...' before '&' token
    dirfiles.h:69: error: ISO C++ forbids declaration of 'cListObject' with no type
    dirfiles.h:109: error: expected template-name before '<' token
    dirfiles.h:109: error: expected `{' before '<' token
    dirfiles.h:109: error: expected unqualified-id before '<' token
    dirfiles.h:126: error: invalid use of undefined type 'class cDirectoryFiles'
    dirfiles.h:109: error: forward declaration of 'class cDirectoryFiles'
    dirfiles.h: In member function 'void cDirectoryFiles::DumpEntries()':
    dirfiles.h:128: error: 'path_' was not declared in this scope
    dirfiles.h:129: error: 'First' was not declared in this scope
    dirfiles.h:129: error: 'Next' was not declared in this scope
    csmenu.h: At global scope:
    csmenu.h:33: error: 'cMutex' does not name a type
    csmenu.h:46: error: expected class-name before '{' token
    csmenu.h:48: error: 'cSetup' does not name a type
    csmenu.h:96: error: 'eOSState' does not name a type
    csmenu.h:111: error: expected class-name before '{' token
    csmenu.h:123: error: 'eOSState' does not name a type
    csmenu.h:111: warning: 'class cMenuScanActive' has virtual functions but non-virtual destructor
    csmenu.h:131: error: expected class-name before '{' token
    csmenu.h:144: error: expected class-name before '{' token
    csmenu.h:146: error: 'cSetup' does not name a type
    csmenu.h:144: warning: 'class cMenuSetupBase' has virtual functions but non-virtual destructor
    csmenu.h:159: error: ISO C++ forbids declaration of 'cSource' with no type
    csmenu.h:159: error: expected ';' before '*' token
    csmenu.h:172: error: 'eOSState' does not name a type
    csmenu.h:155: warning: 'class cMenuSetupLNB' has virtual functions but non-virtual destructor
    csmenu.h:178: error: expected class-name before '{' token
    csmenu.h:180: error: ISO C++ forbids declaration of 'cSource' with no type
    csmenu.h:180: error: expected ';' before '*' token
    csmenu.h:185: error: 'eOSState' does not name a type
    csmenu.h:178: warning: 'class cMenuEditSrcItem' has virtual functions but non-virtual destructor
    csmenu.h:190: error: expected class-name before '{' token
    csmenu.h:197: error: expected class-name before '{' token
    csmenu.h:206: error: expected class-name before '{' token
    channelscan.c: In constructor 'cMenuChannelscanSetup::cMenuChannelscanSetup()':
    channelscan.c:43: error: 'tr' was not declared in this scope
    channelscan.c: In member function 'virtual void cMenuChannelscanSetup::Setup()':
    channelscan.c:51: error: 'Current' was not declared in this scope
    channelscan.c:52: error: 'Clear' was not declared in this scope
    channelscan.c:54: error: expected type-specifier before 'cMenuEditStraItem'
    channelscan.c:54: error: expected `)' before 'cMenuEditStraItem'
    channelscan.c:54: error: 'Add' was not declared in this scope
    channelscan.c:56: error: 'Get' was not declared in this scope
    channelscan.c:56: error: 'SetCurrent' was not declared in this scope
    channelscan.c:57: error: 'Display' was not declared in this scope
    channelscan.c: In member function 'virtual void cMenuChannelscanSetup::Store()':
    channelscan.c:62: error: 'SetupStore' was not declared in this scope
    channelscan.c: In member function 'virtual bool cPluginChannelscan::Start()':
    channelscan.c:95: error: 'Phrases' was not declared in this scope
    channelscan.c:95: error: 'RegisterI18n' was not declared in this scope
    channelscan.c: At global scope:
    channelscan.c:103: error: expected constructor, destructor, or type conversion before '*' token
    channelscan.c:111: error: expected constructor, destructor, or type conversion before '*' token
    channelscan.c: In member function 'virtual bool cPluginChannelscan::Service(const char*, void*)':
    channelscan.c:144: error: 'esyslog' was not declared in this scope
    channelscan.c: At global scope:
    channelscan.c:165: error: expected constructor, destructor, or type conversion before ';' token
    make: *** [channelscan.o] Error 1

  • в корне make plugins, тогда процесс идёт рекурсивно по всем директориям плагинов и вызывает в каждом make all
    а в директории плагина make all
    но перед тем как собирать отдельный плагин надо в корне вызвать make include-dir и только потом переходить в директорию плагина