Since you don't have a short deadline, the best thing to do is learn Objective-C and Cocoa, and build the program with Xcode. This is not a quick or trivial undertaking, but it will probably give the best results. It's certainly
capable of giving the best results, but a lot depends on how well you use it.
See the Guides at the top of the
Mac Programming Forum.
Or start at
Apple's Developer Home Page with a free registration to get started.
There are any number of "expedient" approaches, with varying degrees of difficulty and varying possibilities for interaction. Most of them involve learning a scripting language of some kind. Briefly:
- an Automator workflow with interactive dialogs.
- an Automator application with drag-and-drop for input.
- bash script with 'osascript' for presenting dialogs.
- AppleScript with 'do shell script' for running command-line cmds.
- Python (several versions possible, including the builtin one)
- some other scripting language
I use "expedient" in quotes because it might take more time overall to learn one of those, figure out it won't work well enough, and then end up using Xcode and Cocoa anyway. None of the scripting languages is trivial to learn.
The Automator workflow or application may severely limit the possibilities for selecting the input and output files.
Everything has tradeoffs: capabilities, complexity, time, etc.
You could use Automator.app (in your /Applications folder) to make a Workflow. Drag actions from Library > Files & Folders into a sequence. For example, start with an "Ask for Finder Items" action, check the "Allow Multiple Selection checkbox, and use it to select your two input files.
Then add an action from Library > Utilities > Run Shell Script, that receives the chosen files and passes them to your command-line tool (the program you have now).
Finally, figure out how to specify the output file.
There's plenty of online references and tutorials for Automator.app. Google them.
You could write a bash script to runs the 'osascript' command to present dialogs that choose the input files. Then you run the command-line tool you have now. The osascript command is a shell-script way to run AppleScript.
You then wrap the bash script using
Platypus, and boom it's double-clickable or even accepts drag-n-drops.
You could flip that around, and write an AppleScript using AppleScript Editor (in your /Applications/Utilities folder), that runs commands like 'choose file' to select the input files, then runs the 'do shell script' command to run your command-line tool.
The Python language has extensions that allow simple presentation of dialogs, file-choosers, etc. You can learn Python and use it for the file-picking interaction, and use it to run the command-line tool you have now.
There are plenty of Python tutorials on the web. Google for them, and be sure to include the keywords
mac os x, otherwise you might not learn about the dialog extensions.
All the above options, and many others I didn't list, will take an investment of time and effort that has nothing at all to do with compiling C or even using the program you have now. You should think of that program as a naked core of functionality that needs to be clothed in an interactive suit of usability. You need to learn how to design and make that suit, and then you can figure out where to put the naked core.