View Single Post
  #11 (permalink)  
Old 02-12-2010, 08:41 PM
happytoday
Guest
 
Posts: n/a
Default Re: compiling C program containing Xutil functions

On Feb 9, 5:28*pm, Fred <fred.l.kleinschm...@boeing.com> wrote:
> On Feb 8, 3:10*pm, happytoday <ehabaziz2...@gmail.com> wrote:
>
>
>
> > On Feb 9, 12:30*am, toucan <tou...@zoo.invalid> wrote:

>
> > > happytoday wrote:
> > > > I failed to compile that program as written below with those error
> > > > messages :
> > > > The conditions of compiling this program are not available any longer
> > > > in the net so please help me compiling this program .

>
> > > > Error messages :
> > > > ------------------------
> > > > root @ Homer /export/home/unix.d/programs.d/clang.d/GUI>cc plot_data.c
> > > > "plot_data.c", line 15: warning: implicit function declaration:
> > > > create_int_dialog_entry
> > > > "plot_data.c", line 16: warning: implicit function declaration:
> > > > create_float_dialog_entry
> > > > "plot_data.c", line 20: warning: implicit function declaration:
> > > > set_up_dialog
> > > > "plot_data.c", line 24: warning: implicit function declaration:
> > > > read_dialog_window
> > > > Undefined * * * * * * * * * * * first referenced
> > > > *symbol * * * * * * * * * * * * * * in file
> > > > create_int_dialog_entry * * * * * * plot_data.o
> > > > create_float_dialog_entry * * * * * plot_data.o
> > > > read_dialog_window * * * * * * * * *plot_data.o
> > > > set_up_dialog * * * * * * * * * * * plot_data..o
> > > > ld: fatal: Symbol referencing errors. No output written to a.out

>
> > > > Sources code :
> > > > ------------------------
> > > > #include </usr/openwin/share/include/X11/Xlib.h>
> > > > #include </usr/openwin/share/include/X11/Xutil.h>

>
> > > It would be better to write
> > > #include <X11/Xlib.h>
> > > #include <X11/Xutil.h>

>
> > > then, probably something like the following, assuming your
> > > lib files are in /usr/openwin/lib (e.g. libXlib.a if it's
> > > the correct name for your library)
> > > cc -I/usr/openwin/share/include -L/usr/openwin/lib -lXlib -lXutil

>
> > > > #include <stdio.h>
> > > > #include <math.h>

>
> > > > int main()
> > > > {
> > > > /* Define default values: */

>
> > > > int n = 0;
> > > > float x = 0.0;

>
> > > > /* Define contents of dialog window */

>
> > > > create_int_dialog_entry("n", &n);
> > > > create_float_dialog_entry("x", &x);

>
> > > > /* Create window with name "Setup" and top-left corner at (0,0) */

>
> > > > set_up_dialog("Setup", 0, 0);

>
> > > > /* Display the window and read the results */

>
> > > > read_dialog_window();

>
> > > > /* Print out the new values */

>
> > > > printf("n = %d, x = %f\n", n, x);
> > > > return 0;
> > > > }

>
> > The problem that I do not know what library files should be included
> > to resolve these functions
> > so I compiled with the below errors :

>
> > root @ Homer /clang>head plot_data.c
> > #include <X11/Xlib.h>
> > #include <X11/Xutil.h>
> > #include <stdio.h>
> > #include <math.h>

>
> > int main()
> > {
> > /* Define default values: */

>
> > int n = 0;
> > root @ Homer /clang>

>
> > root @ Homer /clang>cc -I/usr/openwin/share/include -L/usr/openwin/lib
> > -lXlib -lXutil plot_data.c

>
> Are you sure you want "-I/usr/openwin/share/include" instead of
> "-L/usr/openwin/share/include" ?
>
> Where are libX11.aand libXutil.a on your system?
>
> In my experience, Sun Unix platforms put them in "/usr/openwin",
> while most other -nix platforms put them (or at least links to them)
> in /usr/lib or /usr/X11R6.
>
> You need to find where thosw libraries are on your system, and
> set the "-L" options appropriately to point to them.
>
> > "plot_data.c", line 15: warning: implicit function declaration:
> > create_int_dialog_entry

>
> Line 15 of your source code apparently references a function
> named "create_int_directory_entry" without you having provided
> a prototype for that function.
>
> > "plot_data.c", line 16: warning: implicit function declaration:
> > create_float_dialog_entry
> > "plot_data.c", line 20: warning: implicit function declaration:
> > set_up_dialog
> > "plot_data.c", line 24: warning: implicit function declaration:
> > read_dialog_window

>
> Ditto for these warnings.
>
> > ld: fatal: library -lXlib: not found
> > ld: fatal: library -lXutil: not found

>
> libXlib.a and libXutil.a could not be found in the paths you provided.
>
> > ld: fatal: File processing errors. No output written to a.out- Hide quoted text -

>
> > - Show quoted text -

>
> --
> Fred K


Please visit this page and see what the examples written about
Graphical Interfaces: Dialog Boxes example :
http://docs.huihoo.com/gnu/c-basics/c_tutorial.html
Reply With Quote