Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'm looking around for a way to program some gui apps in ubuntu 12.04.

I ran across the quickly tutorial and the tool looks fantastic.

It looks like the primary language you develop with is python, which is fine with me.

But I know that I will need to link in C (or other compiled) code for intensive number crunching and to take advantage of the huge number of binary libraries out there.

I understand that python is designed so that you can link c code into it (although I don't know anything about the details, such as whether it can be done dynamically, or whether you have to build a new python interpreter executable, etc).

So my question is whether it is possible to fit in linked C (or other compiled) code into the quickly workflow, and if you do, can you still build deb packages to distribute your code. (I wouldn't mind writing a few makefiles or scripts or whatever to do this.)

And are there any examples out there that I could take a look at?

share|improve this question
add comment

1 Answer

up vote 1 down vote accepted

I think the short answer is no, Quickly was not designed to mix and match Python and C code.

If you are interested in this topic, I'd suggest reading the Python documentation on how to extend the language with C.

My suggestions would be though, to either:

  • Write the application in Python, and benchmark the performance of your number-crunching routines. This will give you some data to decide whether Python is fast enough for your purposes, or
  • Write the application solely in C

If you want to link existing C libraries into Python code, you might also want to have a look at ctypes. Here's a quick example for Linux libs.

share|improve this answer
    
Thanks David. That does answer my question. (My interest in Quickly was for easy gui creation, and attachment to c libraries which already exist. So before figuring out how much trouble it is to go through the extension process --- and thanks for the link, btw --- i need to know how much extra effort it is to patch back into the product Quickly is building. But you have answered that for me, so thanks again.) –  dan Aug 1 '12 at 3:35
    
In that case, you might be interested in reading wiki.python.org/moin/IntegratingPythonWithOtherLanguages - perhaps ctypes is what you want? –  David Planella Aug 1 '12 at 9:21
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.