io2d.h is not copied during install on GNU/Linux
Opened this issue · 15 comments
When installing the library system-wide, io2d.h
and other backend files are not exported.
How did you fix the issue? Because, on my end, if I follow the process as laid out in BUILDING.md I don't find the io2d being installed. No header files.
Try
cmake --build install
Nope!
I followed these steps. Am I missing any step here?
Refresh apt: sudo apt-get update
Install GCC: sudo apt-get install g++-7 build-essential
Install Cairo: sudo apt-get install libcairo2-dev
Install graphicsmagick: sudo apt-get install libgraphicsmagick1-dev
Install libpng: sudo apt-get install libpng-dev
Then you build the library itself and then you install it system-wide using that command. I agree that BUILDING.md is extremely barebones and written by someone who is not that great with CMake. I'm gonna fix this.
Yupp that seems very barebones. I did build it but now it seems I need to work on the catch. As I get this error while building:
catch.hpp: No such file or directory
#include <catch.hpp>
Catch is only used by samples. Did you build the samples? Myself, I decided not to.
I think I did. I build the example executions.
Are you trying to use Catch in your own code? Then you need to enable it somehow. Exact commands depend on your package manager and build system.
No, I won't be using Catch. But seems like while system-wide build it's throwing the error. I did fix it. And now it seems I have installed and see all the required header files.
Thanks a ton for the help. I will write a detailed answer here if anyone wandering for an answer and stumbles here. I did this on Windows 10 Ubuntu bash.
I only see Catch used in tests, for that reason I built without tests.
Yeah, in retrospect even I should have built it without tests but well things worked out.
Regarding Catch. Did you make sure to clone the repo with '--recursive'?
I did not. At that time I was unaware that it had submodules like catch.
You can try sudo make install
to have a system-wide installation