Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

ifort link under cygwin

david_ifort
Beginner
2,484 Views

Hi,
I am trying compile and link my FORTRAN code under cygwin environment.
My code needs to link a library libHYPRE.lib, which was generated by gcc
under cygwin.
The compile was OK, but the link had error as follows. Can anyone help
me? thanks in advance.

David


ifort module11.obj module12.obj module1.obj ads0.obj gmsini.obj vis0.obj rperm0.obj outdt3.obj alloc1.obj alloc2.obj alloc3.obj flux.obj mayer.obj hystmw.obj hyswwg.obj hyswws.obj resread.obj welread.obj cubic2.obj dpread.obj adoil.obj init.obj phabio.obj thirdd.obj aamain.obj densty.obj inst.obj odistm1.obj rstart.obj trapno.obj abnc.obj eacnms.obj ioncng.obj odiswo.obj single.obj try.obj adsorb.obj engbal.obj isamax.obj omofr.obj slv2eq.obj twoalc.obj alcptn.obj f.obj isrcheq.obj outdt1.obj solb.obj utfoam.obj asign1.obj file1.obj isrcheqi.obj outdt2.obj solmat.obj vgamma.obj asign2.obj file2.obj isrchfge.obj phasc.obj solve.obj viscos.obj bioread.obj file3.obj jacup.obj phcomp.obj sumtab.obj well.obj biosolve.obj g.obj jcg.obj printi.obj tcap.obj wellck.obj bundry.obj gauss.obj lauwer.obj printo.obj tdiffu.obj wellix.obj capnum.obj gel.obj manipl.obj prints.obj tielin.obj wheneq.obj coneq.obj georead.obj metric.obj qrate.obj time0.obj wmeacn.obj csecal.obj grdfac.obj moppst.obj radius.obj totals.obj cseod.obj noneq.obj reactr.obj tran1.obj matrixconv.obj cubic.obj ilsum.obj noneqk.obj renam1.obj trans.obj cvmgt.obj inname.obj nslug.obj renam2.obj trap.obj ddriv2.obj inout.obj odistm.obj revise.obj trapg.obj utchem_hypre.obj hypresolver.obj ./lib/libHYPRE.lib utchem93
Intel Visual Fortran Compiler Professional for applications running on IA-32, Version 11.1 Build 20090624 Package ID: w_cprof_p_11.1.038
Copyright (C) 1985-2009 Intel Corporation. All rights reserved.
ifort: command line warning #10161: unrecognized source type 'utchem93'; object file assumed

