Orange Forum • View topic - Some Notes on Building for Linux from Latest Stable (0.9.63)

Some Notes on Building for Linux from Latest Stable (0.9.63)

A place to ask questions about methods in Orange and how they are used and other general support.

Some Notes on Building for Linux from Latest Stable (0.9.63)

Postby Feanor76 » Mon Jun 05, 2006 17:33

Hi folks,

I'm sorry these notes aren't in better shape, but I'm really short on time these days. Regardless, to get from downloading the latest stable distribution (0.9.63) to a working build on Linux required a couple steps for me. Here are my crash course notes:


* still have to build
**** grab source from CVS: (not the orngExtn
**** from Alex's website which is older)

cvs login
cvs co orngCRS
cvs logout

cd to orngCRS/src

**** edit the Makefile ... depending on swig output: I used
**** clustind_wrap.c clustind_wrap.o

**** also, make sure python paths are correct

**** don't bother with ... just use the makefile
**** .... it will create "bin" in the orngCRS directory that
**** is the _orngCRS file we're after

**** This compiles _orngCRS
**** Copy _orngCRS to orange/

get the orange/ file (either from cvs install_scripts or a
recent daily snapshot)
**** grab install_scripts from CVS
cvs login
cvs co install_scripts
cvs logout
**** and fish out the toplevel file

get a few missing build files
from the daily snapshot
*** grab the cvs snapshot (of orange) either directly
*** from CVS or the dailysnapshot and copy over
*** orange/source/orangene
*** orange/source/orangeom
*** orange/source/pyxtract
*** to the version you want to build

**** dedos everything (i.e. make sure that all newlines
**** are unix friendly .... look for the dedos file for
**** hints on this)

**** add newlines to all the *.h *.c *.cpp etc files
**** this just prevents an annoying gcc warning (ugh)
for i in *.cpp; do echo -e "\n" >> $i; done

build with orange/source/Makefile to test things out

should have all the *.so files in orange/ at this point

(add a version name to orange/
build from orange/ with python and either
do the system install or to a custom directory (I did custom directory and then copied it to /usr/lib/python2.3/site-packages)

copy all these files to python2.x/site-packages/
tinker with orange.pth (maybe)

make /usr/lib/ a link or a copy of

in some of the orng* modules ... replace whrandom with random (orngCI, orngTest)

Postby Janez » Mon Jun 05, 2006 22:12

Thanks, Mark. You've left out two important things that would really interest me, though. Which gcc and which Python?

We're just fixing the problems with gcc 4.0. I fixed the sources, but wasn't able to compile due to some missing libraries, so I left it for Tomaz to finish the checking (he's our only Linux man, for now). But if you already successfully compiled the newest version from cvs with gcc 4, that's great.

Regarding Python version, you probably use 2.4, since you mention whrandom. I stilll use 2.3, but tried to link Orange against 2.4 and it worked fine, except for the whrandom warning. I already replaced it with random (on Friday, so your snapshot must be older than that :).

I added dedos and newlines to our to-do list.



Postby Feanor76 » Tue Jun 13, 2006 16:36


I used Python 2.4 (as you guessed). Unfortunately, I only used gcc 3.4.6 ... because of issues with gcc 4.1 (with orange and other projects - I'm waiting a bit until that gets sorted out).

As far as the gui stuff goes, I'm using:

sip 4.2.1
PyQwt 4.1
PyQt 3.14.1-r1
Qt 3.3.6-r1

which was good enough to build without complaints and I fired up OrangeCanvas briefly ... enough to see that it was usable ... but I didn't test it at all.


success with snaphot 06-27

Postby marko » Wed Jun 28, 2006 17:59

I have successfully installed orange (from snapshot 06-27) on Ubuntu dapper with help from tMark's instructions. I only needed to add "" to list of libraries in That was needed to get nomogram widget to work.

Why isn't orngCRS included in snapshots and why is it not included in source/ folder like everything else?

I used gcc 4.0.3. It worked flawlessly. I also didn't need to dedos anything (in contrast with 0.9.63).


Postby KiBi » Tue Feb 06, 2007 18:41


thanks for your notes. For what it's worth, I'm planning to make a Debian package, so it should be then easy to adapt it to Ubuntu. I'll get back to you in some time, currently I'm quite busy with exams and stuff like that. Don't hesitate to ping me if I don't show up soon. ;-)

Postby Janez » Thu Feb 08, 2007 9:25


I'd just want to tell you (in case you haven't noticed) that the C++ code now requires numpy instead of Numeric, and we are also doing the same with widgets. We plan to leave Numeric behind soon. (Numeric and numarray will be supported, but not used.)


problems with recent pyqwt

Postby derpapst » Mon Mar 05, 2007 16:38

I have
Qt 4.1.2
PyQwt-4.2.1 (.../site-packages/Qwt4)

When using visualization plugins I get:

Unhandled exception of type exceptions.ImportError occured at 16:35:24:
File: in line 251
Function name: addWidget
Code: newwidget = orngCanvasItems.CanvasWidget(self.signalManager, self.canvas, self.canvasView, widget, self.canvasDlg.defaultPic, self.canvasDlg)
File: in line 357
Function name: __init__
Code: exec(code)
File: in line 16
Function name: ?
Code: from OWDlgs import OWChooseImageSizeDlg
File: in line 3
Function name: ?
Code: import OWGUI, OWGraphTools, OWTools
File: in line 2
Function name: ?
Code: from qwt import *
Exception type: exceptions.ImportError
Exception value: No module named qwt

Return to Questions & Support