- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello all,
Here is my problem:
ipo: warning #11024: IPO link: can not find /usr/local/lib//usr/lib64/gcc/x86_64-suse-linux/4.2.1/32/crtbegin.o
during the linking process. I looked into my directory and it
appeared that /usr/lib64/gcc/x86_64-suse-linux/4.2.1/32/crtbegin.o exists
is there any means to enforce the linker to search in the right path?
Many thanks
Cheers
Antoine CARRE
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I have the following content in DP_LIBRARY_PATH:
echo $DP_LIBRARY_PATH
/usr/lib64/gcc/x86_64-suse-linux/4.4/32
and still the error due to the '//' when compiling:
ipo: warning #11024: IPO link: can not find /usr/local/lib//usr/lib64/gcc/x86_64-suse-linux/4.2.1/32/crtbegin.o
ipo: warning #11024: IPO link: can not find /usr/local/lib//usr/lib64/gcc/x86_64-suse-linux/4.2.1/32/crtend.o
Fortunatly I didn't yet manage to find the place where the linker finds these paths...
Cheers
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you mean that you have removed a g++ 4.2.1 installation which was active when you installed ifort? My preference is to leave that version in place, and install any newer version of gcc in a different path, such as /usr/local/gcc44, keeping the 4.2.1 available for ifort. You must have a working version of g++ on PATH when running ifort, as ifort uses 'g++ -print-search-dirs' to locate the files which it expects g++ to supply. I haven't had difficulty running ifort when g++ 4.4 is active, but g++ 4.2.1 is the latest version which works well with icpc.
If you link dynamically, LD_LIBRARY_PATH must include the library supplied by the g++ which was active when ifort was run. I don't know that DP_LIBRARY_PATH has any relevance to your original question.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Many thanks for your help..... I finally found the answer, the intel compiler was using
the "/usr/bin/g++ -print-search-dirs" command to find the proper library. However
/usr/bin/g++ was a link pointing to g++-4.2 and not to g++-4-4 and the libraries
corresponding to the g++-4.2 version where not the one I was looking for.
I changed the g++ and gcc links to the most recent version of the compilers and now it works.
However I am still sceptical as the double "//" are still used when searching for the proper library.
Cheers
Antoine
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Many thanks for your help..... I finally found the answer, the intel compiler was using
the "/usr/bin/g++ -print-search-dirs" command to find the proper library. However
/usr/bin/g++ was a link pointing to g++-4.2 and not to g++-4-4 and the libraries
corresponding to the g++-4.2 version where not the one I was looking for.
I changed the g++ and gcc links to the most recent version of the compilers and now it works.
However I am still sceptical as the double "//" are still used when searching for the proper library.
Cheers
Antoine
// is equivalent to / Not clean, but we all have to accept it.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page