link: unknown option -- o
Try `link --help' for more information.
make: *** [utchem93] Error 1

0 Kudos
13 Replies
TimP
Honored Contributor III
2,484 Views
Beginning at the end: ifort is passing arguments to link that the cygwin link.exe doesn't accept, so you must specify the Microsoft link, for example by -Qlocation,link,"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin"

(in the case of VS2008) on command line options, or in ifort.cfg.
Otherwise, assuming that all your objects are 32-bit, you might be able to get cygwin link.exe to work, but you would have to specify explicitly the ifort libraries, and also explicitly invoke the cygwin link and the appropriate VS libraries. No, you can't do it without the MS libraries, at least those provided in the vs2008 shell installation (if it's a recent ifort version).

Next, your library should be built with a "native Windows" compiler, such as mingw32 (including cygwin mingw cross compiler) or vc, without dependencies on cygwin specific libraries such as cygwin1.dll.
Assuming that you make a library of .o files rather than .obj, that isn't necessarily a show stopper, but it will produce a complaint from (Microsoft) link.exe for each such object.
It's fairly unusual that all these limitations can be overcome for linking gcc and ifort objects together.

Nearly last, as you were warned, we don't know what you mean by utchem93.
Finally, it's far from certain that the cygwin style path for your .lib will work in the context of searching by Microsoft link.exe, but we'll leave that until you give it a chance.
0 Kudos
david_ifort
Beginner
2,484 Views
I started "Intel visual Fortran Compiler Professional for applications runningon IA-32" first, then run cygwin.So for the compilation, it worked very well, that can created .obj files.
The library libHYPRE.lib was createdby gcc under cygwin.
Then Iused "link" of ifort to createthe final excutable file "utchem93".
Under linux,it can be done,for example,as follows
iforta1.o a2.o a3.o a4.o -o a.ex
Butunder cygwin, it looks different. Even without .lib, ifort can not link all .obj togather.
I needthe help to link with ifort for all .obj files, thanks.

David

0 Kudos
TimP
Honored Contributor III
2,484 Views
If utchem is the name of your .exe, you must specify that using Microsoft style options. I often simply put a mv from the default .exe name in my Makefile. As you said, even on linux, you must specify what the name is meant as by -o.
You didn't say if you have taken any advice; if so, what problems remain. So I doubt much more help can be given.
0 Kudos
david_ifort
Beginner
2,484 Views
Thanks for your help.

I do want to take your advices, but I don't know how to do it.
Ihave not used Visual studio compiler so far. I only used gcc and ifort as my compiler.
Do you mean that I still need to use Visual studio link to link all .obj files ? Thanks.

David
0 Kudos
david_ifort
Beginner
2,484 Views
Hi Tim18,

I tried this way by followingyour suggestion(please check if itis correct) as follows
add "C:\Program Files\Microsoft Visual Studio 8\VC\bin"
into ifort.cfg,soit becomes

# This Configuration file may be used for additional switches
"C:\Program Files\Microsoft Visual Studio 8\VC\bin"

add "mv" into makefile before utchem93 as follows, there is still errors about it. Any suggestion? thanks.

David

ifort module11.obj module12.obj module1.obj ads0.obj gmsini.obj vis0.obj rperm0.obj outdt3.obj alloc1.obj alloc2.obj alloc3.obj flux.obj mayer.obj hystmw.obj hyswwg.obj hyswws.obj resread.obj welread.obj cubic2.obj dpread.obj adoil.obj init.obj phabio.obj thirdd.obj aamain.obj densty.obj inst.obj odistm1.obj rstart.obj trapno.obj abnc.obj eacnms.obj ioncng.obj odiswo.obj single.obj try.obj adsorb.obj engbal.obj isamax.obj omofr.obj slv2eq.obj twoalc.obj alcptn.obj f.obj isrcheq.obj outdt1.obj solb.obj utfoam.obj asign1.obj file1.obj isrcheqi.obj outdt2.obj solmat.obj vgamma.obj asign2.obj file2.obj isrchfge.obj phasc.obj solve.obj viscos.obj bioread.obj file3.obj jacup.obj phcomp.obj sumtab.obj well.obj biosolve.obj g.obj jcg.obj printi.obj tcap.obj wellck.obj bundry.obj gauss.obj lauwer.obj printo.obj tdiffu.obj wellix.obj capnum.obj gel.obj manipl.obj prints.obj tielin.obj wheneq.obj coneq.obj georead.obj metric.obj qrate.obj time0.obj wmeacn.obj csecal.obj grdfac.obj moppst.obj radius.obj totals.obj cseod.obj noneq.obj reactr.obj tran1.obj matrixconv.obj cubic.obj ilsum.obj noneqk.obj renam1.obj trans.obj cvmgt.obj inname.obj nslug.obj renam2.obj trap.obj ddriv2.obj inout.obj odistm.obj revise.obj trapg.obj utchem_hypre.obj hypresolver.obj ./lib/libHYPRE.lib mv utchem93
Intel Visual Fortran Compiler Professional for applications running on IA-32, Version 11.1 Build 20090624 Package ID: w_cprof_p_11.1.038
Copyright (C) 1985-2009 Intel Corporation. All rights reserved.
ifort: command line warning #10161: unrecognized source type 'C:\Program Files\Microsoft Visual Studio 8\VC\bin'; object file assumed
ifort: command line warning #10161: unrecognized source type 'mv'; object file assumed
ifort: command line warning #10161: unrecognized source type 'utchem93'; object file assumed

link: unknown option -- o
Try `link --help' for more information.
make: *** [utchem93] Error 1

