window下的Objective-c配置
安装软件
- MinGW
注意勾选objective-c选项; - GNUStep
注意安装先后顺序,先安装msys,后安装Core; - 添加windows环境变量到path
如添加 F:\MinGW\bin到环境变量,添加后重新打开GNUStep的Shell
编译配置
gcc -o [name of the program] [filename.m]
-I /GNUstep/System/Libraries/Headers
-L /GNUstep/System/Libraries/Libraries
-lobjc -lgnustep-base -fconstant-string-class=NSConstantString
如: gcc -o helloworld helloworld.m -I /GNUstep/System/Library/Headers -L /GNUstep/System/Library/Libraries -lobjc -lgnustep-base -fconstant-string-class=NSConstantString
如果输出无报错则说明配置成功了;
说明:第二步中的一些参数明说,如果熟悉Linux/Unix下C/C++编译的话,上述参数应该很熟悉,-I表示头文件查找的路径,-L表示库文件查找路径,-l表示需要链接的库文件。但是,-fconstant-string-class=NSConstantString 对于这个参数可能比较陌生,这个参数主要是指定常量字符串所使用的class。
创建gcc.sh文件(可选)
在D:\GNUstep\bin目录下新建一个文件gcc.sh(一般情况下默认是没有该文件的,需要我们自己创建),具体内容如下,写好后保存即可。
#!/bin/sh
if [ $# -ne 1 ]; then
echo "Usage: $0 name"
exit 1
fi
gcc -g -o $1 $1.m \
-fconstant-string- class =NSConstantString \
-I /GNUstep/System/Library/Headers/ \
-L /GNUstep/System/Library/Libraries/ \
-lobjc \
-fobjc-exceptions \
-lgnustep-base \
-fconstant-string- class =NSConstantString \
-enable-auto-import
exit 0