{"action":"created","issue":{"url":"https://api.github.com/repos/open-mpi/ompi/issues/729","labels_url":"https://api.github.com/repos/open-mpi/ompi/issues/729/labels{/name}","comments_url":"https://api.github.com/repos/open-mpi/ompi/issues/729/comments","events_url":"https://api.github.com/repos/open-mpi/ompi/issues/729/events","html_url":"https://github.com/open-mpi/ompi/pull/729","id":96273296,"number":729,"title":"ORTED: issue with libpath and Intel compilers.","user":{"login":"ntimeu","id":12035279,"avatar_url":"https://avatars.githubusercontent.com/u/12035279?v=3","gravatar_id":"","url":"https://api.github.com/users/ntimeu","html_url":"https://github.com/ntimeu","followers_url":"https://api.github.com/users/ntimeu/followers","following_url":"https://api.github.com/users/ntimeu/following{/other_user}","gists_url":"https://api.github.com/users/ntimeu/gists{/gist_id}","starred_url":"https://api.github.com/users/ntimeu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ntimeu/subscriptions","organizations_url":"https://api.github.com/users/ntimeu/orgs","repos_url":"https://api.github.com/users/ntimeu/repos","events_url":"https://api.github.com/users/ntimeu/events{/privacy}","received_events_url":"https://api.github.com/users/ntimeu/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":23,"created_at":"2015-07-21T09:40:22Z","updated_at":"2015-07-24T15:31:14Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/open-mpi/ompi/pulls/729","html_url":"https://github.com/open-mpi/ompi/pull/729","diff_url":"https://github.com/open-mpi/ompi/pull/729.diff","patch_url":"https://github.com/open-mpi/ompi/pull/729.patch"},"body":"When compiled with Intel compiler suite, ORTED is linked against several Intel libraries. This causes ORTED to crash before being launched due to the lack of propagation of the current LD_LIBRARY_PATH over SSH.\r\n\r\nThis patch add an MCA option to orte's plm_rsh module,\r\nmca_plm_rsh_propagate_libpath (bool). When set to true it automatically\r\nprepends to the remote node's LD_LIBRARY_PATH the current LD_LIBRARY_PATH\r\nbefore launching the ORTED daemon."},"comment":{"url":"https://api.github.com/repos/open-mpi/ompi/issues/comments/124559605","html_url":"https://github.com/open-mpi/ompi/pull/729#issuecomment-124559605","issue_url":"https://api.github.com/repos/open-mpi/ompi/issues/729","id":124559605,"user":{"login":"jsquyres","id":617316,"avatar_url":"https://avatars.githubusercontent.com/u/617316?v=3","gravatar_id":"","url":"https://api.github.com/users/jsquyres","html_url":"https://github.com/jsquyres","followers_url":"https://api.github.com/users/jsquyres/followers","following_url":"https://api.github.com/users/jsquyres/following{/other_user}","gists_url":"https://api.github.com/users/jsquyres/gists{/gist_id}","starred_url":"https://api.github.com/users/jsquyres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsquyres/subscriptions","organizations_url":"https://api.github.com/users/jsquyres/orgs","repos_url":"https://api.github.com/users/jsquyres/repos","events_url":"https://api.github.com/users/jsquyres/events{/privacy}","received_events_url":"https://api.github.com/users/jsquyres/received_events","type":"User","site_admin":false},"created_at":"2015-07-24T15:31:14Z","updated_at":"2015-07-24T15:31:14Z","body":"I do like the idea of a `--enable-static-runtime` kind of configure option.  This would seem to solve all the problems, and not require the user to know/do anything at runtime.\r\n\r\nThe only problem is: I'm not entirely sure how to do that.  \r\n\r\n1. With the Intel compiler, there's the `--static-intel` option, but that doesn't make a wholly static `orted`, for example (it just statically links in the Intel libraries -- not *all* libraries).\r\n1. Are there universal options for this for the other compilers?\r\n\r\n...after thinking about this for a few minutes, it *may* be sufficient to do something like this:\r\n\r\n```\r\nif enable_static_runtime was passed\r\n    RUNTIME_LDFLAGS=--static\r\n    if compiler suite is intel\r\n        RUNTIME_LDFLAGS=\"$RUNTIME_LDFLAGS --static-intel\"\r\n    fi\r\nfi\r\n````\r\n\r\nAssuming `$(RUNTIME_LDFLAGS)` is used when linking the `orted` (and any other relevant executables?), Libtool *might* automatically translate `--static` into whatever is relevant for the underlying compiler, and we only have one special case for the Intel compiler suite.\r\n\r\nIt's worth a try...?"}}