Re: compile glib success but failure on run-time with every version



>dependencies are common betwen GTK 2 and 3 so you could just use our project files instead of writing your own

Indeed! I already cloned your repo a week ago and it's helping me a lot, and also without Fan's solutions from it's tutorial on GNOME site my project would not be possible, so you guys made a great job!

I spend whole night debugging glib test projects and it's dependencies trying to figure out why test projects do not work and noticed you use libffi 3.0.13 version, so I replaced 3.1 with 3.0.13, recompiled and some of the bugs just disappeared, but can't say anything yet until everything is in place.


>> can you tell why don't you compile gtk3?

> Because HexChat is still a GTK 2 application.

OH! sorry, I absolutely missed (did not read) what HexChat is, I see now :)

BTW, I made an initial version of dependency graph yesterday which is based on Fan's tutorial and graph from your site, and would like to hear what you guys think about it:  https://raw.githubusercontent.com/codekiddy2/Visual-Studio-gtkmm/Redesign/projects/Readme/dependency-graph.png

Thank you for your kind responses!
~codekiddy

On Fri, Feb 13, 2015 at 6:17 PM, Arnavion <arnavion gmail com> wrote:
>unfortunatelly what I want to achieve is to compile most recent packages by using VS 2013 solutions *only*

Most of the dependencies are compiled via VS 2013 solutions, specifically all the ones that come with VS solutions already (and a few more). Many (most?) dependencies are common betwen GTK 2 and 3 so you could just use our project files instead of writing your own. For example, you mentioned glib 2.42.1 which is also what we build.

Of course for GTK 3 itself you'd have to make your own files.

>can you tell why don't you compile gtk3?

Because HexChat is still a GTK 2 application.

-Arnav


On Thu, Feb 12, 2015 at 10:14 PM, codekiddy <codekiddy gmail com> wrote:
Hi arnavion, I have HexChat website opened in my webbrowser all the time while compiling, you have a nice graph!
unfortunatelly what I want to achieve is to compile most recent packages by using VS 2013 solutions *only*...
can you tell why don't you compile gtk3? why gtk2? did you try and/or what prevents you from compiling gtk3?
every kind of information is valuable.

On Thu, Feb 12, 2015 at 8:21 PM, Arnavion <arnavion gmail com> wrote:
For HexChat, we compile GTK2 and all the dependencies for it with MSVC 2013 - https://github.com/hexchat/gtk-win32

-Arnav

On Thu, Feb 12, 2015 at 7:19 AM, codekiddy <codekiddy gmail com> wrote:
Hello again, I would just like to say that "I think" I found a problem in gio.dll

I Created created a test project for glib, gio and gobject, for glib-2.42.1 package where gio test fails in following function in
glib-2.42.1\gobject\tests\object.c:

#ifdef G_OS_WIN32

static gboolean
recv_windows_message (GIOChannel  *channel,
     GIOCondition cond,
     gpointer    data)
{
  GIOError error;
  MSG msg;
  guint nb;
  
  while (1)
    {
      error = g_io_channel_read (channel, &msg, sizeof (MSG), &nb);
      
      if (error != G_IO_ERROR_NONE)
{
 g_print ("gio-test: ...reading Windows message: G_IO_ERROR_%s\n",
  (error == G_IO_ERROR_AGAIN ? "AGAIN" :
   (error == G_IO_ERROR_INVAL ? "INVAL" :
    (error == G_IO_ERROR_UNKNOWN ? "UNKNOWN" : "???"))));
 if (error == G_IO_ERROR_AGAIN)
   continue;
}
      break;
    }

  g_print ("gio-test: ...Windows message for %#x: %d,%d,%d\n",
  msg.hwnd, msg.message, msg.wParam, msg.lParam);

  return TRUE;
}


RESULT:
Run-Time Check Failure #2 - Stack around the variable 'nb' was corrupted.

It looks the best way for now would be to compile some older version or maybe newer unstable version for now, since I have no time to debug code I'm not familiar with.

Have anyone of you be able to compile glib-2.42.1 with msvc-120? 

On Thu, Feb 12, 2015 at 2:09 PM, Fan Chun-wei <fanc999 yahoo com tw> wrote:
Hi,

For the test programs, you can take a look at Makefile.am in the same directory, and you would probably see something like -DG_LOG_DOMAIN=\"...\", and this is (without the -D) what you need to add to your preprocessor definitions. Basically, what is happening is that the test program is expecting a message in a particular form that is affected by that preprocessor define.

Hope this clears it up for you.

With blessings.


From: codekiddy <codekiddy gmail com>;
To: <gtk-list gnome org>;
Subject: compile glib success but failure on run-time with every version
Sent: Thu, Feb 12, 2015 12:39:32 PM

Hello, I'm working on series of Visual Studio 2013 solutions and projects on GitHub to compile GTK+ stack and it's dependencies from scratch, beginning with zlib and iconv up to GTK+ and even gtkmm. So far I succeeded to compile everything by using msvc-120 and other tools and here is a problem with glib:

I run test projects of every successful package compilation by using "test" source files from each package, and it's the glib only that fails, the glib test that fails whose source code is found in <package_root>\tests\testglib.c triggers a breakpoint. The very same error happens when running gtk-demo application, the application crashes so
I compiled several versions of glib and re-linked the GTK and it's dependencies with new glib but with no success. glib test can not pass.

I'm not sure how to describe my problem but here is the result while debugging testglib.c test:

(testglib.exe:2492): GLib-CRITICAL **: Did not see expected message **-CRITICAL **: *g_print*assertion*failed*

(testglib.exe:2492): GLib-CRITICAL **: g_print: assertion 'format != NULL' failed

Here are versions of glib sources that I compiled:
2.34.3
2.39.92
2.40.2
2.42.1

all of the above packages get successfully compiled including all dpendencies, but running testglib.c results in same error and thus preventing me to finaly run gtk-demo application resulting in crash.

I was able to compile GTK+ and all it's dependencies by using Windows SDK 7.1 and msvc-100 some time ago so I'm installing the msvc-100 toolset right now and will try to compile with that and see if this makes any change.
Also all of my tools, (SDK, IDE, and sources) are located in path with no spaces) as suggested in README file of glib and other packages.

Do you know what could be the cause of this? and what can I do to solve this problem? please let me know if you need more information..
Thank you so much!


_______________________________________________
gtk-list mailing list
gtk-list gnome org
https://mail.gnome.org/mailman/listinfo/gtk-list







[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]