0 Kudos
TimP
Honored Contributor III
2,484 Views
The path to your MSVC link directory is given with a -Qlocation,link option, as stated before. You won't be able to link without use of the Microsoft link and libraries.
The mv suggestion is to allow link to choose its own name for .exe (probably according to name of the first .obj) then rename it in a subsequent step. If you wish to do it in a single command you must use the ifort .exe naming option (/Fe) which is passed on to MSVC link, which isn't too bad if no path naming style conversion is required.
0 Kudos
david_ifort
Beginner
2,484 Views

Hi Tim18,

I am lost for your sugestion. Where can I add the link information you mentioned here?
inifort.cfg as follows
# This Configuration file may be used for additional switches
-Qlocation "C:\Program Files\Microsoft Visual Studio 8\VC\bin"
or another file? thanks.

For mv option, is it the same as "-o" in linuxmakefile? thanks.

David

0 Kudos
TimP
Honored Contributor III
2,484 Views
It's -Qlocation,link,
Please read the ifort docs if you don't believe me.

I'm simply suggesting, if you allow VC link to choose a name whatever.exe, you simply rename it to whatever you want.
I have makefiles with a rule like
mv mains.exe myapp.exe
following the link step.
0 Kudos
Kevin_D_Intel
Employee
2,484 Views
Yes, ifort.cfg is correct. As Tim indicates, there's syntax issues with your edit. Your edit should be:

-Qlocation,link,"C:\Program Files\Microsoft Visual Studio 8\VC\bin"

I wrote an article recently about one method for using Intel compilers under Cygwin (here) that's a bit more versatile than editing this file. Might be of help to you too.

Also, -o works with the 11.1 compilers but only for naming the executable and with the requirement a space appear between the option and the argument (e.g. -o myexe). That's discussed in the article too.
0 Kudos
david_ifort
Beginner
2,484 Views

Hi Tim18,
Thank you very much for your help. I believe you, and I hopeyour suggestioncan solve
my problem. You are right, link option you mentioned works well nows.

But there is still the following inconsistence between linux andCygwin compilation.
One file,hypresolver.f,inmy application code needs to callthefunction names in
libHYPRE.lib, which iwasgenerated fromgcc compiler under cygwin, but it can not
find thenames of functions inlibHYPRE.libas follows.

Under linux I canfind the solution about it, but here I need your help on the compilation
options for hypresolver.f so that the called function names in hypresolver.f match the style
of functionnamesin libHYPRE.lib, thanks in advance.

David

ifort -I ./hypre/include -c .obj hypresolver.f -o hypresolver
Intel Visual Fortran Compiler Professional for applications running on IA-32, Version 11.1 Build 20090624 Package ID: w_cprof_p_11.1.038
Copyright (C) 1985-2009 Intel Corporation. All rights reserved.

