Re: NSURL breaks libs-base building

Patrick Cardona <[email protected]>
Newsgroups gmane.comp.lib.gnustep.general
Message-ID <48adfc3ce920b5e336fcfec4d348e3b2@pi400gnustep>
Hi Riccardo,

I successfully built GNUstep Core with GNU Runtime on Debian 12.12. This is a major issue solved in my project. Again, thank You for the wise advice. I can now work again on a better look for the theme, namely as you suggested.

About GWorkspace, I just noted that configure failed to detect sqlite although sqlite3 is installed when building the submodule GWMetadata. Is it a known issue?

Patrick

On 2025-09-17 17:19:59 +0200 Riccardo Mottola <[email protected]> wrote:

> Hi Patrick!
> 
> Patrick Cardona wrote:
>> Hi Riccardo,
>> Hi Richard,
> 
> :-) it makes me smile
> 
>> - Building GNUstep (last Runtime 2.1 with clang-14 and linker gold) works 
>> fine the first time on a fresh updated lite system (Debian Bookworm 12.12) 
>> - I am using a set of scripts inspired by Patryck Laurent: namely his tip 
>> about Libdispatch (removing some headers related to Blocks before building 
>> libobjc2). I needed also to install cmake 4 because the debian default 
>> release is outdated. So after the first pass all seems ok (no errors in the 
>> logs).
> 
>> - The side effect of the above method is that the GNUstep tools-make are 
>> built and installed several times: if you try to install again the whole 
>> GNUstep on the same system, weird things begin to happen and the build 
>> process will fail (too many errors in the logs. One reason seems that the 
>> PATH to cmake 4 ($HOME/.local/bin) which was right the first time was 
>> overriden in the following attempts. I am also guessing about the last 
>> GNUstep.sh sourced which may not be accurate to rebuild...
>> - I added a test to warn the user about this risk. But what if another 
>> script fails - and really I need often to iterate. So if we cannot 
>> reinstall GNUstep, maybe a removing method should be necessary. I remove 
>> the building folders, use a dirty 'sudo rm -fR /usr/GNUstep'... I clean 
>> also ~/GNUstep, ~/.bashrc, log out and log in again.
> 
> I wonder of this issue. I have few installation using libobjc2 because it is 
> troublesome for me and doesn't compile out-of-the-box or fails to work 
> properly on several OS-Architectures combination I use.
> However in GCC environments I have no issue "reinstalling" tools-make several 
> times! I often do only incremental builds (make && make install in make, 
> base, gui, back) and it works.
> I source GNUstep.sh "before" installing make.
> 
> 
>> About the matter to build only with gcc, I am very very curious: I was 
>> never able to make the new ABI (objc2, runtime >= 2) with only gcc. Do you 
>> mean you don't install libdispatch/objc2 and you only use the old ABI 
>> (runtime 1.9)? Is the last release of GWorkspace building on this runtime?
> 
> Yes, latest GWorkspace and all software I maintain works with GCC runtime. It 
> uses threads and processes directly.
> libdispatch is needed directly if GCD is used. I don't know though if in case 
> of GCD presence "normal" threads change. Richard or other more base experts 
> can tell you perhaps.
> 
>> I have a multicore proc (`nproc` returns 4 on the pi 400) so I wonder if we 
>> loose the multithreading hability without Libdispatch and if it is a matter 
>> of performance.
>> Could you please tell us your building environment settings with only gcc 
>> and the config args you use for each GNUstep lib?
> 
> I don't precisely know of performance when using one or the other, but using 
> threads and processes GWorkspace will exploit multi-core or multi-CPU setups.
> 
> With gcc the setup should be very simple, the only changes are in make and 
> base to make sure the gnu-gnu-gnu runtime is selected and GCC is used. Should 
> be picked up by default
> 
> My setup on Linux is:
> 
> make:  /configure --with-layout=gnustep --prefix=/
> base, gui, back:  "configure"
> 
> gcc and runtime get picked up automatically for me.
> 
> On OpenBSD where clang is the default compiler to "coerence" it to use GCC I 
> do:
> 
> For make: configure --with-layout=gnustep --with-library-combo=gnu-gnu-gnu 
> CC=egcc CXX=eg++
> The rest base, gui, back should be just plain configure && make
> 
> Riccardo
> 

-- 
Patrick Cardona - Pi400 - GNU/Linux (Debian 12 aarch64: RPI OS Lite) 
Xorg (1:1.7.1-1.2) - libcairo2 (1.16.0-7+rpt1 arm64)
Window Maker (0.96.0) - GWorkspace (1.1.0 - 02 2025) - Theme: PiSiN - MUA: GNUMail (1.4.0)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.