Recently, a lot of messages have popped about NAnt and pkg-config
failing with the latest release of Mono. As NAnt is the basis for
building Monobjc, I have gathered some information about the various
problems. Use this cheat sheet to solve your issues.

Issue #1: pkg-config is not found

The "pkg-config" binary shipped with Mono is no longer linked to
/usr/bin/pkg-config since Mono 2.4. I found an explanation here
https://bugzilla.novell.com/show_bug.cgi?id=513662 .

- "pkg-config" command returns "-bash: /usr/bin/pkg-config: No such
file or directory"
- "which pkg-config" command returns nothing

Solution (a):
- Prepend the "/Library/Frameworks/Mono.framework/Commands" folder to
your PATH variable. You can use the "export
PATH=/Library/Frameworks/Mono.framework/Commands:$PATH" command.
Solution (b):
- Create the soft-link from
"/Library/Frameworks/Mono.framework/Commands/pkg-config" to
"/usr/bin/pkg-config". You can use the "cd /usr/bin; sudo ln -s
/Library/Frameworks/Mono.framework/Commands/pkg-config ." commands.

Issue #2: pkg-config cannot find some .pc files

- "pkg-config --modversion mono" fails with missing .pc files

- Since Mono 2.4, some development files are shipped along the Mono
CSDK package. Be sure to install BOTH the Mono Runtime and the Mono
CSDK to have all the needed files.

Issue #3: NAnt does not work

- NAnt fails with "pkg-config" command missing
- NAnt fails with "pkg-config" complaining that Mono profile is missing

- Fix issue #1 and issue #2. These are the main reasons why NAnt is failing.

Comments and feedbacks are appreciated.

Regards, Laurent Etiemble.

Reply via email to