On Wednesday 18 August 2004 16:32, Colin Carter wrote:
Hi Gurus, Sorry to sound ignorant, but after 38 years of coding, little problems still bug me, as I am a beginner with Linux. I am running SuSE 9.1 Q1 When I try to compile and link a program the system says that the XWindow functions are not defined. That is, not found in the libraries. But I cannot find any documentation (in the masses of it) which tell me how to link. (I can manage the MS Windows API, but not the Linux.)
It depends on what toolkit you are using (see below) or, if you want to do very low-level X programming, what exactly you want to do. Of course, you need to have the respective development packages installed.
Q2 I am running 64 bit Linux, but there appears to be no documentation about the arguments expected by SuSE XWindow. That is: are the normal 32 bit integers still 32 bit or change to 64 bit for function calls? More importantly, where is the documentation?
An integer is an integer is an integer, and it's up to the library makers to take care how many bits they have. If a function prototype specifies "int", pass an int and be happy. If it specifies "UINT32", pass a UINT32.
Any help would be appreciated, especially a pointers into the documentation. I have a stack of books on Linux, and there is a million lines of information with which I am familiar with after 38 years of coding, but I cannot find the 'new' stuff required to transfer standard 32 bit Linux to 64 bit Linux, and I cannot find stuff which explains libraries.
I highly recommend reading this one to get a first understanding of the X
Window system - even if you don't intend to program low-level with XLib:
http://www.amazon.com/exec/obidos/tg/detail/-/1565920023/
It seems to be really cheap in the UK:
http://www.amazon.co.uk/exec/obidos/ASIN/0937175110/
As for anything else (including linker parameters), it depends on what toolkit
you intend to use. There are several to choose from.
My personal favourite is Qt:
http://doc.trolltech.com/3.3/index.html
This is the base for KDE.
But there is also Gtk, the base for GNOME, and there are several others - some
somewhat dated (like Motif), some multi-platform (like WxWindows) that run on
top of any of the others and on MS MFC.
CU
--
Stefan Hundhammer