For Programmers: Free Programming Magazines  


Home > Archive > Fortran > January 2006 > Help with a makefile for Intel windows









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Help with a makefile for Intel windows
emammendes@gmail.com

2006-01-17, 8:01 am

Hello

I am using mingw32-make to compile my fortran codes with ifort under
windows. I confess I can't undersatnd makefile syntax (I've tried but
.....)

The Makefile is

PROG = Bispec

SRCS = f2kcli.for erf.for head.for dfft.for Bispec.for

OBJS = f2kcli.obj erf.obj head.obj dfft.obj Bispec.obj

LIBS =

INCS =

F90 = ifort
F90FLAGS = /nbs
LDFLAGS = /Vaxlib


all: $(PROG)

$(PROG): $(OBJS)
$(F90) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) $(INCS)

clean:
del $(PROG) $(OBJS) *.mod

..SUFFIXES: $(SUFFIXES) .for

..for.obj:
$(F90) $(F90FLAGS) -c $<



When I try "make" it returns

No rule to make target `f2kcli.obj` needed by `Bispec`

What am I missing?


There is anotehr problem make will issue a command m2c -c f2kcli.o
f2kcli.mod. How can I get rid of it? This a a module-2 file!

Many thanks

Ed

Erik Edelmann

2006-01-17, 8:01 am

On 2006-01-17, emammendes@gmail.com <emammendes@gmail.com> wrote:
> Hello
>
> I am using mingw32-make to compile my fortran codes with ifort under
> windows. I confess I can't undersatnd makefile syntax (I've tried but
> ....)
>
> The Makefile is


<...>

> .SUFFIXES: $(SUFFIXES) .for
>
> .for.obj:
> $(F90) $(F90FLAGS) -c $<
>
>
>
> When I try "make" it returns
>
> No rule to make target `f2kcli.obj` needed by `Bispec`
>
> What am I missing?
>
>
> There is anotehr problem make will issue a command m2c -c f2kcli.o
> f2kcli.mod. How can I get rid of it? This a a module-2 file!


I have not tested this but ...

The first of your problem might be solved by adding '.obj' to '.SUFFIXES:',
the second by removing predefined suffix rules with an empty '.SUFFIXES:'
line. IOW, replace

..SUFFIXES: $(SUFFIXES) .for

with

..SUFFIXES:
..SUFFIXES: .for .obj



Erik
emammendes@gmail.com

2006-01-17, 7:05 pm

Hi

Many thanks.

It worked! Now I have a link problme (with ifort)

ifort -o Bispec f2kcli.obj dfft.obj

Fatal error cannot open "ifconssl"
Problem during mulit-file optimization compilation.


Any ideas?

Cheers

Ed

Steve Lionel

2006-01-17, 7:05 pm

On 17 Jan 2006 06:14:35 -0800, emammendes@gmail.com wrote:


>It worked! Now I have a link problme (with ifort)
>
>ifort -o Bispec f2kcli.obj dfft.obj
>
>Fatal error cannot open "ifconssl"
>Problem during mulit-file optimization compilation.


Does it really say "ifconssl"? Or is it "ifconsol"? Sounds to me as if the
LIB environment variable does not include the path to the ifort library files.

Steve Lionel
Software Products Division
Intel Corporation
Nashua, NH

User communities for Intel Software Development Products
http://softwareforums.intel.com/
Intel Fortran Support
http://developer.intel.com/software/products/support/
emammendes@gmail.com

2006-01-17, 7:05 pm

Hi

ifconsol! Sorry ...

LIB is a command in my windows. How add to the right path? And to
which variable?

Many thanks

Ed

Steve Lionel

2006-01-17, 7:05 pm

On 17 Jan 2006 08:36:50 -0800, emammendes@gmail.com wrote:

>LIB is a command in my windows. How add to the right path? And to
>which variable?


I am referring to the LIB environment variable. The easiest way to deal with
this is to check the box during the ifort installation saying to update the
system environment variables. I am not familiar with the environment you are
using, but running the supplied ifortvars.bat file will also properly set the
environment variables for the current command prompt session. Otherwise, you
need to do whatever in your shell is the equivalent of the DOS command:

SET LIB="C:\Program Files\Intel\Compiler\Fortran\9.0\Ia32\Lib";%LIB%

The linker uses the LIB environment variable to search for libraries. You
apparently have already added to PATH the appropriate directories for the
compiler and linker. You just need to do the same with LIB.

Steve Lionel
Software Products Division
Intel Corporation
Nashua, NH

User communities for Intel Software Development Products
http://softwareforums.intel.com/
Intel Fortran Support
http://developer.intel.com/software/products/support/
emammendes@gmail.com

2006-01-17, 7:05 pm

Hello

There is something go on.

