{"action":"created","issue":{"url":"https://api.github.com/repos/msgpack/msgpack-c/issues/367","labels_url":"https://api.github.com/repos/msgpack/msgpack-c/issues/367/labels{/name}","comments_url":"https://api.github.com/repos/msgpack/msgpack-c/issues/367/comments","events_url":"https://api.github.com/repos/msgpack/msgpack-c/issues/367/events","html_url":"https://github.com/msgpack/msgpack-c/issues/367","id":108102383,"number":367,"title":"Cannot include msgpack.h","user":{"login":"sjoelund","id":3016460,"avatar_url":"https://avatars.githubusercontent.com/u/3016460?v=3","gravatar_id":"","url":"https://api.github.com/users/sjoelund","html_url":"https://github.com/sjoelund","followers_url":"https://api.github.com/users/sjoelund/followers","following_url":"https://api.github.com/users/sjoelund/following{/other_user}","gists_url":"https://api.github.com/users/sjoelund/gists{/gist_id}","starred_url":"https://api.github.com/users/sjoelund/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sjoelund/subscriptions","organizations_url":"https://api.github.com/users/sjoelund/orgs","repos_url":"https://api.github.com/users/sjoelund/repos","events_url":"https://api.github.com/users/sjoelund/events{/privacy}","received_events_url":"https://api.github.com/users/sjoelund/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-09-24T10:27:13Z","updated_at":"2015-09-24T13:13:02Z","closed_at":null,"body":"msgpack.h is full of references to bad #include directives. If I do:\r\n```#include \"/path/to/msgpack-c/include/msgpack.h\"```, there is no `-I` flag that adds ```/path/to/msgpack-c/include/``` to the include path. This means the ```#include \"msgpack/*.h\"``` include directives in the other headers simply point to nowhere. They need to use either ```#include \"../msgpack/*.h\".```, or refer to the file directly ```#include \"*.h\".``` in order to work without makefile magic (I am developing for an application where I cannot be sure if the tool adds the include-directive or includes the file directly)."},"comment":{"url":"https://api.github.com/repos/msgpack/msgpack-c/issues/comments/142922674","html_url":"https://github.com/msgpack/msgpack-c/issues/367#issuecomment-142922674","issue_url":"https://api.github.com/repos/msgpack/msgpack-c/issues/367","id":142922674,"user":{"login":"redboltz","id":275959,"avatar_url":"https://avatars.githubusercontent.com/u/275959?v=3","gravatar_id":"","url":"https://api.github.com/users/redboltz","html_url":"https://github.com/redboltz","followers_url":"https://api.github.com/users/redboltz/followers","following_url":"https://api.github.com/users/redboltz/following{/other_user}","gists_url":"https://api.github.com/users/redboltz/gists{/gist_id}","starred_url":"https://api.github.com/users/redboltz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/redboltz/subscriptions","organizations_url":"https://api.github.com/users/redboltz/orgs","repos_url":"https://api.github.com/users/redboltz/repos","events_url":"https://api.github.com/users/redboltz/events{/privacy}","received_events_url":"https://api.github.com/users/redboltz/received_events","type":"User","site_admin":false},"created_at":"2015-09-24T13:13:02Z","updated_at":"2015-09-24T13:13:02Z","body":"I didn't understand perfectly. If I want to fix the problem, I can't use relative path in natural way.\r\n\r\n> They need to use either `#include \"../msgpack/*.h\"`., or refer to the file directly `#include \"*.h\"`. in order to work without makefile magic (I am developing for an application where I cannot be sure if the tool adds the include-directive or includes the file directly).\r\n\r\nNow I understand the meaning of the sentence above. msgpack-c header files should be structured using sub directories. So I can't use `#include \"*.h\"` approach. `#include \"../msgpack/*.h\"` approach works well with sub directories. However, it is difficult to check how many \"../\" are required especially header files from Boost Libraries.\r\n\r\nSo I think that the effort to remove compiler option that adds include path is too much. Many libraries e.g. Boost.Libraries require to add the include path. I think that it is reasonable design decision.\r\n\r\nThat is my conclusion, so far.\r\nAny ideas?\r\n\r\n"}}