[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Building for windows. Again.



The py-lmdb project have a comment [1] about reusing Python.h headers
which seems to work for them.

# Microsoft Visual Studio 9 ships with neither inttypes.h, stdint.h, or a sane
# definition for ssize_t, so here we add lib/win32 to the search path, which
# contains emulation header files provided by a third party. We force-include
# Python.h everywhere since it has a portable definition of ssize_t, which
# inttypes.h and stdint.h lack, and to avoid having to modify the LMDB source
# code. Advapi32 is needed for LMDB's use of Windows security APIs.

[1] https://github.com/dw/py-lmdb/blob/master/setup.py

On Thu, Nov 19, 2015 at 10:13 PM, Kristoffer Sjögren <stoffe@gmail.com> wrote:
> The actual build command:
>
> $ cmd.exe /X /C "vcbuild /platform:x64 vs2008.vcproj release"
>
> On Thu, Nov 19, 2015 at 10:11 PM, Kristoffer Sjögren <stoffe@gmail.com> wrote:
>> That's the thing, the build doesn't complain about anything missing.
>> But the binary seems broken because tests fail randomly.
>>
>> A user tried the generated binary on his machine and it worked but also said...
>>
>> "Hm, almost, the database file is no longer put to the requested
>> directory, and its name is totally garbled. It finds it consistently
>> though, and the contents are correct."
>>
>> https://github.com/deephacks/lmdbjni/issues/48
>>
>> On Thu, Nov 19, 2015 at 9:57 PM, Howard Chu <hyc@symas.com> wrote:
>>> Kristoffer Sjögren wrote:
>>>>
>>>> Hi
>>>>
>>>> I'm trying to build LMDB with Java/JNI bindings with Visual C++
>>>> Project Builder 9.00.30729 (vcbuild).
>>>>
>>>> Unfortunately, vcbuild don't ship with inttypes.h, stdint.h, or a sane
>>>> ssize_t. So I searched around and found a few candidates [1] of
>>>> inttypes.h and stdint.h that seems to be working for py-lmdb.
>>>>
>>>> However, unistd.h seems broken for windows - and the python guys use
>>>> python.h instead.
>>>>
>>>> Any ideas where I might find a good unistd.h?
>>>
>>>
>>> I see you have one already - what is wrong with it, what definitions are
>>> missing?
>>>
>>>>
>>>> Cheers,
>>>> -Kristoffer
>>>>
>>>>
>>>> [1] https://github.com/deephacks/lmdbjni/tree/master/lmdbjni-win64/headers
>>>>
>>>>
>>>
>>>
>>> --
>>>   -- Howard Chu
>>>   CTO, Symas Corp.           http://www.symas.com
>>>   Director, Highland Sun     http://highlandsun.com/hyc/
>>>   Chief Architect, OpenLDAP  http://www.openldap.org/project/