This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: direct.h


Hi,

2015-12-09 20:53 GMT+01:00 Eric Blake <eblake@redhat.com>:
> That's because <direct.h> is an old, non-standard header not present on
> modern POSIX-y machines.  You want <dirent.h> instead, when targetting
> cygwin.  Or else your project is truly tied to Windows, and you should
> be targetting mingw, in which case the question is semi-off-topic here
> (other than how to properly use the mingw cross-compilers available from
> a cygwin installation).

the project is Unix-based, I am just trying to create the both 32bit
and 64bit binaries for Windows users... I modified GDAL lib dependency
to include dirent.h instead of direct.h. The configure doesn't fails,
good. Unfortunately several compiled GRASS tools fails to run when
building:

      1 [main] g.proj (2604)
C:\cygwin64\home\landa\grass_trunk\dist.x86_64-w64-mingw32\bin\g.proj.exe:
*** fatal error - cygheap base mismatch detected -
0x180321400/0x901400.
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version.  The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution.  Rebooting is also suggested if you
are unable to find another cygwin DLL.

I do not have any other cygwin1.dll in path. Other GRASS tools are
compiled successfully, so the issue is probably related to linked
libraries or?

> That depends on whether your code is POSIX-y and targetting cygwin, or
> is tied to Windows APIs and should be targetting mingw.
>
>>
>> I am also not sure what will be difference between binaries compiled
>> using cygwin and mingw32-w64 toolchain except of dependencies (like
>> cygwin1.dll). MinGW32-w64 should produce native windows application,
>> but what does it mean exactly?
>
> A native app doesn't depend on cygwin, but that also means it can't use
> the POSIX-y interface provided by cygwin.

OK, thanks for explanation! Martin

-- 
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]