Opened 12 years ago

Closed 12 years ago

#35542 closed defect (fixed)

petsc: :info:configure Fortran could not successfully link C++ objects

Reported by: jmstephensjr@… Owned by: mamoll (Mark Moll)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc:
Port: petsc

Description

Attempting to upgrade from petsc @3.3-p0_0. Upgrade preceded by selfupdate and clean --all petsc. Software stack as follows: macports version 2.1.2, Xcode version 3.2.6, and Mac OS X version 10.6.8.

By the way, libyaml @0.1.4_1 installed just fine. (I think this is a new dependency.)

Attachments (9)

main.log (26.9 KB) - added by jmstephensjr@… 12 years ago.
configure.log (270.5 KB) - added by jmstephensjr@… 12 years ago.
Portfile.diff (589 bytes) - added by mamoll (Mark Moll) 12 years ago.
main.2.log (83.4 KB) - added by jmstephensjr@… 12 years ago.
configure.2.log (1.4 MB) - added by jmstephensjr@… 12 years ago.
Portfile (3.0 KB) - added by jmstephensjr@… 12 years ago.
file after patch, located in /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/math/petsc
main.3.log (128.0 KB) - added by jmstephensjr@… 12 years ago.
after rebuild of hdf5-18 with +gcc45
configure.3.log (2.0 MB) - added by jmstephensjr@… 12 years ago.
after rebuild of hdf5-18 with +gcc45
ports_installed (6.5 KB) - added by jmstephensjr@… 12 years ago.
list of ports installed

Change History (25)

Changed 12 years ago by jmstephensjr@…

Attachment: main.log added

comment:1 Changed 12 years ago by mamoll (Mark Moll)

Did you install openmpi (or mpich) with one of the gcc4x variants? You need a working version of openmpif90. If that's not it, please attach configure.log from the petsc build directory (/opt/local/var/macports/build/.../configure.log).

comment:2 Changed 12 years ago by jmstephensjr@…

Attaching configure.log, found in /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_petsc/petsc/work/petsc-3.3-p2.

Changed 12 years ago by jmstephensjr@…

Attachment: configure.log added

comment:3 in reply to:  1 Changed 12 years ago by jmstephensjr@…

Replying to mmoll@…:

Did you install openmpi (or mpich) with one of the gcc4x variants? You need a working version of openmpif90. If that's not it, please attach configure.log from the petsc build directory (/opt/local/var/macports/build/.../configure.log).

I have installed/active the port openmpi @1.5.5_0+gcc45.

Changed 12 years ago by mamoll (Mark Moll)

Attachment: Portfile.diff added

comment:4 Changed 12 years ago by mamoll (Mark Moll)

Does the attached patch of the petsc Portfile fix the problem?

comment:5 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: mmoll@… removed
Owner: changed from macports-tickets@… to mmoll@…

comment:6 in reply to:  4 Changed 12 years ago by jmstephensjr@…

Replying to mmoll@…:

Does the attached patch of the petsc Portfile fix the problem?

I want to make sure I am on the same page before I clobber anything. Here are the steps:

  1. Copy Portfile.diff to /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/math/petsc
  1. execute /usr/bin/patch Portfile < Portfile.diff

Thanks.

comment:7 Changed 12 years ago by mamoll (Mark Moll)

Yes, please give that a try and let me know if it works. If you already have petsc installed, you need to deactivate it first ("sudo port deactivate petsc") before upgrading to the new version.

comment:8 Changed 12 years ago by jmstephensjr@…

OK, I uninstalled slepc and deactivated petsc. I still have petsc @3.3-p0_0 installed, but not active. I ran the steps, and the upgrade failed. I have attached new logs.

If you would like, I can completely uninstall petsc, run clean --all petsc, and start with a fresh install. After it fails (how do you download only?), I will run the patch to the portfile, and try to reinstall, and give you an update.

Note: as we are heading into Monday, I want to make clear that this is not urgent on my end... and of course, thanks for all your help.

Changed 12 years ago by jmstephensjr@…

Attachment: main.2.log added

Changed 12 years ago by jmstephensjr@…

Attachment: configure.2.log added

Changed 12 years ago by jmstephensjr@…

Attachment: Portfile added

file after patch, located in /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/math/petsc

comment:9 Changed 12 years ago by mamoll (Mark Moll)

Ah, I think you need to install hdf5-18 with one of the gcc4X variants. Petsc is looking for libhdf5_fortran.

comment:10 Changed 12 years ago by jmstephensjr@…

New error...

Incomplete LAPACK install? Perhaps lapack package is installed - but lapack-dev/lapack-devel is required.

Here is what I did. I already had hdf5-18 @1.8.9_0 installed on account of octave. I ran uninstall and clean --all on hdf5-18 @1.8.9_0 and installed the gcc45 variant (which is the variant used in openmpi, atlas, etc). I then ran uninstall and clean --all on petsc and did a fresh install. I got the new error.

Logs to follow.

Changed 12 years ago by jmstephensjr@…

Attachment: main.3.log added

after rebuild of hdf5-18 with +gcc45

Changed 12 years ago by jmstephensjr@…

Attachment: configure.3.log added

after rebuild of hdf5-18 with +gcc45

Changed 12 years ago by jmstephensjr@…

Attachment: ports_installed added

list of ports installed

comment:11 Changed 12 years ago by mamoll (Mark Moll)

I think this time it's failing because its atlas detection is broken. Can you check if things work if you temporarily deactivate atlas? If so, then the next thing is create atlas & accelerate variants and get petsc to use the right one.

comment:12 Changed 12 years ago by jmstephensjr@…

Success.

Firstly, I deactivated atlas @3.10.0_0+gcc45, which required that I also deactivate qrupdate @1.1.2_1+atlas+gcc45 and octave @3.2.4_8+atlas+gcc45.

Secondly, I ran clean --all on petsc and did a fresh install. It failed.

Thirdly, I applied Portfile.diff and tried again to install. This time it worked. I now have petsc @3.3-p2_1+openmpi (active).

I will attached logs for your reference.

What now? Does this mean that petsc is looking in the wrong place for LAPACK or is atlas writing the files in the wrong place? Should I open a ticket on atlas?

Can I reactivate the deactivated ports?

comment:13 Changed 12 years ago by jmstephensjr@…

Um...

RE the attaching of logs for your reference... it seems that both /opt/local/var/macports/logs and /opt/local/var/macports/build are empty. I realize now that at the conclusion of the successful install the port gets cleaned and work files are removed.

Let me know if there are (other) files you would like me to send along.

comment:14 in reply to:  12 Changed 12 years ago by jmstephensjr@…

Replying to jmstephensjr@…:

What now? Does this mean that petsc is looking in the wrong place for LAPACK or is atlas writing the files in the wrong place? Should I open a ticket on atlas?

I went back and read your last comment again. I realize that you already answered the question. I will wait for an atlas and accelerate variant.

comment:15 Changed 12 years ago by mamoll (Mark Moll)

In the meantime you can re-activate your deactivated ports.

comment:16 Changed 12 years ago by mamoll (Mark Moll)

Resolution: fixed
Status: newclosed

Should be fixed in r100485.

Note: See TracTickets for help on using tickets.