Where is libsocket.a, libnsl.a, and libintl.a?

I downloaded and installed Sun Studio 11 on Sparc Solaris 10. A third party makefile fails because the following libs are not available

- /usr/lib/libsocket.a

- /usr/lib/libnsl.a

- /usr/lib/libintl.a

Where do I find the download to get these libs (or what do I have to buy)?

Regards,

Al Malin

[339 byte] By [malinaa] at [2007-11-26 8:17:21]
# 1

Solaris 10 provides no static libraries, only dynamic ones

There should be libsocket.so, libnsl.so and libinl.so in /usr/lib.

Generally its better to not link "system" libraries statically, as dynamic linking has a great deal of advantages over static one, including better portability for your programs.

That depends on your situation and goals though.

You should change your makefiles to link dynamic libraries (say, by changing link command to use -lnsl instead of libnsl.a).

regards,

__Fedor.

SFV at 2007-7-6 21:17:49 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 2
I changed the makefile per your suggestion and the executable built ok.Thanks,Al Malin
malinaa at 2007-7-6 21:17:49 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 3

I second Fedor's suggestion. If you can make the change to that 3rd party makefile to link to dynamic libraries, that is the ideal case.

In case, 3rd party has some retriction that you have to use those static libraries, the work around is to use Solaris 9 (Developer or Entire Distribution). Solaris 9 installed those static libraries in /usr/lib. Sun Studio 11 is also supported on Solaris 9.

-Ngoc

NgocNguyen at 2007-7-6 21:17:49 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 4
You can read more about this issue here: http://blogs.sun.com/roller/page/quenelle?entry=solaris_10_ack_where_didIncluding why this change was made in Solaris.--chris
ChrisQuenelle at 2007-7-6 21:17:49 > top of Java-index,Development Tools,Solaris and Linux Development Tools...