[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Building under Cygwin
From: |
Fred Kiefer |
Subject: |
Re: Building under Cygwin |
Date: |
Sat, 10 Aug 2013 15:59:07 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7 |
Great that you could get GNUstep working again on Cygwin.
The call to /bin/rebaseall belongs somewhere into the target.make file
of GNUstep make. Anybody with more insight should place it there.
As for the objc-load.m patch I think that your change is fine and should
be applied, but more work is needed on that file. The whole case of
"#else" should either be removed or brought up to date with modern
libobjc versions. This is something for David and Nicola to look into.
And somebody should test, whether the special code for MINGW is still
needed. If not, we should change that #ifdef to CYGWIN.
And is the case of a category argument actually needed? We don't seem to
use it in base.
What where the other changes you needed to do?
Fred
On 10.08.2013 13:12, Ivan Vučica wrote:
> apart from patching the objc-load.m part, I also patched some portions that
> do with launching processes. All of the attempts at mixing MinGW-style
> loading with Cygwin-based code seem very messy, and in the end I'm not
> absolutely sure it was necessary: Cygwin has some issues with fork() that
> their command /bin/rebaseall ended up fixing for me.
>
> It seems that after compiling and installing GNUstep, running
> /bin/rebaseall on all .dlls installed by Cygwin plus all .dlls produced by
> GNUstep fixes the issues.
>
> The only issue that remained for me is that SystemPreferences cannot load
> any of its preference panes. Printed in the console is "No such file or
> directory". It's not a big deal for me, as for any testing of the backend I
> can use Calculator.app instead. Also, I could not test CoreBase and Opal
> because CoreBase depends on ICU - 15mb+, so I did not go downloading it
> over cellphone.
>
> I'll try doing a clean checkout of GNUstep and see what needs to be applied
> before committing anything, but generally it seems GS works rather nicely.
>
> On Fri, Aug 9, 2013 at 10:39 AM, David Chisnall <David.Chisnall@cl.cam.ac.uk
>> wrote:
>
>> If you have time to look at libobjc2 under Windows, I'd be grateful for
>> someone with Windows dev experience to take a look. There's some basic
>> support there, but it's not really very good, and I don't think it will
>> actually build on Windows. I can provide advice, but don't have a Windows
>> machine for testing.
>>
>> David
>>
>> On 9 Aug 2013, at 00:11, Ivan Vučica <ivan@vucica.net> wrote:
>>
>>> Hello all,
>>>
>>> I'm trying to build GNUstep Base under Cygwin. So far, I've done the
>> following
>>>
>>> cd gnustep/core/make
>>> ./configure --enable-debug-by-default --with-layout=gnustep
>> --prefix=/GNUstep
>>> make && make install
>>> cd -
>>>
>>> . /GNUstep/System/Library/Makefiles/GNUstep.sh
>>> cd gnustep/core/base
>>> ./configure --with-ffi-include=/usr/lib/libffi-3.0.13/include
>> --disable-icu --disable-libdispatch
>>> make
>>>
>>> I've disabled ICU simply because I'm connecting over a metered
>> connection, and 15mb+ is just a bit too much for me to install right now.
>>>
>>> I've disabled libdispatch because its presence was incorrectly detected
>> by configure; header called 'dispatch.h' exists in Cygwin's
>> /usr/include/w32api/, which is enough to trigger an attempted inclusion of
>> this file by GSDispatch.h.
>>>
>>> I'm having trouble with the following though:
>>>
>>> Compiling file objc-load.m ...
>>> objc-load.m: In function ‘GSPrivateSymbolPath’:
>>> objc-load.m:299:32: error: request for member ‘category_name’ in
>> something not a structure or union
>>> objc-load.m:313:46: error: request for member ‘class_name’ in something
>> not a structure or union
>>> objc-load.m:314:25: error: request for member ‘class_name’ in something
>> not a structure or union
>>> objc-load.m:316:40: error: request for member ‘category_name’ in
>> something not a structure or union
>>> objc-load.m:317:25: error: request for member ‘category_name’ in
>> something not a structure or union
>>> /GNUstep/System/Library/Makefiles/rules.make:468: recipe for target
>> `obj/libgnustep-base.obj/objc-load.m.o' failed
>>>
>>> I'm using the GCC and the GCC runtime, since they come with Cygwin and I
>> don't feel like playing with getting Clang (or, even worse, compiling it).
>> I'm not installing libobjc2, at least not until the GCC-only setup works...
>> GCC is 4.7.3.
>>>
>>> $ gcc --version | head -n1
>>> gcc (GCC) 4.7.3
>>>
>>> Tips?
Re: Building under Cygwin, Riccardo Mottola, 2013/08/09