网络上关于FreeBSD下用GNUstep编写Objective-C程序文章很少,可能是用FreeBSD系统的人不多吧。我要写一些这方面的文章,记录一下,方便大家

系统环境:VirtualBox下的FreeBSD 13.1-RELEASE,64位,EFI启动+GPT分区表,shellsh

1. 安装GNUstep

命令行输入pkg install gnustep建议使用ustc源,比较快),会显示出一些依赖包,输入Y确定安装即可

2. 配置环境

在FreeBSD下,GNUstep安装目录为/usr/local/GNUstep配置比较简单。Shell脚本/usr/local/GNUstep/System/Library/Makefiles/GNUstep.sh设置了GNUstep环境变量(对于csh可能是GNUstep.csh,但本文讲解csh环境下的配置,以下内容针对sh shell环境),因此我们需要每次登录时都执行一下GNUstep.sh可以了。如果我们想让当前用户使用GNUstep,就要在当前用户家目录下的.profile文件添加

. /usr/local/GNUstep/System/Library/Makefiles/GNUstep.sh

如果我们想让所有用户使用GNUstep,就在/etc/profile添加上述语句

无论在哪里添加,都不要漏了最前面的点。

重启系统后,配置生效

3. 编写Hello world程序

在当前用户家目录创建objc/helloworld目录,在helloworld目录下创建文件helloworld.m写入

#import <Foundation/Foundation.h>
int main(int argc, char* argv[]){
    NSLog(@"Hello world!n");
    return 0;
}

4. 编写Makefile

helloworld目录下创建文件GNUmakefile写入

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME = Helloworld
Helloworld_OBJC_FILES = helloworld.m

include $(GNUSTEP_MAKEFILES)/tool.make

此处TOOL_NAME是要生成程序名称

5. 编译

helloworld目录下输入gmake即可。如果没有安装gmake,可用pkg install gmake安装

6. 运行

编译完成后,helloworld目录下会生成obj目录。进入obj目录,输入./Helloworld即可运行运行结果如下:

 

原文地址:https://blog.csdn.net/2301_76160635/article/details/128799447

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_13679.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注