MacOS10.9 Problems including user-ATC

I am building lammps on a Mac OS 10.9 and it works (with GPU). But when I included the user-atc (and may be some other packages) I get the message

Undefined symbols for architecture x86_64:
“ATC_matrix::SparseMatrix const* ATC_matrix::sparse_cast(ATC_matrix::Matrix const*)”, referenced from:
ATC_matrix::Matrix::_set_equal(ATC_matrix::Matrix const&) in libatc.a(Matrix.o)
“void ATC_matrix::copy_sparse_to_matrix(ATC_matrix::SparseMatrix const*, ATC_matrix::Matrix&)”, referenced from:
ATC_matrix::Matrix::_set_equal(ATC_matrix::Matrix const&) in libatc.a(Matrix.o)
“ATC_matrix::DiagonalMatrix const* ATC_matrix::diag_cast(ATC_matrix::Matrix const*)”, referenced from:
ATC_matrix::Matrix::_set_equal(ATC_matrix::Matrix const&) in libatc.a(Matrix.o)
ld: symbol(s) not found for architecture x86_64

I tried many starts from scratch, but this error remains persistently.
Help or hints would be appreciated
Thanks

Wolfgang

Prof. Dr. Wolfgang Husinsky
Institut für Angewandte Physik
Technische Universität Wien
Wieder Hauptstrasse 8-10, A 1040 Wien
Austria
husinsky@…5177…

I am building lammps on a Mac OS 10.9 and it works (with GPU). But when I
included the user-atc (and may be some other packages) I get the message

Undefined symbols for architecture x86_64:
  "ATC_matrix::SparseMatrix<double> const*
ATC_matrix::sparse_cast<double>(ATC_matrix::Matrix<double> const*)",
referenced from:
      ATC_matrix::Matrix<double>::_set_equal(ATC_matrix::Matrix<double>
const&) in libatc.a(Matrix.o)
  "void
ATC_matrix::copy_sparse_to_matrix<double>(ATC_matrix::SparseMatrix<double>
const*, ATC_matrix::Matrix<double>&)", referenced from:
      ATC_matrix::Matrix<double>::_set_equal(ATC_matrix::Matrix<double>
const&) in libatc.a(Matrix.o)
  "ATC_matrix::DiagonalMatrix<double> const*
ATC_matrix::diag_cast<double>(ATC_matrix::Matrix<double> const*)",
referenced from:
      ATC_matrix::Matrix<double>::_set_equal(ATC_matrix::Matrix<double>
const&) in libatc.a(Matrix.o)
ld: symbol(s) not found for architecture x86_64

I tried many starts from scratch, but this error remains persistently.

this sounds a lot like an issue that was corrected a long time ago.
which version of LAMMPS is this?

Hello Wolfgang, we encountered this as well when we upgraded from 10.8 to 10.9 having to do with the new compilers. However, we pushed a version that fixed this a few months ago. Please update to the latest code and see if you are still encountering this problem.
Jeremy

Hi Axel
I am using the last stable build from June 28 (i also tried the last build from August). I have also read several postings to this issue. May be it has to do with gcc and home-brew, which I used originally but removed completely and
installed Xcode and whatever seems to be needed. I wonder, whether some library needs to be installed in addition to what I have, or its a mixup with Mac darwin paths.

Wolfgang

Prof. Wolfgang Husinsky
Institut für Angewandte Physik
Technische Universität Wien
Wieder Hauptstrasse 8-10
1040 Wien, Austria
phone: +43 1 58801 13441
[email protected]...

Hi Axel
I am using the last stable build from June 28 (i also tried the last build from August). I have also read several postings to this issue. May be it has to do with gcc and home-brew, which I used originally but removed completely and
installed Xcode and whatever seems to be needed. I wonder, whether some library needs to be installed in addition to what I have, or its a mixup with Mac darwin paths.

the AtC library is self-contained. i build it regularly with multiple
gcc versions and also tried clang. the latter produces some warnings,
but compiled just fine.

the fact, that the error you see is one that was resolved quite a
while ago hints that something somehow got mixed up with your compile
directories. perhaps you need to check, if you have another copy of
LAMMPS around and accidentally compiled in the wrong directory.

axel.

Hi Wolfgang, it looks like the changes we made have not gotten pushed to the proper repo. This will take us a bit of time to sort out. BTW, you can install older versions of gcc and things should work just fine in the interim.
Jeremy