« Return to Thread: Compiling GNUstep base on OSX 10.5.7

Re: GNUstep.gui on OS X 10.3.9, make fails (Gorm/ProjectCenter)

by Bryan Pierce-3 :: Rate this Message:

Reply to Author | View in Thread

Hello once again!

I hate to wear out my welcome, but I can't seem to get two steps without
getting stuck again. I've got two problems going on.

(1) Gorm compiled but when I try to launch Gorm I get the following error
    dyld: /usr/GNUstep/Local/Applications/Gorm.app/Gorm Undefined symbols:
    /usr/GNUstep/Local/Library/Libraries/libgnustep-gui.dylib.0.16
undefined
    reference to restFP expected to be defined in a dynamic image
    /usr/GNUstep/Local/Library/Libraries/libgnustep-gui.dylib.0.16 undefined
     reference to saveFP expected to be defined in a dynamic image
    Trace/BPT trap

I did find a reference on the internet but
    The restFP and saveFP functions are defined in Apple's libgcc, and so
    the fix is simply to include this library in your link line. The best
    way of doing this is to include the option
        -lcc_dynamic
    at the end of your link line (it has to come at the end, so that it
    comes after the modules which create the references to the restFP and
    saveFP symbols).
But attempts to add the library flag to a GNUmakefile have not helped

(2) ProjectCenter-0.5.0 is not compiling. I am getting the following errors
    Making all in Framework...
    Making build-headers for framework ProjectCenter...
    Making all for framework ProjectCenter...
     Linking framework ProjectCenter ...
    ld: for architecture ppc
    ld: warning -L: directory name (../ProjectCenter/./obj) does not exist
    ld: obj/NSFramework_ProjectCenter.o illegal reference to symbol:
    ___objc_class_name_NSConstantString defined in indirectly referenced
    dynamic library
/usr/GNUstep/Local/Library/Libraries/./libgnustep-base.dylib.1.18
    /usr/bin/libtool: internal link edit command failed
     Copying resources into the framework wrapper...
     Copying localized resources into the framework wrapper...
    ...
     Linking app ProjectCenter ...
    /usr/bin/ld: can't locate file for: -lProjectCenter
    collect2: ld returned 1 exit status
    make[2]: *** [ProjectCenter.app/./ProjectCenter] Error 1
    make[1]: *** [internal-app-run-compile-submake] Error 2
    make: *** [ProjectCenter.all.app.variables] Error 2

I don't know if the "missing directory name" could have resulted in the
error, but it
seemed like it might be significant. I've attached the full readouts for
both Gorm
and ProjectCenter makes.

As always, any help is very, very, much appreciated!!
I'm hoping by the time I get to my first HelloWorld.m program I will be
a little more
self-sufficient. ;-)

Sincere thanks!!
Bryan




Bryan Pierce wrote:

> Hello Wolfgang!!
>
> Thanks again very, very, much!!
> At least now I have managed to get Gorm installed and am on to the
> next step :-)
>
> Re-making the base did make a difference
>
>     (*)  Complaints about missing libxml, tls, or cups libraries
> completely dissapeared
>     (*)  One new error occurred, but adding the patch back in
> eliminated the error
>    /usr/bin/ld: ./obj/RTFConsumer.m.o illegal reference to symbol:    
> ___objc_class_name_NSConstantString defined in indirectly      
> referenced dynamic library /usr/GNUstep/Local/Library/
>    Libraries/./libgnustep-base.dylib.1.18
>    collect2: ld returned 1 exit status
>
>     (*)  Adding the patch back fixed the error, so the gui installed
> very cleanly
>
>     (*)  gorm still did not install after reinstalling the base and
> gui, however with the patches you provided the gorm did install
> without errors
>
>
> Again, Sincere Thanks!!!
> Bryan
>
> Wolfgang Lux wrote:
>> Bryan Pierce wrote:
>>
>>> Hello again!
>>>
>>> Perhaps you would be so kind to help me through one more step...
>>> I ran into the same error again while make-ing gorm-1.2.10
>>>
>>> I thought I might be able to figure out how to translate the patch
>>> to Gorm, but it is apparently beyond my level of
>>> expertise.
>>
>> I guess the problem is that my tip to just reinstall gnustep-make
>> after reconfiguring with --enable-absolute-install-paths was
>> incomplete. You also have to rebuild and reinstall gnustep-base,
>> gnustep-gui, and gnustep-back (i.e., make clean followed by make
>> install) for the dynamic libraries to take notice of the
>> configuration change. If things still do not work out then, see for a
>> patch below.
>>
>>> This is the error that was produced running make:
>>> (there is no configure script)
>>> (there were also quite a few warnings previous to the error (see
>>> attatchment) - I don't know how significant they are - they do not
>>> appear to be directly related to the error as fare as I can tell)
>>>
>>>     Linking library GormCore ...
>>>    ld: for architecture ppc
>>>    ld: warning can't open dynamic library:
>>> libgnustep-base.dylib.1.18    (checking for undefined symbols may be
>>> affected) (No such file or    directory, errno = 2)
>>>    ld: obj/GormInternalViewEditor.m.o illegal reference to
>>> symbol:     _NSFrameRect defined in indirectly referenced dynamic
>>> library /usr/    
>>> GNUstep/Local/Library/Libraries/./libgnustep-gui.dylib.0.16
>>>    /usr/bin/libtool: internal link edit command failed
>>>    make[3]: *** [obj/libGormCore.dylib.1.2.10] Error 1
>>>
>>>
>>> And here are the critical lines of the patch for reference (for
>>> /src/gnustep-gui-0.16.0/TextConverters/RTF/GNUmakefile):
>>>    +ifeq ($(findstring darwin, $(GNUSTEP_TARGET_OS)), darwin)
>>>    +RTFConverter_BUNDLE_LIBS += -lgnustep-gui $(FND_LIBS) $(OBJC_LIBS)
>>>    +endif
>>>
>>>
>>> All I can guess is that I would want to create a patch for
>>> /src/gorm-1.2.10/GormCore/GNUmakefile , and perhaps replacing
>>> RTFConverter_BUNDLE_LIBS with something "Gorm-ish"
>>
>> Digging out the MacPorts Portfile for Gorm it seems that adding
>> something like
>>
>> ifeq ($(findstring darwin, $(GNUSTEP_TARGET_OS)), darwin)
>> SHARED_LD_POSTFLAGS += -lgnustep-base -lgnustep-gui -lGorm
>> -lGormObjCHeaderParser
>> endif
>>
>> to GNUmakefile in GormCore might do the job. And you'll eventually
>> also need
>>
>> ifeq ($(findstring darwin, $(GNUSTEP_TARGET_OS)), darwin)
>> SHARED_LD_POSTFLAGS += -lGorm -lGormObjCHeaderParser
>> -L../GormObjCHeaderParser/obj -lGormObjCHeaderParser
>> endif
>>
>> in GNUmakefile in GormPrefs in that case. (Don't ask for the magic
>> behind.) All of this is untested, since I have no spare machine to
>> run GNUstep on 10.3.
>>
>> Wolfgang
>>
>>
>
>
>
> _______________________________________________
> Discuss-gnustep mailing list
> Discuss-gnustep@...
> http://lists.gnu.org/mailman/listinfo/discuss-gnustep
>



_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@...
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

 « Return to Thread: Compiling GNUstep base on OSX 10.5.7