- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
using OS X 10.10.3 with fresh install of mkl and Eclipse MARS.2
from the command line I run:
gcc nec2c.o somnec.o misc.o -l /opt/intel/mkl/lib/lib
and get
ld: library not found for -l/opt/intel/mkl/lib/libmkl_intel_lp64
but it is there:
ls /opt/intel/mkl/lib/libmkl_intel_lp64.a
/opt/intel/mkl/lib/libmkl_intel_lp64.a
BUT... if I leave out the '-l' flag, the file
is found and linked (and, of course, results in
many other unresolved references).
If I put in the '-L' flag to point to the directory
and just '-llibmkl_intel_lp64' I get the same results.
Any idea why gcc can't find the libraries? Is there a
file or directory privileges issue, perhaps?
thanks....
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Folks:
Sorry to have bothered you...
turns out you should leave out the 'lib' in 'libmkl_intel_lp64'.
Not sure how I should have known it but... well... there it is.
Thanks to all who took the time.
ward
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The topic of standard library naming, creation and usage conventions in Unix/Linux is something that is worth becoming familiar with.
See, for example, http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html .
In particular, note that the -l (lower case L) and -L linker options (usually passed by compiler drivers to the linker ld, or directly to ld) have quite different meanings.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page