GithubHelp home page GithubHelp logo

Comments (9)

mathog avatar mathog commented on June 18, 2024 1

Since there was no response I tried building this from the github repository, even though the installation Docs appear to say not to do so. These were the commands:

pversion=3.0.0
package=apbs
altpkg=APBS
TOPDIR=/usr/common/modules/el8/x86_64/software/${package}/${pversion}-CentOS-vanilla
cd /usr/common/src
git clone https://github.com/Electrostatics/apbs.git
mv ${package} ${package}-${pversion}
cd ${package}-${pversion}
git submodule init
git submodule update
module load msms
module load nanoshaper
module load cmake #very recent release needed
#Requires: OpenBLAS, dnf installed on all nodes
#Requires: eigen3-devel, dnf installed on all nodes, if this is NOT
#installed geoflow will try to install it from:
# https://bitbucket.org/eigen/eigen/get/3.2.5.tar.gz
#which is BROKEN and the build will fail at that point.
mkdir build
cd build
cp ../CMakeLists.txt ../CMakeLists.txt.dist
extract -in ../CMakeLists.txt.dist -out ../CMakeLists.txt \
  -rtds '_INSTALL_PATH ' -rtss "_INSTALL_PATH $TOPDIR/"
#this will hopefully fix both the "can't find Python.h" and link problems
cmake -DENABLE_GEOFLOW=ON -DENABLE_PBAM=ON \
 -DENABLE_BEM=ON -DENABLE_FETK=ON \
 -DENABLE_PYTHON=ON -DBUILD_SHARED_LIBS=ON \
 -DGET_NanoShaper=ON .. 2>&1 | tee cmake_2020_08_19.log
make 2>&1 | tee build_2020_08_19.log
#succeeded
make install 2>&1 | tee install_2020_08_19.log
#does NOT copy all the libraries
cp bem-prefix/src/bem-build/libTABIPBlib.so $TOPDIR/lib
(cd fetk/src/fetk-punc-build/src/aaa_lib/.libs; tar -cf - .) | (cd $TOPDIR/lib; tar -xf -)
(cd fetk/src/fetk-mc-build/src/aaa_lib/.libs; tar -cf - .) | (cd $TOPDIR/lib; tar -xf -)
(cd fetk/src/fetk-maloc-build/src/aaa_lib/.libs; tar -cf - .) | (cd $TOPDIR/lib; tar -xf -)
(cd fetk/src/fetk-gamer-build/src/aaa_lib/.libs; tar -cf - .) | (cd $TOPDIR/lib; tar -xf -)
(cd fetk/lib; tar -cf - *.la) | (cd $TOPDIR/lib; tar -xf -)
cp ./lib/_apbslib.so $TOPDIR/lib
/bin/rm $TOPDIR/lib/*.la
/bin/rm $TOPDIR/lib/*.lai
module_generate_from_directory.sh \
   $package \
   $pversion \
   CentOS/vanilla \
   $TOPDIR \
   "Solve the equations of continuum electrostatics for large biomolecular assemblages." \
   "https://github.com/Electrostatics/apbs" \
   "msms nanoshaper"
module purge
module load apbs
apbs --help #runs

Further testing stalled when the README.md in examples said to do:

Executing <code>make test</code> in each directory will run the examples for that directory and log the results to <code>TESTRESULTS.log</code>.

but there are no Makefiles in those directories, nor in the top example directory. There are a couple of Makefile.in and Makefile.am files. Was the build supposed to construct these?

from apbs.

sobolevnrm avatar sobolevnrm commented on June 18, 2024 1

Thank you for your perseverance! The examples directory is the best source of tests for APBS.

from apbs.

sobolevnrm avatar sobolevnrm commented on June 18, 2024

Hello; I'm adding @intendo to see if he can help with this.

from apbs.

sobolevnrm avatar sobolevnrm commented on June 18, 2024

We are not ignoring you but are stretched rather thin at this time. You have definitely confirmed our statement that the master branch is not the preferred one to build. 😄

@intendo are you able to look into this at all?

from apbs.

intendo avatar intendo commented on June 18, 2024

@sobolevnrm I will block off Thursday to work on APBS issues.

from apbs.

sobolevnrm avatar sobolevnrm commented on June 18, 2024

from apbs.

mathog avatar mathog commented on June 18, 2024

We are not ignoring you but are stretched rather thin at this time.

Understood.

You have definitely confirmed our statement that the master branch is not the preferred one to build.

Well, it was a bit difficult, but I was eventually able to build from that. Not so with the release.

Instructions for running the tests and examples would be very helpful. (Or at least a URL that directs to these.) At this point apbs has been built and installed, but other than responding to

apbs --help
I don't yet know if it actually works.

from apbs.

intendo avatar intendo commented on June 18, 2024

A recent finding was that the external dependency on Eigen was a mercurial repository on bitbucket. Bitbucket stopped supporting mercurial so we updated the dependency to point to the same version of Eigen on a Github repository.

Also, make sure when you build APBS, you run make in serial mode to eliminate any race conditions between CMake, autoconf, make, and downloads. What I use is VERBOSE=1 make -j 1 to make sure there are no race conditions that can be really hard to diagnose.

from apbs.

mathog avatar mathog commented on June 18, 2024

Instructions for running the tests and examples would be very helpful. (Or at least a URL that directs to these.)

Never found instructions. Was very confused by the README.md in the "examples" subdirectory (which says to run "make" in each subdirectory, but none actually have a Makefile). The README.md in the "tests" subdirectory does not say that it uses the contents of the "examples" directory, but the command it says to use, slightly modified as:

python3 apbs_tester.py 2>&1 | tee apbs_tester.log

set things rolling, and all the tests completed so far "were Passed". It quickly became apparent that tests was using the contents of examples, and was leaving new results in there.

One point though, using "top" so far has never shown apbs to go over 100%, so perhaps it is not multithreaded? If so, then it would help if the testing script would run several of these at once. The test system has 4 CPUs with 2 threads each, which shows up as "8 CPUs" under linux, but 7 of those are just twiddling their thumbs (metaphorically speaking).

from apbs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.