Re: Struggling with DISLIN + GFortran under Raspbian

John,

Try adding:

-pthread

to both Fortran and Linker in the Compiler flags.  That should alleviate all the pthread-related errors.

Jeff Armstrong
Approximatrix, LLC

27 (edited by JohnWasilewski 2016-06-27 21:09:16)

Re: Struggling with DISLIN + GFortran under Raspbian

After adding -pthread to both:

===========================================
Generating Makefile... Okay
===========================================
Compiling ../Exa_f90/exa_f90.f90
Generating egSF
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqglpol':
qqw_unx.c:(.text+0x100c): undefined reference to `glRasterPos2i'
qqw_unx.c:(.text+0x1030): undefined reference to `glDrawPixels'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwmask':
qqw_unx.c:(.text+0x33cc): undefined reference to `XVisualIDFromVisual'
qqw_unx.c:(.text+0x33e4): undefined reference to `XGetVisualInfo'
qqw_unx.c:(.text+0x3404): undefined reference to `XFree'
qqw_unx.c:(.text+0x3428): undefined reference to `XFree'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqamix':
qqw_unx.c:(.text+0x35a8): undefined reference to `glReadPixels'
qqw_unx.c:(.text+0x36a0): undefined reference to `glRasterPos2i'
qqw_unx.c:(.text+0x36c8): undefined reference to `glDrawPixels'
qqw_unx.c:(.text+0x3914): undefined reference to `XGetImage'
qqw_unx.c:(.text+0x3ac8): undefined reference to `XPutImage'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwevnt':
qqw_unx.c:(.text+0x3b60): undefined reference to `XPending'
qqw_unx.c:(.text+0x3b7c): undefined reference to `XNextEvent'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqdelwgt':
qqw_unx.c:(.text+0x3be8): undefined reference to `XFreePixmap'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwdraw':
qqw_unx.c:(.text+0x3dc0): undefined reference to `XFillRectangle'
qqw_unx.c:(.text+0x3f4c): undefined reference to `XDrawPoint'
qqw_unx.c:(.text+0x3f70): undefined reference to `XDrawLines'
qqw_unx.c:(.text+0x3f98): undefined reference to `XFillArc'
qqw_unx.c:(.text+0x3fd0): undefined reference to `XDrawLine'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwpolyl':
qqw_unx.c:(.text+0x4104): undefined reference to `glBegin'
qqw_unx.c:(.text+0x4128): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x4140): undefined reference to `glEnd'
qqw_unx.c:(.text+0x415c): undefined reference to `XDrawLines'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqexpose.isra.5':
qqw_unx.c:(.text+0x4238): undefined reference to `glDrawBuffer'
qqw_unx.c:(.text+0x4244): undefined reference to `glRasterPos2i'
qqw_unx.c:(.text+0x4260): undefined reference to `glCopyPixels'
qqw_unx.c:(.text+0x4268): undefined reference to `glDrawBuffer'
qqw_unx.c:(.text+0x426c): undefined reference to `glFlush'
qqw_unx.c:(.text+0x4314): undefined reference to `XCopyArea'
qqw_unx.c:(.text+0x4320): undefined reference to `XSync'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwpolyg':
qqw_unx.c:(.text+0x43e8): undefined reference to `glBegin'
qqw_unx.c:(.text+0x440c): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x4424): undefined reference to `glEnd'
qqw_unx.c:(.text+0x4444): undefined reference to `XFillPolygon'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwhid':
qqw_unx.c:(.text+0x44c4): undefined reference to `XUnmapWindow'
qqw_unx.c:(.text+0x44dc): undefined reference to `XMapWindow'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwers':
qqw_unx.c:(.text+0x4588): undefined reference to `XSync'
qqw_unx.c:(.text+0x45ac): undefined reference to `XFillRectangle'
qqw_unx.c:(.text+0x45c0): undefined reference to `glClear'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwvlt':
qqw_unx.c:(.text+0x48a0): undefined reference to `XAllocColor'
qqw_unx.c:(.text+0x48dc): undefined reference to `XStoreColors'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwtit':
qqw_unx.c:(.text+0x4980): undefined reference to `XStoreName'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwfree':
qqw_unx.c:(.text+0x4a6c): undefined reference to `XFreePixmap'
qqw_unx.c:(.text+0x4af4): undefined reference to `XUnmapWindow'
qqw_unx.c:(.text+0x4b24): undefined reference to `XDestroyWindow'
qqw_unx.c:(.text+0x4b7c): undefined reference to `XFreePixmap'
qqw_unx.c:(.text+0x4b88): undefined reference to `XDestroyWindow'
qqw_unx.c:(.text+0x4b9c): undefined reference to `XCloseDisplay'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqdrwbox':
qqw_unx.c:(.text+0x4d48): undefined reference to `XCreateGC'
qqw_unx.c:(.text+0x4da4): undefined reference to `XDrawRectangle'
qqw_unx.c:(.text+0x4db0): undefined reference to `XFreeGC'
qqw_unx.c:(.text+0x4dd4): undefined reference to `XDrawLine'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwque':
qqw_unx.c:(.text+0x4dfc): undefined reference to `XSync'
qqw_unx.c:(.text+0x4e04): undefined reference to `XPending'
qqw_unx.c:(.text+0x4e28): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x4e58): undefined reference to `XSync'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqgllin':
qqw_unx.c:(.text+0x4ec8): undefined reference to `glBegin'
qqw_unx.c:(.text+0x4ed4): undefined reference to `glVertex2f'
qqw_unx.c:(.text+0x4ee0): undefined reference to `glVertex2f'
qqw_unx.c:(.text+0x4eec): undefined reference to `glEnd'
qqw_unx.c:(.text+0x4ef4): undefined reference to `glBegin'
qqw_unx.c:(.text+0x4f00): undefined reference to `glVertex2f'
qqw_unx.c:(.text+0x4f0c): undefined reference to `glEnd'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwpol':
qqw_unx.c:(.text+0x50cc): undefined reference to `glBegin'
qqw_unx.c:(.text+0x5118): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x5134): undefined reference to `glEnd'
qqw_unx.c:(.text+0x51c4): undefined reference to `XFillPolygon'
qqw_unx.c:(.text+0x51e4): undefined reference to `XDrawLines'
qqw_unx.c:(.text+0x5220): undefined reference to `XDrawLine'
qqw_unx.c:(.text+0x523c): undefined reference to `glBegin'
qqw_unx.c:(.text+0x5274): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x52a4): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x52d4): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x52d8): undefined reference to `glEnd'
qqw_unx.c:(.text+0x52e4): undefined reference to `glBegin'
qqw_unx.c:(.text+0x531c): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x534c): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x537c): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x53ac): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x53b0): undefined reference to `glEnd'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwsym':
qqw_unx.c:(.text+0x58e0): undefined reference to `XFillArc'
qqw_unx.c:(.text+0x595c): undefined reference to `XDrawArc'
qqw_unx.c:(.text+0x5994): undefined reference to `XDrawArc'
qqw_unx.c:(.text+0x59e0): undefined reference to `XDrawLines'
qqw_unx.c:(.text+0x5a18): undefined reference to `XFillArc'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcln':
qqw_unx.c:(.text+0x5b94): undefined reference to `XTextWidth16'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcha':
qqw_unx.c:(.text+0x5ce4): undefined reference to `XDrawString'
qqw_unx.c:(.text+0x5d04): undefined reference to `glRasterPos2i'
qqw_unx.c:(.text+0x5d0c): undefined reference to `glListBase'
qqw_unx.c:(.text+0x5d1c): undefined reference to `glCallLists'
qqw_unx.c:(.text+0x5d54): undefined reference to `XDrawString16'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwchk':
qqw_unx.c:(.text+0x5dc4): undefined reference to `XOpenDisplay'
qqw_unx.c:(.text+0x5dd0): undefined reference to `XCloseDisplay'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwsbf':
qqw_unx.c:(.text+0x5eac): undefined reference to `glXMakeCurrent'
qqw_unx.c:(.text+0x5eb4): undefined reference to `glDrawBuffer'
qqw_unx.c:(.text+0x5ec0): undefined reference to `glRasterPos2i'
qqw_unx.c:(.text+0x5edc): undefined reference to `glCopyPixels'
qqw_unx.c:(.text+0x5ee4): undefined reference to `glDrawBuffer'
qqw_unx.c:(.text+0x5f00): undefined reference to `glXMakeCurrent'
qqw_unx.c:(.text+0x5f04): undefined reference to `glFlush'
qqw_unx.c:(.text+0x5f50): undefined reference to `XCopyArea'
qqw_unx.c:(.text+0x5ffc): undefined reference to `XSync'
qqw_unx.c:(.text+0x607c): undefined reference to `XCopyArea'
qqw_unx.c:(.text+0x6128): undefined reference to `XSync'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwmb2':
qqw_unx.c:(.text+0x61d0): undefined reference to `XSendEvent'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwimg':
qqw_unx.c:(.text+0x6274): undefined reference to `XPutImage'
qqw_unx.c:(.text+0x62d0): undefined reference to `XGetImage'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqscsr':
qqw_unx.c:(.text+0x64d8): undefined reference to `XDefineCursor'
qqw_unx.c:(.text+0x64e4): undefined reference to `XSync'
qqw_unx.c:(.text+0x6514): undefined reference to `XUndefineCursor'
qqw_unx.c:(.text+0x6520): undefined reference to `XSync'
qqw_unx.c:(.text+0x6544): undefined reference to `XFreeCursor'
qqw_unx.c:(.text+0x6564): undefined reference to `XCreateFontCursor'
qqw_unx.c:(.text+0x6578): undefined reference to `XCreateFontCursor'
qqw_unx.c:(.text+0x658c): undefined reference to `XCreateFontCursor'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcu6':
qqw_unx.c:(.text+0x65e4): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x6644): undefined reference to `XFlush'
qqw_unx.c:(.text+0x66c4): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x6780): undefined reference to `XFlush'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcu5':
qqw_unx.c:(.text+0x6800): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x6868): undefined reference to `XFlush'
qqw_unx.c:(.text+0x68e8): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x69a4): undefined reference to `XFlush'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcu4':
qqw_unx.c:(.text+0x6a50): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x6a98): undefined reference to `XLookupString'
qqw_unx.c:(.text+0x6b70): undefined reference to `XQueryPointer'
qqw_unx.c:(.text+0x6c24): undefined reference to `XWarpPointer'
qqw_unx.c:(.text+0x6c7c): undefined reference to `XPending'
qqw_unx.c:(.text+0x6cb8): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x6d20): undefined reference to `XLookupString'
qqw_unx.c:(.text+0x6e10): undefined reference to `XQueryPointer'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcu3':
qqw_unx.c:(.text+0x6ecc): undefined reference to `XNextEvent'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcu2':
qqw_unx.c:(.text+0x6fac): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x7044): undefined reference to `XNextEvent'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwcu1':
qqw_unx.c:(.text+0x7110): undefined reference to `XNextEvent'
qqw_unx.c:(.text+0x713c): undefined reference to `XNextEvent'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwscr':
qqw_unx.c:(.text+0x7238): undefined reference to `XOpenDisplay'
qqw_unx.c:(.text+0x724c): undefined reference to `XDefaultScreenOfDisplay'
qqw_unx.c:(.text+0x7254): undefined reference to `XWidthOfScreen'
qqw_unx.c:(.text+0x7260): undefined reference to `XHeightOfScreen'
qqw_unx.c:(.text+0x726c): undefined reference to `XDefaultDepthOfScreen'
qqw_unx.c:(.text+0x7278): undefined reference to `XCloseDisplay'
qqw_unx.c:(.text+0x72f4): undefined reference to `XGetGeometry'
qqw_unx.c:(.text+0x7310): undefined reference to `XRootWindowOfScreen'
qqw_unx.c:(.text+0x733c): undefined reference to `XTranslateCoordinates'
qqw_unx.c:(.text+0x7358): undefined reference to `XWidthOfScreen'
qqw_unx.c:(.text+0x7364): undefined reference to `XHeightOfScreen'
qqw_unx.c:(.text+0x7370): undefined reference to `XDefaultDepthOfScreen'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqzbuf':
qqw_unx.c:(.text+0x73f8): undefined reference to `glClear'
qqw_unx.c:(.text+0x7508): undefined reference to `glEnable'
qqw_unx.c:(.text+0x7510): undefined reference to `glDepthFunc'
qqw_unx.c:(.text+0x7518): undefined reference to `glClear'
qqw_unx.c:(.text+0x75a8): undefined reference to `glDisable'
qqw_unx.c:(.text+0x75bc): undefined reference to `glClear'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwext':
qqw_unx.c:(.text+0x8270): undefined reference to `XSetLineAttributes'
qqw_unx.c:(.text+0x8298): undefined reference to `glLineWidth'
qqw_unx.c:(.text+0x8688): undefined reference to `glDisable'
qqw_unx.c:(.text+0x8734): undefined reference to `XSetClipRectangles'
qqw_unx.c:(.text+0x873c): undefined reference to `glEnable'
qqw_unx.c:(.text+0x8750): undefined reference to `XSetClipMask'
qqw_unx.c:(.text+0x8784): undefined reference to `glScissor'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwclr':
qqw_unx.c:(.text+0x8864): undefined reference to `glColor3f'
qqw_unx.c:(.text+0x88e0): undefined reference to `XSetForeground'
qqw_unx.c:(.text+0x8914): undefined reference to `XSetForeground'
/usr/local/dislin/libdislin.a(qqwini.o): In function `qqwftr':
qqw_unx.c:(.text+0x8c08): undefined reference to `XFillPolygon'
qqw_unx.c:(.text+0x8c3c): undefined reference to `XDrawLine'
qqw_unx.c:(.text+0x8c64): undefined reference to `XDrawLine'
qqw_unx.c:(.text+0x8c8c): undefined reference to `glBegin'
qqw_unx.c:(.text+0x8ca0): undefined reference to `glVertex2i'
qqw_unx.c:(.text+0x8cb0): undefined refe. . . . .....
:                               :                              :
:                               :                              :
:                               :                              :.rence to `XDefaultScreen'
qqd_unx.c:(.text+0xe290): undefined reference to `XDefaultGC'
qqd_unx.c:(.text+0xe29c): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0xe2a0): undefined reference to `XDefaultDepthOfScreen'
qqd_unx.c:(.text+0xe2ac): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0xe2b0): undefined reference to `XDefaultVisualOfScreen'
qqd_unx.c:(.text+0xe2d8): undefined reference to `XRootWindow'
qqd_unx.c:(.text+0xe2f4): undefined reference to `XCreatePixmap'
qqd_unx.c:(.text+0xe35c): undefined reference to `XSetForeground'
qqd_unx.c:(.text+0xe374): undefined reference to `XDrawPoint'
qqd_unx.c:(.text+0xe558): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xe570): undefined reference to `XtParseTranslationTable'
qqd_unx.c:(.text+0xe57c): undefined reference to `XtOverrideTranslations'
qqd_unx.c:(.text+0xe598): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0xe628): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xe62c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xe630): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xe634): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xe638): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xe63c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xe640): undefined reference to `xmPushButtonWidgetClass'
qqd_unx.c:(.text+0xe64c): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdpicon':
qqd_unx.c:(.text+0xe7ec): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0xe7fc): undefined reference to `XDefaultGC'
qqd_unx.c:(.text+0xe808): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0xe80c): undefined reference to `XDefaultDepthOfScreen'
qqd_unx.c:(.text+0xe818): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0xe81c): undefined reference to `XDefaultVisualOfScreen'
qqd_unx.c:(.text+0xe848): undefined reference to `XRootWindow'
qqd_unx.c:(.text+0xe860): undefined reference to `XCreatePixmap'
qqd_unx.c:(.text+0xe8cc): undefined reference to `XSetForeground'
qqd_unx.c:(.text+0xe8e8): undefined reference to `XDrawPoint'
qqd_unx.c:(.text+0xeaa8): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xeac0): undefined reference to `XtParseTranslationTable'
qqd_unx.c:(.text+0xeacc): undefined reference to `XtOverrideTranslations'
qqd_unx.c:(.text+0xeae8): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0xebd4): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xebd8): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xebdc): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xebe0): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xebe4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xebe8): undefined reference to `xmPushButtonWidgetClass'
qqd_unx.c:(.text+0xebf4): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdpbut':
qqd_unx.c:(.text+0xee6c): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xee80): undefined reference to `XtParseTranslationTable'
qqd_unx.c:(.text+0xee8c): undefined reference to `XtOverrideTranslations'
qqd_unx.c:(.text+0xeea4): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0xeecc): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0xeee4): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xeee8): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xeeec): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xeef0): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xeef4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xeef8): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xeefc): undefined reference to `xmPushButtonWidgetClass'
qqd_unx.c:(.text+0xef08): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdquit':
qqd_unx.c:(.text+0xf100): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xf114): undefined reference to `XtParseTranslationTable'
qqd_unx.c:(.text+0xf120): undefined reference to `XtOverrideTranslations'
qqd_unx.c:(.text+0xf138): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0xf160): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0xf174): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xf17c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf180): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf184): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf188): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf18c): undefined reference to `xmPushButtonWidgetClass'
qqd_unx.c:(.text+0xf198): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdok':
qqd_unx.c:(.text+0xf390): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xf3a4): undefined reference to `XtParseTranslationTable'
qqd_unx.c:(.text+0xf3b0): undefined reference to `XtOverrideTranslations'
qqd_unx.c:(.text+0xf3c8): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0xf3d8): undefined reference to `XtParseTranslationTable'
qqd_unx.c:(.text+0xf3e4): undefined reference to `XtOverrideTranslations'
qqd_unx.c:(.text+0xf40c): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0xf424): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xf42c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf430): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf434): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf438): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf43c): undefined reference to `xmPushButtonWidgetClass'
qqd_unx.c:(.text+0xf448): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdbut':
qqd_unx.c:(.text+0xf648): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xf65c): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0xf68c): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0xf6c0): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xf6c4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf6c8): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf6cc): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xf6d0): undefined reference to `xmToggleButtonWidgetClass'
qqd_unx.c:(.text+0xf6d8): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdtbl':
qqd_unx.c:(.text+0xf7d4): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0xf7e0): undefined reference to `XBlackPixel'
qqd_unx.c:(.text+0xfb64): undefined reference to `xmDrawingAreaWidgetClass'
qqd_unx.c:(.text+0xfb6c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfb74): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfb7c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfb80): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfb84): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o):qqd_unx.c:(.text+0xfb88): more undefined references to `_XmStrings' follow
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdtbl':
qqd_unx.c:(.text+0xfb94): undefined reference to `xmTextFieldWidgetClass'
qqd_unx.c:(.text+0xfb9c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfba0): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfba4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfba8): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfbac): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o):qqd_unx.c:(.text+0xfbb4): more undefined references to `_XmStrings' follow
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdtbl':
qqd_unx.c:(.text+0xfbbc): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xfbc0): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xfbc4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfbc8): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfbd0): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xfbdc): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xfbe0): undefined reference to `XtStrings'
qqd_unx.c:(.text+0xfbe4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0xfd88): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0xfd9c): undefined reference to `XtManageChild'
qqd_unx.c:(.text+0xfdc0): undefined reference to `XtVaGetValues'
qqd_unx.c:(.text+0xfdd8): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0x10230): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0x10244): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0x10258): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0x1026c): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0x10280): undefined reference to `XtAddCallback'
qqd_unx.c:(.text+0x10294): undefined reference to `XtAddCallback'
/usr/local/dislin/libdislin.a(qqdini.o):qqd_unx.c:(.text+0x102a8): more undefined references to `XtAddCallback' follow
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdtbl':
qqd_unx.c:(.text+0x10378): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x10388): undefined reference to `XWhitePixel'
qqd_unx.c:(.text+0x10578): undefined reference to `XmCreateScrolledWindow'
qqd_unx.c:(.text+0x10580): undefined reference to `XtManageChild'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdsep':
qqd_unx.c:(.text+0x1092c): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0x10a34): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0x10a54): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x10a58): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x10a5c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x10a60): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x10a64): undefined reference to `xmSeparatorWidgetClass'
qqd_unx.c:(.text+0x10a74): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x10a78): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdimg':
qqd_unx.c:(.text+0x10b20): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x10b30): undefined reference to `XDefaultGC'
qqd_unx.c:(.text+0x10b3c): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0x10b40): undefined reference to `XDefaultDepthOfScreen'
qqd_unx.c:(.text+0x10b4c): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0x10b50): undefined reference to `XDefaultVisualOfScreen'
qqd_unx.c:(.text+0x10b78): undefined reference to `XRootWindow'
qqd_unx.c:(.text+0x10b94): undefined reference to `XCreatePixmap'
qqd_unx.c:(.text+0x10bfc): undefined reference to `XSetForeground'
qqd_unx.c:(.text+0x10c14): undefined reference to `XDrawPoint'
qqd_unx.c:(.text+0x10da0): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0x10e28): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x10e2c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x10e30): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x10e34): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x10e38): undefined reference to `xmLabelWidgetClass'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdicon':
qqd_unx.c:(.text+0x10fd8): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x10fe8): undefined reference to `XDefaultGC'
qqd_unx.c:(.text+0x10ff4): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0x10ff8): undefined reference to `XDefaultDepthOfScreen'
qqd_unx.c:(.text+0x11004): undefined reference to `XDefaultScreenOfDisplay'
qqd_unx.c:(.text+0x11008): undefined reference to `XDefaultVisualOfScreen'
qqd_unx.c:(.text+0x11034): undefined reference to `XRootWindow'
qqd_unx.c:(.text+0x1104c): undefined reference to `XCreatePixmap'
qqd_unx.c:(.text+0x110b8): undefined reference to `XSetForeground'
qqd_unx.c:(.text+0x110d4): undefined reference to `XDrawPoint'
qqd_unx.c:(.text+0x1125c): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0x11360): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x11364): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x11368): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x1136c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x11370): undefined reference to `xmLabelWidgetClass'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqdlab':
qqd_unx.c:(.text+0x11594): undefined reference to `XtCreateManagedWidget'
qqd_unx.c:(.text+0x115b8): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0x11604): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x11608): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x1160c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x11610): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x11614): undefined reference to `xmLabelWidgetClass'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsbfgd':
qqd_unx.c:(.text+0x1198c): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x11998): undefined reference to `XDefaultColormap'
qqd_unx.c:(.text+0x119a8): undefined reference to `XAllocColor'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsbgd':
qqd_unx.c:(.text+0x11ae8): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x11af4): undefined reference to `XDefaultColormap'
qqd_unx.c:(.text+0x11b04): undefined reference to `XAllocColor'
qqd_unx.c:(.text+0x11b30): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x11b3c): undefined reference to `XSync'
qqd_unx.c:(.text+0x11b5c): undefined reference to `XtStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsfgd':
qqd_unx.c:(.text+0x11c54): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x11c60): undefined reference to `XDefaultColormap'
qqd_unx.c:(.text+0x11c70): undefined reference to `XAllocColor'
qqd_unx.c:(.text+0x11c9c): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x11ca8): undefined reference to `XSync'
qqd_unx.c:(.text+0x11cc4): undefined reference to `XtStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsfoc':
qqd_unx.c:(.text+0x11e0c): undefined reference to `XmProcessTraversal'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsbut':
qqd_unx.c:(.text+0x11ee0): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x11eec): undefined reference to `XSync'
qqd_unx.c:(.text+0x11fc4): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqslis':
qqd_unx.c:(.text+0x12080): undefined reference to `XmListSelectPos'
qqd_unx.c:(.text+0x1209c): undefined reference to `XSync'
qqd_unx.c:(.text+0x120cc): undefined reference to `XmListDeselectPos'
qqd_unx.c:(.text+0x120f4): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x1211c): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsbox':
qqd_unx.c:(.text+0x121ec): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x12214): undefined reference to `XSync'
qqd_unx.c:(.text+0x12230): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsscl':
qqd_unx.c:(.text+0x122e8): undefined reference to `XtGetValues'
qqd_unx.c:(.text+0x12360): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x1237c): undefined reference to `XSync'
qqd_unx.c:(.text+0x123b0): undefined reference to `XtParent'
qqd_unx.c:(.text+0x12420): undefined reference to `XtGetValues'
qqd_unx.c:(.text+0x1243c): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x12498): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x1249c): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x124a4): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x124a8): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsval':
qqd_unx.c:(.text+0x1255c): undefined reference to `XtIsRealized'
qqd_unx.c:(.text+0x1257c): undefined reference to `XtAppNextEvent'
qqd_unx.c:(.text+0x12584): undefined reference to `XtDispatchEvent'
qqd_unx.c:(.text+0x1258c): undefined reference to `XtAppPending'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqstxt':
qqd_unx.c:(.text+0x126d4): undefined reference to `XmTextFieldSetString'
qqd_unx.c:(.text+0x1272c): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x12734): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0x12740): undefined reference to `XSync'
qqd_unx.c:(.text+0x127a8): undefined reference to `XmListAddItem'
qqd_unx.c:(.text+0x127c8): undefined reference to `XmListSelectPos'
qqd_unx.c:(.text+0x127e4): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0x1281c): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x12824): undefined reference to `XmStringFree'
qqd_unx.c:(.text+0x12854): undefined reference to `XmListDeletePos'
qqd_unx.c:(.text+0x1287c): undefined reference to `_XmStrings'
qqd_unx.c:(.text+0x12880): undefined reference to `_XmStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqstbs':
qqd_unx.c:(.text+0x12adc): undefined reference to `XSync'
qqd_unx.c:(.text+0x12b34): undefined reference to `XmTextFieldSetEditable'
qqd_unx.c:(.text+0x12b70): undefined reference to `XmTextFieldGetString'
qqd_unx.c:(.text+0x12c5c): undefined reference to `XtFree'
qqd_unx.c:(.text+0x12cd8): undefined reference to `XmTextFieldSetEditable'
qqd_unx.c:(.text+0x12cec): undefined reference to `XmTextFieldGetString'
qqd_unx.c:(.text+0x12d40): undefined reference to `XtFree'
qqd_unx.c:(.text+0x12d5c): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x12d68): undefined reference to `XWhitePixel'
qqd_unx.c:(.text+0x12d7c): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x12dac): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x12dcc): undefined reference to `XSync'
qqd_unx.c:(.text+0x12dec): undefined reference to `XtStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqstbf':
qqd_unx.c:(.text+0x13074): undefined reference to `XSync'
qqd_unx.c:(.text+0x1310c): undefined reference to `XSync'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqstbi':
qqd_unx.c:(.text+0x13348): undefined reference to `XSync'
qqd_unx.c:(.text+0x13450): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x1345c): undefined reference to `XDefaultColormap'
qqd_unx.c:(.text+0x1346c): undefined reference to `XAllocColor'
qqd_unx.c:(.text+0x134ac): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x134cc): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x134d8): undefined reference to `XBlackPixel'
qqd_unx.c:(.text+0x1351c): undefined reference to `XtSetValues'
qqd_unx.c:(.text+0x13588): undefined reference to `XDefaultScreen'
qqd_unx.c:(.text+0x13594): undefined reference to `XWhitePixel'
qqd_unx.c:(.text+0x135ac): undefined reference to `XSync'
qqd_unx.c:(.text+0x135d4): undefined reference to `XtStrings'
qqd_unx.c:(.text+0x135d8): undefined reference to `XtStrings'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqstbl':
qqd_unx.c:(.text+0x13918): undefined reference to `XSync'
qqd_unx.c:(.text+0x139b8): undefined reference to `XSync'
/usr/local/dislin/libdislin.a(qqdini.o): In function `qqsfil':
qqd_unx.c:(.text+0x13b44): undefined reference to `XmTextFieldSetString'
qqd_unx.c:(.text+0x13b5c): undefined reference to `XSync'
collect2: error: ld returned 1 exit status
Error(E42): Last command making (egSF) returned a bad status
Error(E02): Make execution terminated

* Failed *

Re: Struggling with DISLIN + GFortran under Raspbian

John,

It's asking to link to, basically, everything needed for a GUI, which seems excessive.  What happens if you disable static linking by unchecking "All Static" under the Linker tab in Project Options?

Jeff Armstrong
Approximatrix, LLC

Re: Struggling with DISLIN + GFortran under Raspbian

Success!

I should have thought of that.
I can also remove the two -pthread options.

Result: identical 47.2KB executable as when I use the CLI.

I have also tried with Static linking - Static Fortran runtime ticked.
Result: 193.6K executable, which also runs OK.
However, the latter still needs shared libraries (which it is finding).

Thank you Jeff,
---
John

Re: Struggling with DISLIN + GFortran under Raspbian

PS

I notice that, under Static linking options can be selected for the Fortran, C and C++ runtimes.
I notice also that, when selecting just Fortran runtime static linking, the setting is saved in the project file, but, if one selects all three, then saving the project loses this setting.  Is that intentional?
---
John

Re: Struggling with DISLIN + GFortran under Raspbian

John,

That's a bug.  Those checkboxes have always had bugs for some reason or another.  I'll see that it's fixed.

Jeff Armstrong
Approximatrix, LLC