Thanks David.
after including the other libraries (cdf, netcdf ...) in my link line I
only get
two undefined references. Here is the make output:
>make Simple
gcc Simple.o -L/usr/local/dx/lib_linux -L/usr/lib -L/usr/X11R6/lib
-L/usr/X11R6/lib/modules/extensions -L/usr/X11/lib
-L/usr/X11R6/LessTif/Motif1.2/lib -lm -lMagick -ltiff -lGL -lglx
-lX11 -lXm -lXt -lXp -lDX -ldf -lcdf -lnetcdf -o Simple
Simple.o: In function `main':
Simple.o(.text+0x32): undefined reference to `DXInitModules'
Simple.o(.text+0x1ae): undefined reference to `DXCheckRIH'
collect2: ld returned 1 exit status
make: *** [Simple] Error 1
Do I need to include another library or should I do something else?
Thanks again for your help.
Mahmud
David Thompson wrote:
You will need to include those other libraries in your link line. I
notice you also need -lXp there as well. You can see which libraries
were linked with DX by looking for your arch.mak file in your install
directory. The DXEXECLINKLIBS environment variable contains the proper
link libraries.
David
Hi,
I'm tyring to compile some of the sample programs of DX which let a user
to include DX graphics functions in a C program. In particular the
provided
Simple.c program but I get a lot of undefined reference to some
functions.
Most of them seems to be related to hdf, cdf and netcdf. Please check
the attached
file for details.
I'm using opendx-4.1.3-3 on Linux (I've tried both Redhat 7.2 and
Mandrake 8.1).
Even after installing hdf, cdf and netcdf I get the same error message.
I have also tried to recomiple DX on Linux without the options of
hdf, cdf etc...
But I get the same error message.
Does anybody know what I'm missing?
Any help is highly appreciated.
Thanks.
Dr. M. Ashrafizadeh
IUT Linux Lab., IUT
gcc Simple.o -L/usr/local/dx/lib_linux -L/usr/lib
-L/usr/local/dx/lib_linux -L/usr/X11R6/lib
-L/usr/X11R6/lib/modules/extensions -L/usr/X11/lib
-L/usr/X11R6/LessTif/Motif1.2/lib -lGL -lglx -lDX -lm -lX11 -lXm
-lXt -o Simple
Simple.o: In function `main':
Simple.o(.text+0x32): undefined reference to `DXInitModules'
Simple.o(.text+0x1ae): undefined reference to `DXCheckRIH'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`open_netcdf_file':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:349: undefined
reference to `ncopts'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:362: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:363: undefined
reference to `ncerr'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:374: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:378: undefined
reference to `ncerr'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:396: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:400: undefined
reference to `ncerr'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:409: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:413: undefined
reference to `ncerr'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`_dxfstat_netcdf_file':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:467: undefined
reference to `ncopts'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:470: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:488: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:501: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:505: undefined
reference to `ncopen'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:519: undefined
reference to `ncclose'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`query_var':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:546: undefined
reference to `ncinquire'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:730: undefined
reference to `ncvarid'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function `getattr':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1406:
undefined reference to `ncattinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1412:
undefined reference to `ncattget'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`getNattr':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1430:
undefined reference to `ncattname'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1441:
undefined reference to `ncattinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1450:
undefined reference to `ncattget'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function `isattr':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1465:
undefined reference to `ncattinq'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`setuserattr':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1556:
undefined reference to `ncattinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1572:
undefined reference to `ncattget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1582:
undefined reference to `ncattget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1586:
undefined reference to `ncattname'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`getglobalattr':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1611:
undefined reference to `ncattinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1627:
undefined reference to `ncattget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1637:
undefined reference to `ncattget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1641:
undefined reference to `ncattname'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`build_series':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1808:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1834:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:1997:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2018:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2167:
undefined reference to `ncvarid'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`check_serieslength':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2226:
undefined reference to `ncdiminq'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`get_serieslength':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2254:
undefined reference to `ncdiminq'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`is_seriesvariable':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2284:
undefined reference to `ncvarinq'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`get_seriesvalue':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2335:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2343:
undefined reference to `ncvarinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2371:
undefined reference to `ncvarget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2379:
undefined reference to `ncvarget1'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`build_field':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2512:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2536:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2636:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2655:
undefined reference to `ncvarid'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2735:
undefined reference to `ncvarid'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`build_data':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2848:
undefined reference to `ncvarinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2870:
undefined reference to `ncdiminq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2940:
undefined reference to `ncvarget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:2959:
undefined reference to `ncvarget'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`build_array':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3022:
undefined reference to `ncvarinq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3041:
undefined reference to `ncdiminq'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3113:
undefined reference to `ncvarget'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3130:
undefined reference to `ncvarget'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`build_regpos':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3204:
undefined reference to `ncvarget1'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3211:
undefined reference to `ncvarget1'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3239:
undefined reference to `ncvarget1'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3246:
undefined reference to `ncvarget1'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`build_regpos1D':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3307:
undefined reference to `ncvarget1'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o):/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3316:
more undefined references to `ncvarget1' follow
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`variablename':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:3401:
undefined reference to `ncvarinq'
/usr/local/dx/lib_linux/libDX.a(mdimport_ncdf.o): In function
`close_netcdf_file':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_ncdf.c:452: undefined
reference to `ncclose'
/usr/local/dx/lib_linux/libDX.a(md_im_image.o): In function `write_im':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/_im_image.c:224: undefined
reference to `GetExceptionInfo'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/_im_image.c:225: undefined
reference to `CloneImageInfo'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/_im_image.c:244: undefined
reference to `ReadImage'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/_im_image.c:266: undefined
reference to `WriteImage'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/_im_image.c:271: undefined
reference to `DestroyImage'
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o): In function
`loadSerPos':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:390: undefined
reference to `CDFlib'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:395: undefined
reference to `CDFlib'
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o): In function
`impcdf0dim':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:581: undefined
reference to `CDFlib'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:586: undefined
reference to `CDFlib'
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o): In function
`cdfGetData':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:813: undefined
reference to `CDFlib'
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o):/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:817:
more undefined references to `CDFlib' follow
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o): In function
`GetAttribute':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1193: undefined
reference to `CDFvarNum'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1208: undefined
reference to `CDFattrEntryInquire'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1213: undefined
reference to `CDFattrGet'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1240: undefined
reference to `CDFattrGet'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1259: undefined
reference to `CDFattrInquire'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1215: undefined
reference to `CDFlib'
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o): In function
`buildAxis2':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1662: undefined
reference to `CDFlib'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1668: undefined
reference to `CDFlib'
/usr/local/dx/lib_linux/libDX.a(mdimport_cdf.o): In function
`queryCDFvars':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1811: undefined
reference to `CDFvarNum'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1851: undefined
reference to `CDFlib'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1858: undefined
reference to `CDFlib'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_cdf.c:1813: undefined
reference to `CDFlib'
/usr/local/dx/lib_linux/libDX.a(mdimport_hdf.o): In function
`DXImportHDF':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:128: undefined
reference to `DFSDrestart'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:142: undefined
reference to `DFSDgetNT'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:162: undefined
reference to `DFSDgetdata'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:223: undefined
reference to `DFSDgetdatastrs'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:229: undefined
reference to `DFSDrestart'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:245: undefined
reference to `DFSDgetdims'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:256: undefined
reference to `DFSDrestart'
/usr/local/dx/lib_linux/libDX.a(mdimport_hdf.o): In function `findfile':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:297: undefined
reference to `Hishdf'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:348: undefined
reference to `Hishdf'
/usr/local/dx/lib_linux/libDX.a(mdimport_hdf.o): In function
`_dxfget_hdfcount':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:415: undefined
reference to `DFSDrestart'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:418: undefined
reference to `DFSDgetdims'
/usr/local/dx/lib_linux/libDX.a(mdimport_hdf.o): In function
`_dxfwhich_hdf':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:432: undefined
reference to `DFSDrestart'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:436: undefined
reference to `DFSDgetdatastrs'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:435: undefined
reference to `DFSDgetdims'
/usr/local/dx/lib_linux/libDX.a(mdimport_hdf.o): In function
`read_scale':
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:572: undefined
reference to `DFSDgetdimscale'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:586: undefined
reference to `DFSDgetdimscale'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:600: undefined
reference to `DFSDgetdimscale'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:614: undefined
reference to `DFSDgetdimscale'
/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:628: undefined
reference to `DFSDgetdimscale'
/usr/local/dx/lib_linux/libDX.a(mdimport_hdf.o):/usr/local/src/dx-cvs/dx/src/exec/dxmods/import_hdf.c:642:
more undefined references to `DFSDgetdimscale' follow
/usr/X11R6/lib/libXm.so: undefined reference to `XpGetDocumentData'
/usr/X11R6/lib/libXm.so: undefined reference to `XpStartPage'
/usr/X11R6/lib/libXm.so: undefined reference to `XpQueryExtension'
/usr/X11R6/lib/libXm.so: undefined reference to `XpEndPage'
/usr/X11R6/lib/libXm.so: undefined reference to `XpEndJob'
/usr/X11R6/lib/libXm.so: undefined reference to `XpSelectInput'
/usr/X11R6/lib/libXm.so: undefined reference to `XpGetContext'
collect2: ld returned 1 exit status
make: *** [Simple] Error 1