Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

From: Karol Mroz (kmroz_at_[hidden])
Date: 2007-09-19 13:23:50


Hi. I have been trying to build the latest ompi-trunk (as of yesterday)
svn snapshot (r16158) of OpenMPI on a FreeBSD 6.2 machine and have run
into 3 build problems. I was curious if anyone else has encountered
these errors and if they are being addressed.

Problem 1
---------
When running the autogen.sh script as non-root, I see the following error:
*************************************************************************
        *** Running GNU tools
        [Running] autom4te --language=m4sh ompi_get_version.m4sh -o
ompi_get_version.sh
        [Running] aclocal
        /usr/local/share/aclocal/glib.m4:8: warning: underquoted definition of
AM_PATH_GLIB
        /usr/local/share/aclocal/glib.m4:8: run info '(automake)Extending
aclocal'
        /usr/local/share/aclocal/glib.m4:8: or see
http://sources.redhat.com/automake/automake.html#Extending-aclocal
        [Running] autoheader
        ** Adjusting libtool for OMPI :-(
           ++ patching for pathscale multi-line output (LT 1.5.x)
        [Running] autoconf
        [Running] libtoolize --automake --copy --ltdl
           -- Moving libltdl to opal/
        ** Updating Automake version in libltdl package
           [Running] aclocal
        acinclude.m4:6405: the serial number must appear before any macro
definition
        /usr/local/share/aclocal/glib.m4:8: warning: underquoted definition of
AM_PATH_GLIB
        /usr/local/share/aclocal/glib.m4:8: run info '(automake)Extending
aclocal'
        /usr/local/share/aclocal/glib.m4:8: or see
http://sources.redhat.com/automake/automake.html#Extending-aclocal
           [Running] automake
           [Running] autoconf
        autom4te-2.61: cannot open configure: Permission denied
        
-------------------------------------------------------------------------
It seems that the execution of "autoconf" has failed. See above for
the specific error message that caused it to abort.
-------------------------------------------------------------------------
*************************************************************************

After some searching, it would appear that this is an autoconf issue
that crops up in FreeBSD but, for whatever reason, not in Linux. A quick
workaround is to add: `chmod -vr u+w *` just before autogen issues the
`run_and_check $ompi_autoconf` command on line 438.

Problem 2:
----------
After correcting the autogen.sh script, running it and then running
configure with --prefix=some_directory as a parameter, it was time to
`make all install.` Following is console output:

************************************************************************
 gcc -DHAVE_CONFIG_H -I. -I../../opal/include -I../../orte/include
-I../../ompi/include -I../../opal/mca/paffinity/linux/plpa/src/libplpa
-I../.. -g -Wall -Wundef -Wno-long-long -Wsign-compare
-Wmissing-prototypes -Wstrict-prototypes -Wcomment -pedantic
-Werror-implicit-function-declaration -finline-functions
-fno-strict-aliasing -pthread -MT opal_pty.lo -MD -MP -MF
.deps/opal_pty.Tpo -c opal_pty.c -fPIC -DPIC -o .libs/opal_pty.o
opal_pty.c: In function `opal_openpty':
opal_pty.c:127: error: implicit declaration of function `openpty'
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/opal/util.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/opal/util.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/opal.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk.
***********************************************************************

 It would seem that openpty needs to have libutil.h included on a
freeBSD machine. I added a quick #ifdef/#include of libutil.h in
opal/util/opal_pty.c and restarted make.

Problem 3:
----------
Compilation made it a little further this time around, but began
complaining about ompi/mpi/f77/strings.h. More console output:

***********************************************************************
gcc -DHAVE_CONFIG_H -I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_F77_WRAPPERS=1 -I../../.. -g
-Wall -Wundef -Wno-long-long -Wsign-compare -Wmissing-prototypes
-Wstrict-prototypes -Wcomment -pedantic
-Werror-implicit-function-declaration -finline-functions
-fno-strict-aliasing -pthread -MT attr_fn_f.lo -MD -MP -MF
.deps/attr_fn_f.Tpo -c attr_fn_f.c -fPIC -DPIC -o .libs/attr_fn_f.o
In file included from /usr/include/string.h:49,
                 from ../../../opal/include/opal_config_bottom.h:365,
                 from ../../../opal/include/opal_config.h:1432,
                 from ../../../ompi/include/ompi_config.h:26,
                 from attr_fn_f.c:20:
./strings.h:43: error: syntax error before "int"
./strings.h:59: error: syntax error before "int"
./strings.h:78: error: syntax error before "int"
./strings.h:94: error: syntax error before "int"
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/ompi/mpi/f77.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/ompi/mpi/f77.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/ompi/mpi.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk/ompi.
*** Error code 1

Stop in /usr/home/kmroz/work/ompi-trunk.
***********************************************************************

I ended up changing function declarations in ompi/mpi/f77/strings.h from
'OMPI_DECLSPEC int function_name()' to simply 'int function_name()'
which also appears to be how it was done in the last stable (v1.2.3)
release. This final change allowed make to complete.

---
Please note, these errors were seen in ompi-trunk (r16158). The current
stable release (v1.2.3) as well as the pre-release (v1.2.4) do NOT
exhibit any of these problems when compiled on FreeBSD 6.2.
One final note: running autogen.sh on a linux machine followed by
configure/make on freeBSD was also attempted to see if some of the
source or build scripts were being generated incorrectly on FreeBSD.
However, this yielded the same errors with ompi-trunk as mentioned above.
Any ideas?
-- 
Karol Mroz
kmroz_at_[hidden]