[CPMD-list] Re: CPMD-list digest, Vol 1 #442 - 1 msg
Axel Kohlmeyer
axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Mon Dec 29 07:38:48 CET 2003
>>> "CK" == Carl Krauthauser <krauthau at CCM.UDel.Edu> writes:
CK> Hello Axel!
hello carl,
CK> Thank you very much for taking a moment to respond to my post, it is
CK> greatly appreciated!
CK> I went through in some detail the function "printmemsize" in sysdepend.c;
CK> the downside is that I have no real experience programming in c/c++.
CK> Anyway, the "variable" 'sdtout' appears often, but not the "variable"
CK> 'sdtoutp'. I could have understood if it was complaining about not
CK> defining 'stdout', but I'm not seeing where 'stdoutp' is arising. Is
CK> there something more subtle going on?
exactly. stdout is a pointer to a structure for c-style buffered I/O.
how this is done internally, is different between operating systems
(sometimes even differently between different releases of the same
operating systems) and deliberately hidden from the user/programmer.
the internal interface is defined in the header files (e.g. in
/usr/include/), therefore you always have to compile c code 'against' a
_matching_ set of header files. since i am not aware of a freebsd intel
fortran compiler, i assume you are using the 'linux compatibility
module' and the intel linux fortran compiler, right? therefore you need
to compile the sysdepend.c with a (matching e.g. redhat 7.x or 8, or the
matching intel icc) linux compiler.
CK> I apologize for being a nuisance, and realize that the problem does not
CK> arise using linux (I have great success using CPMD with RH 8 & 9), but it
CK> is peculiar this little problem with 'stdoutp' using FreeBSD. I welcome
CK> any other thoughts!
well, is there a special reason (except for hack value) that you cannot
use the linux binaries on your freebsd machine? you could try a
statically linked binary from your redhat 8 machine.
take care,
axel kohlmeyer.
CK> Thank you very much for your help, Axel, it is greatly appreciated!
CK> Best Regards,
CK> Carl
CK> -------------------------------------------------------------------------------------------------------
CK> the two underscores in the missing symbol indicate, that this is
CK> a reference to some library internals. the name __stdout points
CK> to the stdout.h family of functions from the c-library. since
CK> sysdepend.c is the only c file in cpmd. so there must be a mismatch
CK> between your c and your fortran compiler. most likely, sysdepend.c
CK> was compiled by the freebsd gcc against freebsd c headers. if you
CK> don't have a freebsd-to-linux gcc availiable, you could try using
CK> the intel c/c++ compiler (icc) instead. you probably need to fix
CK> the CFLAGS variable in the makefile to include the proper header
CK> files also.
CK> hope this helps,
CK> axel kohlmeyer.
CK> Best Regards,
CK> Carl Krauthauser
CK> _______________________________________________
CK> CPMD-list mailing list
CK> CPMD-list at cpmd.org
CK> http://www.cpmd.org/mailman/listinfo/cpmd-list
CK> --
CK> =======================================================================
CK> Axel Kohlmeyer e-mail: axel.kohlmeyer at theochem.ruhr-uni-bochum.de
CK> Lehrstuhl fuer Theoretische Chemie Phone: ++49 (0)234/32-26673
CK> Ruhr-Universitaet Bochum - NC 03/53 Fax: ++49 (0)234/32-14045
CK> D-44780 Bochum http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/=======================================================================
CK> If you make something idiot-proof, the universe creates a better idiot.
CK> ===========End of original message text===========
CK> _______________________________________________
CK> CPMD-list mailing list
CK> CPMD-list at cpmd.org
CK> http://www.cpmd.org/mailman/listinfo/cpmd-list
--
=======================================================================
Axel Kohlmeyer e-mail: axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Lehrstuhl fuer Theoretische Chemie Phone: ++49 (0)234/32-26673
Ruhr-Universitaet Bochum - NC 03/53 Fax: ++49 (0)234/32-14045
D-44780 Bochum http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/
=======================================================================
If you make something idiot-proof, the universe creates a better idiot.
More information about the CPMD-list
mailing list