Craig,
I'm sorry, it was a LOT of pain to compile podofo, because I also had to
compile the dependencies (freetype, jpeg, zlib). I'm not going to compile
this again with MS Visual Studio.
The problem with the LIBJPEG header is specific to LIBJPEG. This header
defines some things that are already defined.
The STL stream wchar_t* problem, I would introduce a #define in PdfDefines
that configures the availibility of wchar_t* streams. Here you could try to
detect if a platform supports this. If it can't be detected you only have to
disable this global #define.
I don't know JAVA, but I agree upon your vision c++ lacks lots of tools. And
it would be VERY nice if all open source projects would use the same BUILD
system (e.g. CMAKE of YAM). And it would be even nicer if all open source
projects would support Linux and Windows builds. This last problem should be
handled by the generic BUILD system. What is missing in the open source
community is a lowlevel c / c++ library containing an abstraction to the OS.
What I have seen is everybody writes his own stream class in C, writes his
own memory management, writes his own string class, hopefully uses pthreads,
uses #define's for some c runtime api, so it can be changed, ...
And last but not least, there should be documentation how to compile a open
source project AND ALL OF IT'S DEPENCIES yourself. If everybody would use
the same BUILD system, this probably could be automated. At present, you
really have to know low level things you do not want to know. At present you
just want to say, hey I have bcc32 compile this for me into a dll and
download all the dependencies for me (the compiler is off course NOT a
dependency, it's a prerequisite). The installed generic build system should
be provided with automatic updates.
Also every open source project should have a C style interface. This really
broadens the range of languages it can be used in.
These are my thoughts, they are not meant negative. This is just what I see
from a professional point of view (I'm a programmer for 12 years now). This
is why in the future the .NET platform will take a huge leap forward,
because this platform makes operability between languages possible, without
even recompiling. You just USE a dependency, you do not have to find out how
to compile each dependency and eventually the whole.
I know you are going to say, what about Java. Well Java is just one language
that is very well build, .NET are many languages that can talk to each
other. If your favorite language is Delphi, just program a Delphi
dependency, give it to a C# programmer and he can use it, without any
problems.
Regards,
MIrco
2009/7/15 Craig Ringer <[email protected]>
> On Mon, 2009-07-13 at 14:00 +0200, Mirco Babin wrote:
> > Hi,
> >
> > Update, I found out where the JPEG errors came from.
> > In source PdfImage.c before including jpeglib.h insert the following
> > lines:
> > #ifdef PODOFO_HAVE_JPEG_LIB
> > //INSERTED
> > #define XMD_H
> > #define HAVE_BOOLEAN
> > //END INSERTED
>
> Interesting. Are you able to see if that's OK in VC++ as well? You can
> get VC++ Express Edition for free from Microsoft.
>
> What's your reasoning behind setting those flags? Is this something you
> think we should be doing on all platforms, just win32, or just
> win32/mingw?
>
> I don't currently have a Windows dev environment and I'm not able to
> spend enough time on PoDoFo to want to set one up.
>
>
> > C:\a\open\PoDoFo\podofo\src\PdfInputDevice.cpp:72: error: no matching
> > function for call to `std::basic_ifstream<char, std::char_traits<char>
> > >::basic_ifstream(const wchar_t*&, const std::_Ios_Openmode&)'
>
> The STL provided by MinGW is incomplete. One of the missing features is
> wchar_t versions of many of the iostreams templates.
>
> These need to be guarded with tests for compilation under MinGW.
>
>
> ( Have I mentioned that I'm coming to really, really loathe C++ - not
> the language, but the tools and environments in which the language is
> used? I've been doing lots of Java work in my job lately, and while I
> really miss RAII, stack-based objects with scope lifetime, and reliable
> dtors, I'm loving not having to care about bizarre platform/compiler
> quirks, build system pain, and C/C++'s half-assed Unicode non-support
> from hell. )
>
> --
> Craig Ringer
>
>
------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Podofo-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/podofo-users