Hello Patrice, hello all,
> On 13 July 2018 at 10:48 Patrice Guérin <[email protected]> wrote:
>
> Hello,
>
> My name is Patrice and I'm new with Podofo.
> I was able to build Podofo 0.9.5 on Linux Debian 7 without problem but it's
> a little bit more complicated on Windows with Visual Studio 2013.
> I've build the dependent libraries (jpeg9c, png1634, tiff 4.0.9, freetype
> 2.9, zlib 1.2.11) without any major problem.
> The libraries includes and libs are all stored in a 'root' directory which
> is accessed through an environment variable EXTERN_DEV ; the resulting
> architecture is (I just show zlib
>
> > EXTERN_DEV (k:/extern_dev actually but can be changed)
> > |- zlib
> > |- 1.2.11
> > |- include
> > |- lib
> Podofo reside on a different disk and directory than dependent libraries.
> When creating the cmake project targetting Visual Studio 2013, I've filled
> the required paths to include and library in this way
>
> > ZLIB_INCLUDE_DIR=$(EXTERN_DEV)/zlib/1.2.11/include
> > ZLIB_LIBRARY_DEBUG=$(EXTERN_DEV)/zlib/1.2.11/lib/zdll.lib
> > ZLIB_LIBRARY_RELEASE=$(EXTERN_DEV)/zlib/1.2.11/lib/zdll.lib
> > ...
I'm no expert in cmake, but IIRC environment variables are accessed as
$ENV{NAME_OF_VARIABLE}, so in
your case $ENV{EXTERN_DEV}.
> The configuration process find all the dependencies expressed with
> $(EXTERN_DEV) but the generation process prepends each include directories
> with the Podofo source code path, so include files are not found :
>
It may also help to declare the cmake variables with their type FILEPATH: e.g.
for the first one:
ZLIB_INCLUDE_DIR:FILEPATH=$ENV{EXTERN_DEV}
> > H:\Src\podofo-0.9.5\build\vs2013;
> > H:\Src\podofo-0.9.5;
> > H:\Src\podofo-0.9.5\$(EXTERN_DEV)\libjpeg\9c\include;
> > H:\Src\podofo-0.9.5\$(EXTERN_DEV)\libtiff\4.0.9\include;
> > H:\Src\podofo-0.9.5\$(EXTERN_DEV)\libpng\1.6.34\include;
> > H:\Src\podofo-0.9.5\$(EXTERN_DEV)\zlib\1.2.11\include;
> > H:\Src\podofo-0.9.5\src;
> > H:\Src\podofo-0.9.5\$(EXTERN_DEV)\freetype\2.9\include\config;
> > H:\Src\podofo-0.9.5\$(EXTERN_DEV)\freetype\2.9\include;
> > H:\Src\podofo-0.9.5\vcincludes;
> > %(AdditionalIncludeDirectories)
> The library files used for linking are expressed correctly.
It looks like as if the environment variable wasn't expanded in these paths.
If my guesses above don't help, I recommend looking for a CMake function
which explicitly resolves file paths to absolute path form (to call where
ZLIB_INCLUDE_DIR etc. are defined). Then even CMake functionality which
doesn't resolve environment variables should handle them correctly.
>
> Is there a way to correct this without modifying the VS solution by hand ?
With my suggestions (I haven't tested them, I don't use Windows, sorry) it
should only be necessary to have CMake automatically generate the VS solution
again after a change of the environment variable.
>
> Thank you in advance
> Kind regards,
> Patrice.
I hope my suggestions help you.
Best regards, Matthew
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Podofo-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/podofo-users