Thank you very much for responding!

Hope you are well too.

It is great news to know that you are working on a universal installation
script, it gives me hope to run GNUstep (and GWorkspace my goal in
particular) on the mac!

I will continue testing the script for sure!

Best regards!

Gregory Casamento <[email protected]> escreveu no dia quarta,
21/04/2021 à(s) 02:45:

> Hello Pierre,
>
> I hope you are well.   I am currently working on this.   Any insights or
> suggestions you can provide would be greatly appreciated.
>
> I have been working on a universal installation script recently.  One of
> the OSs I have tried to get working, without success, is macOS.   Up until
> recently getting GNUstep working on macOS has not been a priority since it
> represents the system we are trying to implement.  However, I do see the
> practical advantages of getting GNUstep building and working properly on it.
>
> You can find the script here...
>
> /bin/bash -c "$(curl -fsSL
> https://raw.githubusercontent.com/gnustep/tools-scripts/master/gnustep-web-install
> )"
>
> The repo is, of course, https://github.com/gnustep/tools-scripts/
>
> It should run partially and you can see the issues it has.  Currently,
> this script works on Linux, Windows (if you install MSYS2), and a couple of
> the BSDs.
>
> Thanks, GC
>
>
> On Tue, Apr 20, 2021 at 11:56 PM pierre rs <[email protected]>
> wrote:
>
>> Hello!
>>
>> I discovered this mailing list through gnutesp.org and decided to
>> comment here about what I'm trying to achieve so that if anyone has any
>> tips/comments about it, they will be very welcome!
>>
>> I'm trying to install GNUstep on macOS Big Sur. My main goal is to have
>> GWorkspace running (especially because of the GWorkspace File manager which
>> is amazing!). Eventually, if possible, I would also like to have some other
>> apps like Gemas.app, ImageViewer.app, ViewPDF.app, Terminal.app and maybe
>> others.
>>
>> I have been using GWorkspace and some GNUstep apps on a second laptop
>> (Acer) that I have running Linux (Debian based, which has GNUstep apps
>> available in its repositories), however now I would like to have these apps
>> running on my main laptop (Mac). I searched the internet on how to install
>> GNUStep on macOS, but for me it has been particularly confusing to put
>> things in order taking into account my lack of general notion about
>> everything besides configure / make / make install.
>>
>> I made my first attempt to install via MacPorts
>> <https://www.macports.org>. It seemed to me that what was available
>> regarding GNUstep on MacPorts was out of date, but for me it would be
>> interesting if it worked because theoretically all dependencies would be
>> resolved. But unfortunately the installation via MacPorts had several
>> errors, apparently wrong paths in the packages / dependencies. So I removed
>> MacPorts from the OS.
>>
>> I also checked FinkProject <https://www.finkproject.org>, but it doesn't
>> seem to be incompatible with macOS Big Sur and I didn't find any GNUstep
>> packages either.
>>
>> I noticed that the Homebrew <https://brew.sh> package manager seems to
>> have a single package available for GNUstep called gnustep-make
>> <https://formulae.brew.sh/formula/gnustep-make#default>, but I don't
>> know how to take advantage of it in my attempt. I also believe that
>> Homebrew can be an alternative to install dependencies (libraries?) that
>> would be necessary to compile GNUstep from source.
>>
>> Speaking of compiling from source, it seems like the most possible option
>> to me. This is the route I intend to take now to try to install a GNUstep
>> environment on macOS that will allow me to compile / install Gworkspace at
>> the end. However, it is still unclear to me which dependencies (x11 and
>> other libraries?) I should try to install (via Homebrew maybe?) and in what
>> order.
>>
>>
>>
>> *P.S.* Searching the internet about compiling GNUstep on macOS, I didn't
>> find much specific but I found a web page on GitHub called "GNUstep
>> scripts" (gnustep / tools-scripts
>> <https://github.com/gnustep/tools-scripts>) that can possibly help with
>> the installation of GNUstep. I tried to run the scripts but there were
>> errors that led me to question whether they were missing dependencies or
>> something else. Just to illustrate my current environment I describe below
>> the steps I took in trying to run the scripts:
>>
>> 1. I have Xcode Version 12.4 (12D4e) installed from the App Store
>> (installed since my first attempt with MacPorts).
>>
>> 2. I installed Command Line Developer Tools (xcode-select --install).
>>
>> gcc --version
>>> Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr
>>> --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/4.2.1
>>> Apple clang version 12.0.0 (clang-1200.0.32.29)
>>> Target: x86_64-apple-darwin20.3.0
>>> Thread model: posix
>>> InstalledDir:
>>> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
>>
>>
>> clang --version
>>> Apple clang version 12.0.0 (clang-1200.0.32.29)
>>> Target: x86_64-apple-darwin20.3.0
>>> Thread model: posix
>>> InstalledDir:
>>> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
>>
>>
>> gnumake --version
>>
>> GNU Make 3.81
>>
>> Copyright (C) 2006  Free Software Foundation, Inc.
>>
>> This is free software; see the source for copying conditions.
>>
>> There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
>>
>> PARTICULAR PURPOSE.
>>
>> This program built for i386-apple-darwin11.3.0
>>
>>
>> 3. I cloned the libs-base, libs-back, libs-gui, tool-make and
>> tool-scripts repositories into a directory.
>>
>> mkdir -p ~/Downloads/gnustep
>>> cd ~/Downloads/gnustep
>>> git clone https://github.com/gnustep/libs-base.git
>>> git clone https://github.com/gnustep/libs-back.git
>>> git clone https://github.com/gnustep/libs-gui.git
>>> git clone https://github.com/gnustep/tools-make.git
>>> git clone https://github.com/gnustep/tools-scripts.git
>>
>>
>> 4. The first two scripts that I ran, I didn't see any noticeable errors:
>>
>> ./tools-scripts/clang-build
>>> ./tools-scripts/compile-all
>>
>>
>> 5. When running the build-darwin script, errors appeared:
>>
>> ./tools-scripts/build-darwin
>>
>> I selected the most notable errors (from build-darwin script output)
>> below:
>>
>> ...
>>> ======== Build base
>>> (...)
>>> In file included from GCObject.m:31:
>>> In file included from .././common.h:59:
>>> ../../Headers/Foundation/NSString.h:974:15: error: 'objc_class' is
>>> unavailable
>>> extern struct objc_class _NSConstantStringClassReference;
>>>               ^
>>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/runtime.h:55:8:
>>> note: 'objc_class' has been explicitly marked unavailable here
>>> struct objc_class {
>>>        ^
>>> In file included from GCArray.m:27:
>>> In file included from .././common.h:59:
>>> ../../Headers/Foundation/NSString.h:974:15: error: 'objc_class' is
>>> unavailable
>>> extern struct objc_class _NSConstantStringClassReference;
>>>               ^
>>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/runtime.h:55:8:
>>> note: 'objc_class' has been explicitly marked unavailable here
>>> struct objc_class {
>>>        ^
>>> In file included from GSObjCRuntime.m:32:
>>> In file included from .././common.h:59:
>>> ../../Headers/Foundation/NSString.h:974:15: error: 'objc_class' is
>>> unavailable
>>> extern struct objc_class _NSConstantStringClassReference;
>>>               ^
>>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/runtime.h:55:8:
>>> note: 'objc_class' has been explicitly marked unavailable here
>>> struct objc_class {
>>>        ^
>>> 1 error generated.
>>> 1 error generated.
>>> gnumake[4]: *** [obj/Additions.obj/GCObject.m.o] Error 1
>>> gnumake[4]: *** Waiting for unfinished jobs....
>>> gnumake[4]: *** [obj/Additions.obj/GCArray.m.o] Error 1
>>> In file included from GSObjCRuntime.m:52:
>>> In file included from
>>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/Protocol.h:39:
>>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:53:1:
>>> error: duplicate interface definition for class 'NSObject'
>>> @interface NSObject <NSObject> {
>>> ^
>>> ../../Headers/Foundation/NSObject.h:292:12: note: previous definition is
>>> here
>>> @interface NSObject <NSObject>
>>>            ^
>>> 2 errors generated.
>>> gnumake[4]: *** [obj/Additions.obj/GSObjCRuntime.m.o] Error 1
>>> gnumake[3]: *** [internal-subproject-all_] Error 2
>>> gnumake[2]: *** [Additions.all.subproject.variables] Error 2
>>> gnumake[1]: *** [internal-all] Error 2
>>> make: *** [internal-all] Error 2
>>> (...)
>>> ======== Build gui
>>> (...)
>>> aking all in Source ...
>>> /usr/local/opt/GNUstep/System/Library/Makefiles/mkinstalldirs .
>>> mv ../Headers/Additions/GNUstepGUI/config.h .
>>> touch ./config.h
>>> Making all for library libgnustep-gui...
>>>  Compiling file Functions.m ...
>>>  Compiling file NSAccessibility.m ...
>>>  Compiling file NSAccessibilityCustomAction.m ...
>>>  Compiling file NSAccessibilityCustomRotor.m ...
>>> /bin/sh: gcc-10: command not found
>>> /bin/sh: gcc-10: command not found
>>> /bin/sh: gcc-10: command not found
>>> /bin/sh: gcc-10: command not found
>>> gnumake[4]: *** [obj/libgnustep-gui.obj/NSAccessibility.m.o] Error 127
>>> gnumake[4]: *** Waiting for unfinished jobs....
>>> gnumake[4]: *** [obj/libgnustep-gui.obj/Functions.m.o] Error 127
>>> gnumake[4]: *** [obj/libgnustep-gui.obj/NSAccessibilityCustomAction.m.o]
>>> Error 127
>>> gnumake[4]: *** [obj/libgnustep-gui.obj/NSAccessibilityCustomRotor.m.o]
>>> Error 127
>>> gnumake[3]: *** [internal-library-all_] Error 2
>>> gnumake[2]: *** [libgnustep-gui.all.library.variables] Error 2
>>> gnumake[1]: *** [internal-all] Error 2
>>> make: *** [internal-all] Error 2
>>> (...)
>>> ======== Build back
>>> (...)
>>> configure: error: libXt not found - required for building x11 server
>>> /usr/local/opt/GNUstep/System/Library/Makefiles/common.make:203:
>>> back.make: No such file or directory
>>> This is gnustep-make 2.9.0. Type 'gnumake print-gnustep-make-help' for
>>> help.
>>> Running in gnustep-make version 2 strict mode.
>>> if [ -x config.status ]; then \
>>>       ./config.status --recheck && ./config.status; \
>>>     else \
>>>       ./configure; \
>>>     fi
>>> checking build system type... x86_64-apple-darwin20.3.0
>>> checking host system type... x86_64-apple-darwin20.3.0
>>> checking target system type... x86_64-apple-darwin20.3.0
>>> configure: WARNING: You are running configure with the compiler (gcc-10)
>>> set to a different value from that used by gnustep-make (clang).  To a
>>> void conflicts/problems, reconfigure/reinstall gnustep-make to use
>>> gcc-10 or run the gnustep-base configure again with your CC environment var
>>> iable set to clang
>>> configure: WARNING: You are running configure with the compiler (g++-10)
>>> set to a different value from that used by gnustep-make (clang++).  To
>>>  avoid conflicts/problems, reconfigure/reinstall gnustep-make to use
>>> g++-10 or run the gnustep-base configure again with your CXX environment
>>>  variable set to clang++
>>> checking for gcc... gcc-10
>>> checking whether the C compiler works... no
>>> configure: error: in `/Users/pierre/Downloads/gnustep/libs-back':
>>> configure: error: C compiler cannot create executables
>>> See `config.log' for more details
>>> make: *** [back.make] Error 77
>>> Done.
>>
>>
>> Searching the internet for the error "checking whether the C compiler
>> works ... no" I found this
>> <https://stackoverflow.com/questions/22844522/os-x-10-9-2-checking-whether-the-c-compiler-works-no>
>> and this
>> <https://github.com/react-native-maps/react-native-maps/issues/2290>
>> too. Which suggested running the "sudo xcode-select --switch
>> /Applications/Xcode.app" command. But it ended up having no effect.
>>
>> Best regards!
>> --
>> *Pierre Santos*
>>
>
>
> --
> Gregory Casamento
> GNUstep Lead Developer / OLC, Principal Consultant
> http://www.gnustep.org - http://heronsperch.blogspot.com
> https://www.patreon.com/bePatron?u=352392 - Become a Patron
> https://gf.me/u/x8m3sx - My GNUstep GoFundMe
> https://teespring.com/stores/gnustep - Store
>


-- 
*Pierre Santos*

Reply via email to