Hey all,
I just updated my ubuntu box to allow me to use libdispatch, unfortunately, that killed my GNUstep install in the process, so I'm in the process of rebuilding.
I have a new clang from svn, built and tested to be working on C files.
I have built gnustep-make successfully with CC=gcc set.
I have built gnustep-base successfully with CC=gcc set.
I have built libobjc2 successfully with CC=clang set.
I have reconfigured and built gnustep-make successfully with CC=clang set.
gnustep-base will not reconfigure though, complaining that clang will not produce working binaries from objc files, some experimentation says it clearly will:
./configure --enable-libffi --with-library-flags="-L/usr/GNUstep/Local/Library/Libraries -ldispatch -lobjc" --with-default-config=/usr/GNUstep/Local/Configuration/GNUstep.conf
.....
checking whether objc really works... no
I don't seem to be able to use your Objective-C compiler to produce
working binaries! Please check your Objective-C compiler installation.
If you are using gcc-3.x make sure that your compiler's libgcc_s and libobjc
can be found by the dynamic linker - usually that requires you to play
with LD_LIBRARY_PATH or /etc/ld.so.conf.
Please refer to your compiler installation instructions for more help.
configure: error: The Objective-C compiler does not work or is not installed properly.
tatd2@GLaDOS:~/gnustep-base$ cd ..
tatd2@GLaDOS:~$ clang -L/usr/GNUstep/Local/Library/Libraries -lobjc -ldispatch test.m
tatd2@GLaDOS:~$ ./a.out
Hello World
tatd2@GLaDOS:~$ cat test.m
#include <stdlib.h>
#include <stdio.h>
@interface A
+ (void)a;
@end
@implementation A
+ (void)a
{
printf("Hello World\n");
}
@end
int main (int argc, char **argv)
{
[A a];
}
Is there anything I can do to debug why this check seems to be failing?
if (*ra4 != 0xffc78948) { return false; }