Author Topic: [need help]*** No rule to make target `xiso3d.o)'  (Read 8847 times)

xsjtu

  • Jr. Member
  • **
  • Posts: 16
[need help]*** No rule to make target `xiso3d.o)'
« on: December 16, 2015, 08:08:18 AM »
The error message is:
make[1]: Entering directory `wxq/ver84/program'
make[2]: Entering directory `wxq/ver84/program'
make[2]: *** No rule to make target `xiso3d.o)', needed by `wxq/ver84/Feap8_4.a'.  Stop.
make[2]: Leaving directory `wxq/ver84/program'
make[1]: *** [archive] Error 1
make[1]: Leaving directory `wxq/ver84/program'
makefile:21: recipe for target 'archive' failed
make: *** [archive] Error 2

Through Google, it seems that the "make" command cannot parse sentences like OBJS    = $(OBJSF:.c=.o)

This the error appears when the source code is compiled on supercomputer. However it is normal in PC with Ubuntu system.

Dose anyone have any suggestions?

Thank you very much!
« Last Edit: December 20, 2015, 07:33:00 AM by xsjtu »

K.Li

  • Full Member
  • ***
  • Posts: 191
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #1 on: December 16, 2015, 09:00:38 AM »
To "make" Feap8_4.a lib, you need "xiso3d.o". but "xiso3d.o" is missing during linking. So make sure your compiler did actually "make" xiso3d.o. Should it be "xiso3d.o"? Why it is asking for `xiso3d.o)'? 

xsjtu

  • Jr. Member
  • **
  • Posts: 16
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #2 on: December 16, 2015, 05:19:04 PM »
To "make" Feap8_4.a lib, you need "xiso3d.o". but "xiso3d.o" is missing during linking. So make sure your compiler did actually "make" xiso3d.o. Should it be "xiso3d.o"? Why it is asking for `xiso3d.o)'?

Thanks  for your reply. That is the problem. The make asks for `xiso3d.o)',so I think the make cannot parse the sentences in makefile like :
include ../makefile.in

SOURCES = $(wildcard $(FSOURCE)*.$(FEXT)) $(wildcard $(CSOURCE)*.$(CEXT))
OBJSF   = $(SOURCES:.f=.o)
OBJS    = $(OBJSF:.c=.o)
FL      = built_objs

Thus, all the makefile in Feap84 cannot be used. That's the problem.
So do you have further suggestions? Thank you very much.

xsjtu

  • Jr. Member
  • **
  • Posts: 16
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #3 on: December 17, 2015, 12:13:26 AM »

There is no problem when the feapv84 is compiled on the pc using ubuntu.

The problem occurs when I  compile it on supercomputer TH-2.

Any one have any suggestions?
Thanks a lot


K.Li

  • Full Member
  • ***
  • Posts: 191
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #4 on: December 17, 2015, 01:04:43 AM »
Are you using the same compiler and OS on Tianhe-2?

xsjtu

  • Jr. Member
  • **
  • Posts: 16
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #5 on: December 17, 2015, 01:25:04 AM »
No, the TH-2 has its own compiler and OS which is different with those on PC

FEAP_Admin

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 993
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #6 on: December 17, 2015, 10:45:54 AM »
The FEAP makefiles are rather standard but if your computer's make program does not understand them, then you have two choices.
(1) Look to see if there is another make on the computer -- perhaps there is a gmake and it may work?  Look around, many installations have a few options.
(2) Go through the directories that 'make install' calls and manually issue the compile command on *.f.  This is a bit of a pain but would be a reasonable work around (short of modifying the make files to match you computer's make program).  If you go this route you can save yourself some typing by first copying all the source files to 1 single directory.

xsjtu

  • Jr. Member
  • **
  • Posts: 16
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #7 on: December 20, 2015, 12:29:57 AM »
The FEAP makefiles are rather standard but if your computer's make program does not understand them, then you have two choices.
(1) Look to see if there is another make on the computer -- perhaps there is a gmake and it may work?  Look around, many installations have a few options.
(2) Go through the directories that 'make install' calls and manually issue the compile command on *.f.  This is a bit of a pain but would be a reasonable work around (short of modifying the make files to match you computer's make program).  If you go this route you can save yourself some typing by first copying all the source files to 1 single directory.

Thank you very much for your advice.


The gmake cannot work either.

The error still remains the same.

(cd program; make archive)
make[1]: Entering directory `wxq/ver84/program'
make[2]: Entering directory `wxq/ver84/program'
make[2]: *** No rule to make target `xiso3d.o)', needed by `wxq/ver84/Feap8_4.a'.  Stop.
make[2]: Leaving directory `wxq/ver84/program'
make[1]: *** [archive] Error 1
make[1]: Leaving directory `wxq/ver84/program'
gmake: *** [archive] Error 2[/size][/size]


The source files of the feap is original and no changes are made on any files. This error is very strange and make me feel confusing.
« Last Edit: December 20, 2015, 07:31:18 AM by xsjtu »

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #8 on: December 20, 2015, 10:24:40 AM »
Have you tried to compile any other program on this computer?  If not, write a small program and try to compile it.  If so, what were the options you used to successfully compile the program?

Do you have access to the system administrator for the computer?

xsjtu

  • Jr. Member
  • **
  • Posts: 16
Re: [need help]*** No rule to make target `xiso3d.o)'
« Reply #9 on: December 21, 2015, 12:37:50 AM »
Have you tried to compile any other program on this computer?  If not, write a small program and try to compile it.  If so, what were the options you used to successfully compile the program?

Do you have access to the system administrator for the computer?

Dear professor, thank you very much for your help.
The problem is caused by the 'make' program. it has been modified now, and the problem is solved.
Thanks a lot.