Hi Wolfgang,

>> I have Window Maker running now and Fred resize.app but still wasn't able to 
>> get one of my own apps to work that need to be linked against my frameworks. 
>> The test app links against gui and base but not any of the listed frameworks 
>> SRFoundation, SREnterprise,...
> 
> That very much sounds like the code of your test app does not use any code 
> from these frameworks.
> Keep in mind that libraries linked with -l options are used only to resolve 
> unresolved symbols in the code. If a library does not provide any such 
> symbols it is ignored and will not be included in the final executable.

That's not the case. The code is used. When executing the resulting binary I 
get tons of "... does not recognize selector ..." exceptions!? :-(

For test purposes I tried

        make messages=yes shared=no

This seems to add -static to the gcc statement and immediately produces errors 
in the link phase.

gcc -static -rdynamic      -pthread  -fgnu-runtime -o 
/Build/TabTest/TabTest.app/./TabTest \
/Build/TabTest/obj/TabTest.obj/Controller.m.o 
/Build/TabTest/obj/TabTest.obj/DocumentController.m.o 
/Build/TabTest/obj/TabTest.obj/main.m.o   -lESMFoundation -lSRAppKit -lSRDesign 
-lSREnterprise -lSRFoundation -lSRInterface -lSRMapKit -lSRObjects -lSRQuery    
-L/root/GNUstep/Library/Libraries -L/usr/local/lib   -L/usr/local/lib 
-L/usr/local/lib -L/usr/local/lib -L/usr/lib/i386-linux-gnu  -lESMFoundation 
-lSRAppKit -lSRDesign -lSREnterprise -lSRFoundation -lSRInterface -lSRMapKit 
-lSRObjects -lSRQuery  -lgnustep-gui    -lgnustep-base    -lobjc   -lgmp   
-lgnutls -lxslt -lxml2 -lffi -lrt -ldl  -lpthread -lz -licui18n -licuuc 
-licudata  -lm
/usr/bin/ld: cannot find -lESMFoundation
/usr/bin/ld: cannot find -lSRAppKit
/usr/bin/ld: cannot find -lSRDesign
/usr/bin/ld: cannot find -lSREnterprise
/usr/bin/ld: cannot find -lSRFoundation
/usr/bin/ld: cannot find -lSRInterface
/usr/bin/ld: cannot find -lSRMapKit
/usr/bin/ld: cannot find -lSRObjects
/usr/bin/ld: cannot find -lSRQuery
/usr/bin/ld: cannot find -lESMFoundation
/usr/bin/ld: cannot find -lSRAppKit
/usr/bin/ld: cannot find -lSRDesign
/usr/bin/ld: cannot find -lSREnterprise
/usr/bin/ld: cannot find -lSRFoundation
/usr/bin/ld: cannot find -lSRInterface
/usr/bin/ld: cannot find -lSRMapKit
/usr/bin/ld: cannot find -lSRObjects
/usr/bin/ld: cannot find -lSRQuery
/usr/bin/ld: cannot find -lgnustep-gui
/usr/bin/ld: cannot find -lgnustep-base
collect2: error: ld returned 1 exit status

ld does not find my libs!?? The frameworks are all built sucessfully with 
GNUstep make. If I remember correctly in earlier versions of GNustep make there 
weren't only the files

/usr/local/include/ESMFoundation
/usr/local/lib/GNUstep/Frameworks/ESMFoundation.framework/Versions/1/ESMFoundation
/usr/local/lib/GNUstep/Frameworks/ESMFoundation.framework/ESMFoundation

for a framework ESMFoundation but also a copy or link of ESMFoundation in a 
GNUstep Libraries directory. This is no longer the case and might be related to 
the problem!?

I did

   ln -s 
/usr/local/lib/GNUstep/Frameworks/ESMFoundation.framework/ESMFoundation 
/usr/local/lib/GNUstep/Libraries

   ls -l /usr/local/lib/GNUstep/Libraries

lrwxrwxrwx 1 root root   71 Mai  2 14:30 ESMFoundation -> 
/usr/local/lib/GNUstep/Frameworks/ESMFoundation.framework/ESMFoundation
drwxr-xr-x 3 root root 4096 Mai  2 11:56 gnustep-base
drwxr-xr-x 3 root root 4096 Mai  2 11:57 gnustep-gui

but this had no healing effect.

        make messages=yes shared=no

still gives me

This is gnustep-make 2.7.0. Type 'make print-gnustep-make-help' for help.
Running in gnustep-make version 2 strict mode.
Making all for app TabTest...
gcc -static -rdynamic      -pthread  -fgnu-runtime -o 
/Build/TabTest/TabTest.app/./TabTest \
/Build/TabTest/obj/TabTest.obj/Controller.m.o 
/Build/TabTest/obj/TabTest.obj/DocumentController.m.o 
/Build/TabTest/obj/TabTest.obj/main.m.o   -lESMFoundation -lSRAppKit -lSRDesign 
-lSREnterprise -lSRFoundation -lSRInterface -lSRMapKit -lSRObjects -lSRQuery    
-L/root/GNUstep/Library/Libraries -L/usr/local/lib   -L/usr/local/lib 
-L/usr/local/lib -L/usr/local/lib -L/usr/lib/i386-linux-gnu  -lESMFoundation 
-lSRAppKit -lSRDesign -lSREnterprise -lSRFoundation -lSRInterface -lSRMapKit 
-lSRObjects -lSRQuery  -lgnustep-gui    -lgnustep-base    -lobjc   -lgmp   
-lgnutls -lxslt -lxml2 -lffi -lrt -ldl  -lpthread -lz -licui18n -licuuc 
-licudata  -lm
/usr/bin/ld: cannot find -lESMFoundation
/usr/bin/ld: cannot find -lSRAppKit
/usr/bin/ld: cannot find -lSRDesign
/usr/bin/ld: cannot find -lSREnterprise
/usr/bin/ld: cannot find -lSRFoundation
/usr/bin/ld: cannot find -lSRInterface
/usr/bin/ld: cannot find -lSRMapKit
/usr/bin/ld: cannot find -lSRObjects
/usr/bin/ld: cannot find -lSRQuery
/usr/bin/ld: cannot find -lESMFoundation
/usr/bin/ld: cannot find -lSRAppKit
/usr/bin/ld: cannot find -lSRDesign
/usr/bin/ld: cannot find -lSREnterprise
/usr/bin/ld: cannot find -lSRFoundation
/usr/bin/ld: cannot find -lSRInterface
/usr/bin/ld: cannot find -lSRMapKit
/usr/bin/ld: cannot find -lSRObjects
/usr/bin/ld: cannot find -lSRQuery
/usr/bin/ld: cannot find -lgnustep-gui
/usr/bin/ld: cannot find -lgnustep-base
collect2: error: ld returned 1 exit status


Any idea?

Thanks,

 Andreas

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

Reply via email to