xforms-development
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XForms] Why does gcc not find the forms library?


From: Peter Rowat
Subject: Re: [XForms] Why does gcc not find the forms library?
Date: Thu, 15 Oct 2015 12:26:58 -0700

The forms library is in /usr/local/lib.

I had wrongly assumed that since I was installing XForms in my own directory the forms library would be there too.
The object files (*.o) but not the library (forms.a) are in xforms-1.2.4/lib/.lib.

On Oct 15, 2015, at 11:20 AM, Denniston, Todd A CIV NAVSURFWARCENDIV Crane <address@hidden> wrote:

-----Original Message-----
From: On Behalf Of Jens Thoms Toerring
Sent: Monday, October 12, 2015 4:30 PM
To: Development with and of XForms; Peter Rowat
Subject: Re: [XForms] Why does gcc not find the forms library?

Hi Peter,

On Mon, Oct 12, 2015 at 12:32:35PM -0700, Peter Rowat wrote:
On OS X, I’ve installed XForms and compiled the demos and they all work.
But trying to compile the simplest program directly, e.g.

gcc -o pshme pshme.c -lforms

fails with "ld: library not found for -lforms”

Did you install it (i.e. did you run "make install")?  ** Yes** And if you
did, did it get installed in a path the linker checks for per
default? **No!** The default for the installation is '/usr/local/lib'.
And even then you may have to make the runtime linker aware of
newly installed libraries.

I have no experience with OS X, but on Linux you need to run
'ldconfig' (as root) before it gets found after installing it
for the very first time. And the runtime linker can be made
to include '/usr/local/lib' into the default search path by
editing /etc/ld.so.conf' or, on newer systems, creating a file
with in 'etc/ld.so.conf.d'. Perhaps it's handled in a similar
way under OS X?

Same happens if I tell gcc where to look:

gcc -o pshme pshme.c -L/….../xforms-1.2.4/lib -lforms

ls lib/*forms*
lib/forms.c lib/forms.lo lib/forms.o lib/libforms.la lib/xforms.5 lib/xforms.man

The finished library is in 'lib/.lib', not in the 'lib'
directory itself. So it should work with

gcc -o pshme pshme.c -L/….../xforms-1.2.4/lib/.lib -lforms


Which version of OS X has the OP been using?  **10.11**
Was the xforms lib installed before or after the last OS upgrade? **After**

I have been reading in some other mailing lists[2] that some features of the new System Integrity Protection [1] (AKA rootless) has been causing issues with packages that want to install links in / or /usr, also there is an issue with boost [3] that might be similar.  
Food for thought? Places to ask what their related solutions were?

[1] https://en.wikipedia.org/wiki/OS_X_El_Capitan#System_Integrity_Protection

[2] http://article.gmane.org/gmane.comp.tex.macosx/47074
  http://sourceforge.net/p/gimp-print/mailman/message/34523439/
http://sourceforge.net/p/gimp-print/mailman/message/34515229/
http://sourceforge.net/p/gimp-print/mailman/message/34520522/

[3] http://stackoverflow.com/questions/32898887/boost-no-longer-works-with-homebrew-on-mac-el-capitan

Even when this disclaimer is not here:
I am not a contracting officer. I do not have authority to make or modify the terms of any contract.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]