ifort: warning #10146: no action performed for specified object file(s)
ifort module11.obj module12.obj module1.obj ads0.obj gmsini.obj vis0.obj rperm0.obj outdt3.obj alloc1.obj alloc2.obj alloc3.obj flux.obj mayer.obj hystmw.obj hyswwg.obj hyswws.obj resread.obj welread.obj cubic2.obj dpread.obj adoil.obj init.obj phabio.obj thirdd.obj aamain.obj densty.obj inst.obj odistm1.obj rstart.obj trapno.obj abnc.obj eacnms.obj ioncng.obj odiswo.obj single.obj try.obj adsorb.obj engbal.obj isamax.obj omofr.obj slv2eq.obj twoalc.obj alcptn.obj f.obj isrcheq.obj outdt1.obj solb.obj utfoam.obj asign1.obj file1.obj isrcheqi.obj outdt2.obj solmat.obj vgamma.obj asign2.obj file2.obj isrchfge.obj phasc.obj solve.obj viscos.obj bioread.obj file3.obj jacup.obj phcomp.obj sumtab.obj well.obj biosolve.obj g.obj jcg.obj printi.obj tcap.obj wellck.obj bundry.obj gauss.obj lauwer.obj printo.obj tdiffu.obj wellix.obj capnum.obj gel.obj manipl.obj prints.obj tielin.obj wheneq.obj coneq.obj georead.obj metric.obj qrate.obj time0.obj wmeacn.obj csecal.obj grdfac.obj moppst.obj radius.obj totals.obj cseod.obj noneq.obj reactr.obj tran1.obj matrixconv.obj cubic.obj ilsum.obj noneqk.obj renam1.obj trans.obj cvmgt.obj inname.obj nslug.obj renam2.obj trap.obj ddriv2.obj inout.obj odistm.obj revise.obj trapg.obj utchem_hypre.obj hypresolver.obj ./lib/libHYPRE.lib -o utchem93
Intel Visual Fortran Compiler Professional for applications running on IA-32, Version 11.1 Build 20090624 Package ID: w_cprof_p_11.1.038
Copyright (C) 1985-2009 Intel Corporation. All rights reserved.

Microsoft Incremental Linker Version 8.00.50727.42
Copyright (C) Microsoft Corporation. All rights reserved.

-out:utchem93.exe
-subsystem:console
module11.obj
module12.obj
module1.obj
ads0.obj
gmsini.obj
vis0.obj
rperm0.obj
outdt3.obj
alloc1.obj
alloc2.obj
alloc3.obj
flux.obj
mayer.obj
hystmw.obj
hyswwg.obj
hyswws.obj
resread.obj
welread.obj
cubic2.obj
dpread.obj
adoil.obj
init.obj
phabio.obj
thirdd.obj
aamain.obj
densty.obj
inst.obj
odistm1.obj
rstart.obj
trapno.obj
abnc.obj
eacnms.obj
ioncng.obj
odiswo.obj
single.obj
try.obj
adsorb.obj
engbal.obj
isamax.obj
omofr.obj
slv2eq.obj
twoalc.obj
alcptn.obj
f.obj
isrcheq.obj
outdt1.obj
solb.obj
utfoam.obj
asign1.obj
file1.obj
isrcheqi.obj
outdt2.obj
solmat.obj
vgamma.obj
asign2.obj
file2.obj
isrchfge.obj
phasc.obj
solve.obj
viscos.obj
bioread.obj
file3.obj
jacup.obj
phcomp.obj
sumtab.obj
well.obj
biosolve.obj
g.obj
jcg.obj
printi.obj
tcap.obj
wellck.obj
bundry.obj
gauss.obj
lauwer.obj
printo.obj
tdiffu.obj
wellix.obj
capnum.obj
gel.obj
manipl.obj
prints.obj
tielin.obj
wheneq.obj
coneq.obj
georead.obj
metric.obj
qrate.obj
time0.obj
wmeacn.obj
csecal.obj
grdfac.obj
moppst.obj
radius.obj
totals.obj
cseod.obj
noneq.obj
reactr.obj
tran1.obj
matrixconv.obj
cubic.obj
ilsum.obj
noneqk.obj
renam1.obj
trans.obj
cvmgt.obj
inname.obj
nslug.obj
renam2.obj
trap.obj
ddriv2.obj
inout.obj
odistm.obj
revise.obj
trapg.obj
utchem_hypre.obj
hypresolver.obj
./lib/libHYPRE.lib
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJMATRIXCREATE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJMATRIXSETOBJECTTYPE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJMATRIXINITIALIZE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJMATRIXSETVALUES referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJMATRIXASSEMBLE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJMATRIXGETOBJECT referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORCREATE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORSETOBJECTTYPE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORINITIALIZE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORSETVALUES referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORASSEMBLE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORGETOBJECT referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGCREATE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETPRINTLEVEL referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETCOARSENTYPE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETSTRONGTHRSHLD referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETTRUNCFACTOR referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETRELAXTYPE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETNUMSWEEPS referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETMAXLEVELS referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETTOL referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETMAXITER referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSETUP referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGSOLVE referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGGETFINALRELTVRES referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGGETNUMITERATIONS referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_IJVECTORGETVALUES referenced in function _HYPRESOLVER
hypresolver.obj : error LNK2019: unresolved external symbol _HYPRE_BOOMERAMGDESTROY referenced in function _HYPRESOLVER
utchem93.exe : fatal error LNK1120: 28 unresolved externals
make: *** [utchem93] Error 96

