我正在尝试使用mono的mkbundle创建一个独立的C#应用程序,我安装了Xcode和Mono Developer Kit(我确定它是MDK而不是运行时)。然而我使用mkbundle mkbundle test.exe
我收到这些错误
Compiling:
as -o temp.o temp.s
cc -g -o a.out -Wall temp.c `pkg-config --cflags --libs mono-2` temp.o
sh: pkg-config: command not found
temp.c:1:10: fatal error: 'mono/metadata/mono-config.h' file not found
1 error generated.
[Fail]
发生了什么事?
答案 0 :(得分:3)
pkg-config存储在' /Library/Frameworks/Mono.framework/Commands'。
预先添加" /Library/Frameworks/Mono.framework/Commands"文件夹到 你的PATH变量:
export PATH=/Library/Frameworks/Mono.framework/Commands:$PATH
除了architecture solution proposed by aiapatag和objective-c runtime and CoreFoundation framework solution:
之外,还需要这样做export AS="as -arch i386"
export CC="cc -arch i386 -framework CoreFoundation -lobjc -liconv"
答案 1 :(得分:1)
看起来找不到pkg-config工具。也许它不在默认路径中。
你在某个地方有'pkgconfig'目录吗?它应该是Mono安装的子目录。 试着看看你的路径是否像/Library/Frameworks/Mono.framework/Versions/XXXX/lib/pkgconfig
如果是,请将PKG_CONFIG_PATH环境变量指向此路径,您可以在运行mkbundle命令时直接指定它(这只是一个示例):
$ PKG_CONFIG_PATH=/Library/Frameworks/Mono.framework/Versions/XXXX/lib/pkgconfig mkbundle ....