AdaCore / gtkada

Ada bindings for the GTK+ graphical library.
Other
88 stars 19 forks source link

Precision for Win32 build procedures #11

Closed ohenley closed 7 years ago

ohenley commented 7 years ago

Hi,

In the INSTALL file we can read the following:

If you are under Windows, you need to use GCC 4.7 (or later) to build the C files, and a unix-like environment (e.g. cygwin or msys) where the paths correspond to real Windows path (for instance by installing cygwin under the root directory). You can use an older GCC version for the Ada files (gnatmake). Under sh:

$ (cd src; patch -p0 < ../contrib/gtkada-2.10-win32.diff) $ CC='gcc-4.7 -mms-bitfields' ./configure --prefix= \ --build=i686-pc-mingw32

I would need the following precisions:

  1. In my contrib folder there is no gtkada-2.10-win32.diff file.
  2. I have cygwin installed at C:/cygwin. I do not understand what you mean by: "the paths correspond to real Windows path (for instance by installing cygwin under the root directory)." What root directory? Which paths ... should correspond to real Windoes path?
  3. . Is it the cygwin install dir or gtkada install dir?
  4. Why do you specify gcc-4.7. On my cygwin default install, the Gcc version (in my case 5.4) is executed by just calling gcc. Actually executing gcc-5.4 at the cygwin prompt does not work.

I ask because I tried many combinations and nothing ends up working. Compilation of misc-generated.c fails to find #include which I have under [cygwin_install_dir]/usr/include/gtk-3/gtk/gtk.h

Thank you.

setton commented 7 years ago

Hello @ohenley, in order:

  1. you can safely ignore the absence of the .diff file, this is a left-over from a previous distribution, we will remove this
  2. I think this is the cause of your problem in 4 - GtkAda probably expects to find your gtk install in /usr/include, not cygwinsomething/usr/include. Basically what is important is that /some/path in cygwin world should look like C:\some\path in the Windows world. You can achieve that with cygwin mount points, I believe.
  3. that's the gtkada install dir
  4. the mention of 'gcc-47' is for illustration purposes. For the actual problem, see answer to 2. You can also patch the makefile, or use standard compiler mechanisms to find the include files, for instance setting the C_INCLUDE_PATH environment variable to the path of your gtk+ installation.

Good luck! We know that building under Windows is tricky!

ohenley commented 7 years ago

Thank you for the precisions!

You wrote "/usr/include, not /usr/include". I think you did a typo... can you amend?.

setton commented 7 years ago

amended!