标签: gnustep

NSLog错误:找不到'NXConstantString'?

我终于让GNUstep工作(在Windows上),它编译并运行良好.但是,每当我尝试使用NSLog时,都会收到以下错误:

$ gcc -o hello hello.m -I /GNUstep/System/Library/Headers \
> -L /GNUstep/System/Library/Libraries -lobjc -lgnustep-base
hello.m: In function 'main':
hello.m:4:5: error: cannot find interface declaration for 'NXConstantString'
Run Code Online (Sandbox Code Playgroud)

我的源代码:

#import <Foundation/Foundation.h>

int main(void) {
    NSLog(@"hello world");
}
Run Code Online (Sandbox Code Playgroud)

cocoa gcc objective-c nslog gnustep

4
推荐指数
1
解决办法
4159
查看次数

无法在动态链接库libintl-8.dll中找到过程入口点__printf__

使用GNUstep/MinGW编译Objective-C时出现以下错误:

The procedure entry point __printf__ could not be located in the dynamic link library libintl-8.dll.
Run Code Online (Sandbox Code Playgroud)

Windows 7/64位.libintl-8.dll上的文件版本是0.18.1.

编译器是否使用了正确的文件?

编辑:这是c:\ MinGW\bin\libintl-8.dll文件的Exports表

[Ordinal/Name Pointer] Table
        [   0] __printf__
        [   1] _get_output_format
        [   2] _nl_expand_alias
        [   3] _nl_explode_name
        [   4] _nl_find_domain
        [   5] _nl_find_msg
        [   6] _nl_language_preferences_default
        [   7] _nl_load_domain
         ...   ...
Run Code Online (Sandbox Code Playgroud)

mingw objective-c gnustep

4
推荐指数
2
解决办法
5693
查看次数

链接目标c ++

我试图弄清楚为什么当我将我的main.m文件转换为main.mm文件时,它不再正确链接.

我已将问题减少到以下示例代码:

#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>
int main( int argc, const char ** argv ) {
return NSApplicationMain( argc, argv);
}
Run Code Online (Sandbox Code Playgroud)

我正在使用gnustep和linux.我输入以下命令,一切都按预期工作:

g ++ -g -c main.m -I/usr/GNUstep/Local/Library/Headers -I/usr/GNUstep/System/Library/Headers

g ++ -g -o test main.o -L/usr/GNUstep/Local/Library/Libraries -L/usr/GNUstep/System/Library/Libraries -lgnustep-base -lgnustep-gui

现在如果我将main.m重命名为main.mm并使用这两个命令(同样exept main.m now main.mm):

g ++ -g -c main.mm -I/usr/GNUstep/Local/Library/Headers -I/usr/GNUstep/System/Library/Headers

g ++ -g -o test main.o -L/usr/GNUstep/Local/Library/Libraries -L/usr/GNUstep/System/Library/Libraries -lgnustep-base -lgnustep-gui

我收到以下错误:main.mm:7:未定义引用`NSApplicationMain(int,char const**)'

有人可以找到我做错了吗?我不明白为什么它现在无法链接.

我试图在目标c程序中添加一些C++类,这阻止了我继续.

感谢您提供任何帮助.

c++ linker objective-c gnustep

3
推荐指数
1
解决办法
2556
查看次数

键值编码和多对多关系

我对键值编码和多对多关系有点困惑.我已经读过,当我有这样的关系时,我应该使用[object mutableArrayValueForKey:@"key"]; 检索保存有序关系中的对象的可变数组.

我不明白的是mutableArrayValueForKey或valueForKey之间的区别是什么.

让我举个例子来说明(数组是自我设置的NSMutableArray作为属性):

id array1= [self valueForKey:@"array"];

NSLog(@"first element %@",[array1 objectAtIndex:1]);

id array2 = [self mutableArrayValueForKey:@"array"];

NSLog(@"first element %@",[array2 objectAtIndex:1]);
Run Code Online (Sandbox Code Playgroud)

两个调用返回完全相同.在这种情况下,第二个的好处或不同之处是什么?

干杯!

macos cocoa objective-c gnustep

3
推荐指数
1
解决办法
944
查看次数

使用GCC在Ubuntu上编译Objective-C

好的,我有这个程序在这里:

int main(int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    NSLog (@"Hello world!");
    [pool drain];
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

问题是当我使用命令"gcc -framework Foundation prog1.m -o prog1"编译它时

我得到这个:"gcc:错误试图执行'cclobj':execvp:没有这样的文件或目录"

我需要安装任何包吗?"

ubuntu gcc objective-c gnustep

3
推荐指数
1
解决办法
5202
查看次数

如何使GNUstep libobjc2工作?

我下载并构建了GNUstep libobjc2 1.6.1,

svn co http://svn.gna.org/svn/gnustep/libs/libobjc2/1.6.1/ rep
cd rep
make
Run Code Online (Sandbox Code Playgroud)

当我尝试编译Objective-C代码时出现此错误.

hoon@ubuntu:~/work/objc2$ clang -fobjc-nonfragile-abi -fobjc-arc -fblocks *.m *.a -l pthread; ./a.out
Objective-C ABI Error: Loading modules from incompatible ABIs while loading 
a.out: loader.c:38: __objc_exec_class: Assertion `objc_check_abi_version(module)' failed.
Aborted (core dumped)
Run Code Online (Sandbox Code Playgroud)

