Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
20 years ago

building project problem

Hi:

I followed the steps of the document "ecos of niosII" from step 6.1 to 6.3 ,and they are right. when I went to step 7: using IDE , I did according the document and set the "make INSTALL_DIR=/cygdrive/f/etest/test_install" ( f/etest/test_install is the directoy of the ecos project), when I choose the command "build project", the process is stopped because of the belown errors:

make INSTALL_DIR=/cygdrive/f/etest/test_install all

make: *** No rule to make target `all'. Stop.

the tools of me are:

QII5.0, nios5.0 b73c, ecos5nios5

os:xp sp2

who can help me?

thks

4 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    It looks like you haven't created the project in the correct directory. The project directory should contain a makefile (like the one provided in the examples directory).

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi monkey:

    I tried it again according to you but the result is same and failure, there was my steps:

    1)nios2configtool --ptf=/.././../std_1c20.ptf --cpu=cpu and start the config diag.

    2)choose the template "altera niosII board" and set "startup"=>"ROMRAM" ,SAVE the pjoject:" test" in the directory "h:/etest"

    3)build->library

    the building finished and no erro.

    4)I copy all the files in the directory " /../../ecos_current/examples " to the " h:/etest"

    5)change to the directory :cd h:/etest

    6)in the directory , make INSTALL_DIR=/cygdrive/h/etest/test_install ,and the procedure is successful and a serials of *.o files were created.

    7) "start=>program=>altera=>niosII IDE"

    8)file=>new=>project

    9) append "altera niosII " and choose "Advanced c/c++ Project" ,then click next

    10)filled the niosII project 's name is: hello_ecos ,and unselect "use the default location" ,settintg it to "h:/etest" , which is the directory of the "ecos build project"

    11)click next ,choose "maker builder" ,in the build command set "make INSTALL_DIR=/cygdrive/h/etest/test_install" and others did not change.

    12)click "finish"

    13)right click the niosii project "hello_ecos" and choose "build project" ,then the result is appear

    make INSTALL_DIR=/cygdrive/h/etest/test_install all

    make: *** No rule to make target `all'. Stop.

    why wrong is it ?

    I am crazy and the deadline is going. Can you or others help me?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I can't see what the problem is here, unless you've accidentally deleted the "all" target from your makefile.

    If you have a tight deadline, then you are probably best sticking with the command line build - since that seems to be working for you.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi:

    the following is all context of my make file:

    # Mostly written by Jonathan Larmour, Red Hat, Inc.# Reference to ecos.mak added by John Dallaway, eCosCentric Limited, 2003-01-20# This file is in the public domain and may be used for any purpose

    # Usage: make INSTALL_DIR=/path/to/ecos/install

    INSTALL_DIR=$$(INSTALL_DIR)# override on make command line

    include $(INSTALL_DIR)/include/pkgconf/ecos.mak

    XCC = $(ECOS_COMMAND_PREFIX)gcc

    XCXX = $(XCC)

    XLD = $(XCC)

    CFLAGS = -I$(INSTALL_DIR)/include

    CXXFLAGS = $(CFLAGS)

    LDFLAGS = -nostartfiles -L$(INSTALL_DIR)/lib -Ttarget.ld

    # RULES

    .PHONY: all clean

    all: hello twothreads simple-alarm serial

    clean:

    -rm -f hello hello.o twothreads twothreads.o

    -rm -f simple-alarm simple-alarm.o serial serial.o

    -rm -f instrument-test instrument-test.o

    %.o: %.c

    $(XCC) -c -o $*.o $(CFLAGS) $(ECOS_GLOBAL_CFLAGS) $<

    %.o: %.cxx

    $(XCXX) -c -o $*.o $(CXXFLAGS) $(ECOS_GLOBAL_CFLAGS) $<

    %.o: %.C

    $(XCXX) -c -o $*.o $(CXXFLAGS) $(ECOS_GLOBAL_CFLAGS) $<

    %.o: %.cc

    $(XCXX) -c -o $*.o $(CXXFLAGS) $(ECOS_GLOBAL_CFLAGS) $<

    hello: hello.o

    $(XLD) $(LDFLAGS) $(ECOS_GLOBAL_LDFLAGS) -o $@ $@.o

    twothreads: twothreads.o

    $(XLD) $(LDFLAGS) $(ECOS_GLOBAL_LDFLAGS) -o $@ $@.o

    simple-alarm: simple-alarm.o

    $(XLD) $(LDFLAGS) $(ECOS_GLOBAL_LDFLAGS) -o $@ $@.o

    serial: serial.o

    $(XLD) $(LDFLAGS) $(ECOS_GLOBAL_LDFLAGS) -o $@ $@.o

    instrument-test: instrument-test.o

    $(XLD) $(LDFLAGS) $(ECOS_GLOBAL_LDFLAGS) -o $@ $@.o

    meanwhile ,which is copy from the directory /../ecos_current /examples/ ,I think it is not wrong. are you think so?

    another question:what is the different workbetween the " program_flash" ultity and "using IDE DEbug" , and if I success to program the flash by using "program_flash" ,I needn&#39;t use "using IDE DEBUG" the ecos design?