0 Kudos
david_ifort
Beginner
2,484 Views

Hi Kevin,

You are right. The link option works well now, and "-o" can works well for
Cygwin, thanks you very much.

Please take a look at my current problem on the lastest post to see how I
can compile the hypresolver.f to let it can reach the functions in libHYPRE.lib,
thanks.

David

0 Kudos
TimP
Honored Contributor III
2,484 Views
It looks like you didn't take any measure to adjust for the default /Quppercase option of Fortran compilers intended for Visual Studio. If you want portable Fortran to C interface, you must USE iso_c_binding and specify the exact name of the C function. Otherwise, you can tinker with one of the other means for making them agree, e.g. as viewed in objdump.
0 Kudos
david_ifort
Beginner
2,484 Views

Hi all,

It has been long time for that none answers the above question. It may be too specific to answer, but I justfigured it out today.

There is another question about ifort's linking the library generated from gcc under cygwin. Whenlinking to HYPRE.lib, thesubroutinesin HYPRE.lib can not findsomebasic functions as follows.

Any suggestion will be appreciated.


David
utchem_hypre.obj : error LNK2019: unresolved external symbol _HYPRESOLVER referenced in function _HYPRE0
libHYPRE.lib(parilut.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Mat_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Mem.o) : error LNK2019: unresolved external symbol ___getreent referenced in function _MemDestroy
libHYPRE.lib(parutil.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(debug.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Matrix.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(ParaSails.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Vec_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(mat_dh_private.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Factor_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(SubdomainGraph_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(krylov_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(ilu_mpi_pilu.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Mem_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(csr_matop.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_csr_matop_marked.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(sig_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_cr.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(csr_matvec.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(globalObjects.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(Euclid_dh.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_vector.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(HYPRE_parcsr_Euclid.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(vector.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_gsmg.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(hypre_memory.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_csr_matvec.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_csr_matrix.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(csr_matrix.o) : error LNK2001: unresolved external symbol ___getreent
libHYPRE.lib(par_gsmg.o) : error LNK2019: unresolved external symbol __alloca referenced in function _hypre_BoomerAMGBuildInterpLS
libHYPRE.lib(Matrix.o) : error LNK2001: unresolved external symbol __alloca
libHYPRE.lib(par_cr.o) : error LNK2019: unresolved external symbol _drand48 referenced in function _cr
libHYPRE.lib(timer.o) : error LNK2019: unresolved external symbol _sysconf referenced in function _time_getWallclockSeconds
libHYPRE.lib(timer.o) : error LNK2019: unresolved external symbol _times referenced in function _time_getWallclockSeconds
libHYPRE.lib(serilut.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(StoredRows.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(LoadBal.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(RowPatt.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(parilut.o) : error LNK2019: unresolved external symbol ___assert_func referenced in function _hypre_ComputeCommInfo
libHYPRE.lib(Matrix.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(ParaSails.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(trifactor.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(Hash.o) : error LNK2001: unresolved external symbol ___assert_func
libHYPRE.lib(Vec_dh.o) : error LNK2019: unresolved external symbol _random referenced in function _Vec_dhSetRand
utchem93.exe : fatal error LNK1120: 8 unresolved externals
make: *** [utchem93] Error 96

0 Kudos
Reply