Re: building a self-contained deployable gnustep [cont]

From:

Richard Frith-Macdonald

Subject:

Re: building a self-contained deployable gnustep [cont]

Date:

Mon, 17 Oct 2011 16:28:41 +0100

On 17 Oct 2011, at 15:26, Julian Mayer wrote:
>
> i am sorry to suggest it but maybe the faults on your end ;-) i was also
> under the impression it worked the first time i tested, but it seems some
> leftover environment variables caused the installed and not the embedded
> version to be picked up.
>
> to be sure your instructions work you have to:
> • move the ~/standalone out of place.
The instructions included moving ~/standalone to the app folder.
> • be on a clean shell that has not sourced GNUstep.sh and has no environment
> variables related to gnustep set.
I do not believe that is necessary... when you do the '.
~/standalone/Makefiles/GNUstep.sh' it will clean up old variables and replace
them with the new ones you need to build base.
> • do not have a global installation of gnustep in /usr. as the output of the
> modifed gui suggests, it looks for the backend here as last resort, so if you
> have gnustep installed on your system it will seem to work although it really
> doesn't:
I will admit a mistake on my part is certainly possible ... but I'm not a
complete newbie at this kind of thing, so before I did my test I took a few
precautions:
1. I moved /usr/GNUstep to prevent picking up my standard installed copy.
2. I hacked a line into NSProcessInfo.m to print XXXXXX to stderr in +initialize
3. I hacked a line into the backend lookup to print the location it actually
used for the backend
So, when it came to starting my test application, I could see the XXXXXXX
printed on the terminal, and know it used the base library it just built, and I
could see the log of the path it used for the backend bundle and know it was
using the bundle in the standalone folder. I'm therefore confident that I was
using the correct build.
Now, in the case of your log of:
2011-10-16 23:17:42.987 HelloWorld[8778] not found at
/usr/GNUstep/Local/Library/Frameworks/GNUstep_back.framework
2011-10-16 23:17:42.987 HelloWorld[8778] not found at
/usr/GNUstep/System/Library/Frameworks/GNUstep_back.framework
2011-10-16 23:17:42.987 HelloWorld[8778] not found at
/Library/Bundles/libgnustep-back-021.bundle
2011-10-16 23:17:42.987 HelloWorld[8778] not found at
/usr/GNUstep/Local/Library/Bundles/libgnustep-back-021.bundle
2011-10-16 23:17:42.987 HelloWorld[8778] not found at
/usr/GNUstep/System/Library/Bundles/libgnustep-back-021.bundle
Where is it getting those paths from? They can only be from a config file or
built in to the base library. But when base was configured two options were
used ... one which should have turned off reading of a config file at run time,
and the other which should have ensured that the built-in paths were those
defined in standalone.conf
The paths you are getting are those associated with a default build.