make :no rule to make target. stop

nahasapeemapetilon picture nahasapeemapetilon · Apr 21, 2016 · Viewed 8.6k times · Source

I am using lubuntu 32 bit in a virtual machine and my host is a windows 7 32 bit. I am trying to install ethercat master from Igh. I have successfully overcome across few errors and this error couldn't be resolved.

akhil@akhil-virtual-machine:~/etherlab/sources$ ls
aclocal.m4  autoconf        bootstrap  CodingStyle.txt  config.log  configure.ac  COPYING.LESSER  documentation  ethercat.spec.in  FEATURES   include  Kbuild.in  m4           Makefile.in  NEWS    README.EoE  script  tool
AUTHORS     autom4te.cache  ChangeLog  config.h.in      configure   COPYING       devices         Doxyfile.in    examples          globals.h  INSTALL  lib        Makefile.am  master       README  rtdm        TODO    tty
akhil@akhil-virtual-machine:~/etherlab/sources$ make all modules
make: *** No rule to make target 'all'.  Stop.

My make file:

ACLOCAL_AMFLAGS = -I m4

SUBDIRS = \
    devices \
    include \
    master \
    script

if BUILD_TOOL
SUBDIRS += tool
endif

if ENABLE_USERLIB
SUBDIRS += lib
endif

if ENABLE_TTY
SUBDIRS += tty
endif

if ENABLE_RTDM
SUBDIRS += rtdm
endif

# userspace example depends on lib/
SUBDIRS += examples

DIST_SUBDIRS = \
    devices \
    examples \
    include \
    lib \
    m4 \
    master \
    script \
    tool \
    rtdm \
    tty

noinst_HEADERS = \
    globals.h

EXTRA_DIST = \
    Doxyfile.in \
    FEATURES \
    Kbuild.in \
    README.EoE \
    ethercat.spec \
    ethercat.spec.in

BUILT_SOURCES = \
    Doxyfile \
    Kbuild \
    ethercat.spec

modules:
    $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" modules

modules_install:
    $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" \
        INSTALL_MOD_DIR="$(INSTALL_MOD_DIR)" modules_install

clean-local:
    $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="@abs_srcdir@" clean

mydist:
    hg log --style=changelog $(srcdir) > ChangeLog
    @REV=`hg id -i $(srcdir)` && \
        $(MAKE) dist-bzip2 distdir=$(PACKAGE)-$(VERSION)-$${REV}

dist-hook:
    if which hg >/dev/null 2>&1; then \
        hg id -i $(srcdir) 2>/dev/null >$(distdir)/revision; \
    fi

mrproper: clean cleandoc
    rm -rf \
        *~ \
        ChangeLog \
        Doxyfile \
        Kbuild \
        Makefile \
        Makefile.in \
        TAGS \
        aclocal.m4 \
        autoconf \
        autom4te.cache \
        config.h \
        config.h.in \
        config.log \
        config.status \
        configure \
        configure.in \
        libtool \
        stamp-h1

doc:
    doxygen Doxyfile

cleandoc:
    @rm -rf doxygen-output

------------------------------------------------------------------------------

Answer

arved picture arved · Apr 21, 2016

You need to first run ./configure. There is no Makefile in your directory