-
Notifications
You must be signed in to change notification settings - Fork 866
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OMPI cannot build with Libtool 2.4.3 and above #311
Comments
Should point out that the latest MacPorts update will load libtool 2.4.4 on the Mac, thereby breaking OMPI's build system 👎 |
I'm fairly certain that this is due to a bug in LT 2.4.4 (I did not test 2.4.3 myself, but based on @rhc54's filing this issue against LT 2.4.3, the issue was probably introduced in LT 2.4.3). |
Removing the "blocker" tag; if this is actually a Libtool bug, the solution is (annoying but) simple: don't upgrade past LT 2.4.2. :-( |
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find properly libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). * In a non-developer build: * If configure finds libltdl support, it will build dlopen support and build plugins as DSOs. * If configure does not find libltdl support, it will disable dlopen support and slurp plugins into higher level libraries. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find properly libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will build dlopen support and build plugins as DSOs. * If configure does not find libltdl support, it will disable dlopen support and slurp plugins into higher level libraries. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, developers may inadvertently build without dlopen support without this special developer-build provision. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
Per #311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes #311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
Per open-mpi#311, Libtool v2.4.4 exposes a bug in either Libtool and/or autoreconf (after discussions with Libtool and Autoconf maintainers, it's not clear which) when embedding libltdl. After some discussion in the Open MPI community, we have decided to both remove our embedded libltdl and (mostly) treat libltdl like any other external library: * If --disable-dlopen is specified, it behaves as it always has: libltdl support is wholly disabled, and all plugins are slurped into their higher-level libraries. * If --enable-dlopen is specified, configure will abort if it cannot find proper libltdl support. * If neither of these are specified, configure will behave differently between a developer build (i.e., where a .git directory is present in the source tree) and non-developer build: * In a developer build, --enable-dlopen is assumed (i.e., configure will abort if libltdl support cannot be found). --disable-dlopen must be specified if you do not have libltdl support. * In a non-developer build: * If configure finds libltdl support, it will behave as if --enable-dlopen was specified. * If configure does not find libltdl support, it will behave as if --disable-dlopen was specified. The developer build behavior is because dlopen support is usually highly valued (e.g., being able to repeatedly build individual plugins), and libltdl-devel may not be installed by default on Linux distros and OSX. Hence, without this special developer-build provision, developers may inadvertently build without dlopen support. Fixes open-mpi#311.
There are now two PRs that can solve this issue (each has tradeoffs):
As a community, we need to decide which one we want. |
Per the Tuesday 17 Feb 2015 webex, we decided to go with #390 and ditch #366. However, per #390 (comment), #390 has become untenable. I'm working on a new approach; more details soon. |
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
The libltdl interface has been completely replaced by the OPAL DL framework (i.e., the opal_dl interface). Fixes open-mpi#311
Just to tie off this issue: #410 was the PR that contained the final solution for this issue. |
Revert "Fix a typo in the alignment threshold in openib BTL."
Not finding a job object isn't necessarily an error
It fails with the following error:
The text was updated successfully, but these errors were encountered: