This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: linking qsort with gfortran


On 12/21/2012 7:58 PM, dlr13@mac.com wrote:
First, apologies if this question has been answered elsewhere or I am doing something really stupid. I have searched for several hours for a solution to my problem with no success.

I am trying to do a GCC build of a mix of C and Fortran source that has been successfully compiled for many years with both the PGI and Intel compilers. I have one Fortran routine that calls "qsort", a sorting routine provided in most libraries. I know it is provided in the GCC libraries. However, because the call is from Fortran code, it will properly link with the library and I get this error:

Undefined symbols for architecture x86_64:
   "_qsort_", referenced from:

I understand that the trailing underscore is the problem, but I cannot use the "no-underscoring" compiler flags because the code also links to other libraries that do provide the underscore which then breaks everything else. I am using gfortran to do the linking though I get the same error with gcc. I am using version 4.8 currently but get the same error with 4.7. Everything is on OS X, 10.7.

Any help would be greatly appreciated. Thank you.

_____
David




If there is no Fortran wrapper for qsort in your library you should be able to call it via iso_c_binding. qsort isn't in a gcc library, usually it's glibc, although I don't know mac specifics.

--
Tim Prince


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]