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
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep