{"action":"created","issue":{"url":"https://api.github.com/repos/aws/aws-sdk-cpp/issues/1020","repository_url":"https://api.github.com/repos/aws/aws-sdk-cpp","labels_url":"https://api.github.com/repos/aws/aws-sdk-cpp/issues/1020/labels{/name}","comments_url":"https://api.github.com/repos/aws/aws-sdk-cpp/issues/1020/comments","events_url":"https://api.github.com/repos/aws/aws-sdk-cpp/issues/1020/events","html_url":"https://github.com/aws/aws-sdk-cpp/issues/1020","id":383903545,"node_id":"MDU6SXNzdWUzODM5MDM1NDU=","number":1020,"title":"How to cleanly build and deploy with all build dependencies","user":{"login":"whiplash86","id":34036463,"node_id":"MDQ6VXNlcjM0MDM2NDYz","avatar_url":"https://avatars2.githubusercontent.com/u/34036463?v=4","gravatar_id":"","url":"https://api.github.com/users/whiplash86","html_url":"https://github.com/whiplash86","followers_url":"https://api.github.com/users/whiplash86/followers","following_url":"https://api.github.com/users/whiplash86/following{/other_user}","gists_url":"https://api.github.com/users/whiplash86/gists{/gist_id}","starred_url":"https://api.github.com/users/whiplash86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whiplash86/subscriptions","organizations_url":"https://api.github.com/users/whiplash86/orgs","repos_url":"https://api.github.com/users/whiplash86/repos","events_url":"https://api.github.com/users/whiplash86/events{/privacy}","received_events_url":"https://api.github.com/users/whiplash86/received_events","type":"User","site_admin":false},"labels":[{"id":210264942,"node_id":"MDU6TGFiZWwyMTAyNjQ5NDI=","url":"https://api.github.com/repos/aws/aws-sdk-cpp/labels/question","name":"question","color":"cc317c","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":14,"created_at":"2018-11-23T18:21:18Z","updated_at":"2018-11-29T14:48:27Z","closed_at":null,"author_association":"NONE","body":"### What platform/OS are you using?\r\n\r\nWindows 10, Debian 9.5\r\n\r\n### What compiler are you using? what version?\r\n\r\nVisual Studio 2017 15.9.0, gcc 7.3.0\r\n\r\n### What's your CMake arguments?\r\n\r\n-DBUILD_ONLY=\"core;s3\" -DCPP_STANDARD=17\r\n\r\nIf I just follow the build steps provided in the documentation, the CMake configure step already clones and builds some AWS dependencies in the subfolder of my build directory, namely aws-c-common, aws-c-event-stream and aws-checksums. The problem is, that they get installed to a location nested inside my build folder as a default (<build_dir>/.deps/install). I also tried to provide a CMAKE_INSTALL_PREFIX which helps in that the dynamic libraries now end up in <install_dir>/lib. However this is still different from the top-level script which installs shared objects into <install_dir>/bin. So how is this supposed to work cleanly? I'd like to be able to build and install with a single click, not having to move around files or provide two different yet similar system paths. As a side-effect, the clean vanilla build without providing any flags to CMake whatsoever fails for this exact same reason because when the unit tests are autorun and link to these dependencies, they can't find the shared libraries in the system path."},"comment":{"url":"https://api.github.com/repos/aws/aws-sdk-cpp/issues/comments/442860001","html_url":"https://github.com/aws/aws-sdk-cpp/issues/1020#issuecomment-442860001","issue_url":"https://api.github.com/repos/aws/aws-sdk-cpp/issues/1020","id":442860001,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0Mjg2MDAwMQ==","user":{"login":"whiplash86","id":34036463,"node_id":"MDQ6VXNlcjM0MDM2NDYz","avatar_url":"https://avatars2.githubusercontent.com/u/34036463?v=4","gravatar_id":"","url":"https://api.github.com/users/whiplash86","html_url":"https://github.com/whiplash86","followers_url":"https://api.github.com/users/whiplash86/followers","following_url":"https://api.github.com/users/whiplash86/following{/other_user}","gists_url":"https://api.github.com/users/whiplash86/gists{/gist_id}","starred_url":"https://api.github.com/users/whiplash86/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/whiplash86/subscriptions","organizations_url":"https://api.github.com/users/whiplash86/orgs","repos_url":"https://api.github.com/users/whiplash86/repos","events_url":"https://api.github.com/users/whiplash86/events{/privacy}","received_events_url":"https://api.github.com/users/whiplash86/received_events","type":"User","site_admin":false},"created_at":"2018-11-29T14:48:27Z","updated_at":"2018-11-29T14:48:27Z","author_association":"NONE","body":"@silcowitz This is probably a more unix-specific question and I'm by no means an expert on that but to me it seems like /usr is still a system-wide location shared by all users so being allowed to only install there with root priviledges (and having root as owner) doesn't seem unreasonable to me. You can ofc install into a non-standard location w/o root access but then you obviously have to provide these paths to your applications because how should they know where your dependencies were installed?\r\n\r\nJust out of curiosity: What happens when you run your executable now? Do you also get an error because one of the AWS dependency .so can't be loaded or does this work for you?"}}
{"actor":{"display_login":"whiplash86"}}