I did install intel with option of setting the variables. I have
checked under control->sysstem->advanced->environment variables and
there is a LIB variable

%ICPP_COMPILER90%\IA32\Lib;%IFORT_COMPIL
ER90%\IA32\Lib

There are lib, path, include but intel didn't update the system
variables. At least not for me (user duardo).

I included the path you sent me and now I got the following error:

ifort -o Bispec f2kcli.obj erf.obj head.obj dfft.obj Bispec.obj
IPO Error: unresolved : __aligned_malloc
Referenced in libifcoremt.lib(for_vm.obj)
IPO Error: unresolved : __aligned_free
Referenced in libifcoremt.lib(for_vm.obj)
ifort: error: could not find "\Bin"

intel on unix is so much easier ...

Many thanks

Ed

Steve Lionel

2006-01-17, 7:05 pm

On 17 Jan 2006 11:38:00 -0800, emammendes@gmail.com wrote:

> %ICPP_COMPILER90%\IA32\Lib;%IFORT_COMPIL
ER90%\IA32\Lib
>
>There are lib, path, include but intel didn't update the system
>variables. At least not for me (user duardo).


Odd. I haven't seen that.

Try this. Start..Programs..Intel Software Development Tools..Intel Fortran
Compiler 9.0..Fortran Build Environment For IA-32 Applications

This will open a command prompt window. Now do:

set lib

this will display the contents of the LIB environment variable. If you can
kick off your shell session from here, you should be golden. Otherwise, copy
the value displayed here to the system environment variable setting for LIB
(and remove any for your username.)

>
>I included the path you sent me and now I got the following error:


If you take my advice above, it should fix this too. You don't have all the
right library paths defined.

If you need more help, come ask at http://softwareforums.intel.com/

Steve Lionel
Software Products Division
Intel Corporation
Nashua, NH

User communities for Intel Software Development Products
http://softwareforums.intel.com/
Intel Fortran Support
http://developer.intel.com/software/products/support/
James Van Buskirk

2006-01-17, 7:05 pm

"Steve Lionel" <Steve.Lionel@REMOVEintelME.com> wrote in message
news:u1lqs1dk5l5sn702rfe4p9mod1d9b9tcmk@
4ax.com...

> Odd. I haven't seen that.


I have. The problem for me was that installation of
LF95 created an environmental variable under "User
variables for James" that seemed to overwrite the
LIB variable under "System variables". The fix for
me was simply to delete the former environmental
variable because LF95 had appropriately updated the
latter one. I don't think reinstalling ifort would
have fixed this issue.

--
write(*,*) transfer((/17.392111325966148d0,6.5794487871554595D-85, &
6.0134700243160014d-154/),(/'x'/)); end


emammendes@gmail.com

2006-01-18, 7:58 am

Hi

This is the output of "set lib"

LIB=C:\Program
Files\Intel\Compiler\Fortran\9. 0\Ia32\Lib;C:\PROGRA~1\MICROS~3\VC98\LIB
;C:\PROGRA~1\MICROS~3\VC98\MFC\LIB;C:\Pr
ogram
Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft
Visual Studio\VC98\lib;C:\Program
Files\Intel\Compiler\Fortran\9.0\Ia32\Lib;C:\Program
Files\Intel\Compiler\C++\9.0\IA32\Lib


However the linking problem didin't went away!


ifort -o Bispec f2kcli.obj erf.obj head.obj dfft.obj Bispec.obj
IPO Error: unresolved : __aligned_malloc
Referenced in libifcoremt.lib(for_vm.obj)
IPO Error: unresolved : __aligned_free
Referenced in libifcoremt.lib(for_vm.obj)
ifort: error: could not find "\Bin"

Any ideas?

Ed

Steve Lionel

2006-01-18, 7:03 pm

On 18 Jan 2006 02:04:41 -0800, emammendes@gmail.com wrote:

>
>This is the output of "set lib"
>
>LIB=C:\Program
>Files\Intel\Compiler\Fortran\9. 0\Ia32\Lib;C:\PROGRA~1\MICROS~3\VC98\LIB
;C:\PROGRA~1\MICROS~3\VC98\MFC\LIB;C:\Pr
ogram
>Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft
>Visual Studio\VC98\lib;C:\Program
>Files\Intel\Compiler\Fortran\9.0\Ia32\Lib;C:\Program
>Files\Intel\Compiler\C++\9.0\IA32\Lib


You have the Microsoft Visual Studio 98 libraries in the LIB path, but not
those of VS2002 or VS2003, which are required by Intel Fortran. Those should
come first (or only), so that the VC98 files are not seen.

Steve Lionel
Software Products Division
Intel Corporation
Nashua, NH

User communities for Intel Software Development Products
http://softwareforums.intel.com/
Intel Fortran Support
http://developer.intel.com/software/products/support/
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2009 codecomments.com