我似乎需要构建libobjc.a一些不同的配置.有什么问题,我该怎么做才能解决这个错误?

环境:Ubuntu 12.04 LTS

ubuntu runtime objective-c gnustep libobjc2

3
推荐指数
1
解决办法
3609
查看次数

无法在Windows上使用Gnustep编译Objective C.

嗨,我是一个初学者学习目标c.我发现错误"hello.m:1:34:Foundation/Foundation.h:没有这样的文件或目录"我知道我需要制作一个make文件我可能知道如何制作make文件

compilation objective-c gnustep

2
推荐指数
1
解决办法
6913
查看次数

核心数据:访问关系时,NSSet上的count方法失败

我正在尝试以编程方式访问一对一(一对多).My Data模型包含一个名为language(带有两个字符串属性)的NSManagedEntity,它与一个名为WordCategory的实体(一对多)有关系.我使用NSFetchRequest获取所有语言实体.工作正常.我得到了关系的valueForKey,并且工作正常.我可以使用它的对象.但是,当我尝试将消息计数发送到存储WordCategory对象的NSSet时,我得到了一个

换句话说,这条线有效:

       NSLog(@"word category count %@",[[wordCategory anyObject] valueForKey:@"name"]);
Run Code Online (Sandbox Code Playgroud)

这个没有:

NSLog(@"word category count %@",[wordCategory count]
Run Code Online (Sandbox Code Playgroud)

我收到一条消息:调试器中的EXC_BAD_ACCESS.

这是代码的其余部分:

NSManagedObjectContext *moc = [myAppDelegate managedObjectContext];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"Language" inManagedObjectContext:moc]];

NSError *error = nil;
NSArray *results = [moc executeFetchRequest:request error: &error];
if (error) {
    [NSApp presentError:error];
    return;
}

NSManagedObject *obj = [results objectAtIndex:0];
NSSet *wordCategory = [obj valueForKey:@"category"];
NSLog(@"word category count %@",[wordCategory count]);
Run Code Online (Sandbox Code Playgroud)

我会感激任何人都可以在这个谜团中流下的光.谢谢你的帮助!

macos cocoa objective-c gnustep

2
推荐指数
1
解决办法
1432
查看次数

Makefile问题.[Ubunt,GNUstep,ObjC,]

我刚刚制作了一个makefile跟随在线教程. http://www.gnustep.org/resources/documentation/Developer/Base/ProgrammingManual/manual_1.html

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME = LogTest
LogTest_OBJC_FILES = source.m

include $(GNUSTEP_MAKEFILES)/tool.make
Run Code Online (Sandbox Code Playgroud)

一旦我运行了makefile,它就会显示出来

This is gnustep-make 2.4.0. Type 'make print-gnustep-make-help' for help.
make[1]: GNUmakefile: No such file or directory
make[1]: *** No rule to make target `GNUmakefile'.  Stop.
make: *** [internal-all] Error 2
Run Code Online (Sandbox Code Playgroud)

我检查了我的GNUSTEP_MAKEFILES设置.我不知道发生了什么.任何的想法?谢谢

ubuntu makefile objective-c gnustep

2
推荐指数
1
解决办法
803
查看次数

Linux Clang和Objective-C基础库

我一直在Ubuntu系统上使用GCC + GNUstep试验Objective-C.

现在关于LLVM Clang编译器,它提供了哪种*步骤库?它是否使用Apple Cocoa上的GNUstep?我最感兴趣的是基础库 - 集合,流等.该网站没有提供太多信息.

objective-c clang gnustep

2
推荐指数
2
解决办法
3830
查看次数

标签 统计

gnustep ×10

objective-c ×10

cocoa ×3

ubuntu ×3

gcc ×2

macos ×2

c++ ×1

clang ×1

compilation ×1

libobjc2 ×1

linker ×1

makefile ×1

mingw ×1

nslog ×1

runtime ×1