ports/182814: gnat-2010 linker issues

Byron Young bky at bkyoung.com
Mon Oct 7 22:50:01 UTC 2013


>Number:         182814
>Category:       ports
>Synopsis:       gnat-2010 linker issues
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 07 22:50:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Byron Young
>Release:        9.2-RELEASE
>Organization:
>Environment:
i386
>Description:
A few issues with /usr/ports/lang/gnat which creates packages-9.2-release/lang/gnat-2010.tbz

-DWANT_SHAREDLIBS builds libgnala.a, not libgnala.so

gnatmake adds linker options -Wl,rpath and -L
 /usr/local/lib/gcc-nat/gcc/i386-portbld-freebsd9.2/4.3.6/adalib/
The trailing / must be removed from command line -L to find -lgnat-2010.

Body unit source file gcc-4_3-branch-src/gcc/ada/i-forbla.adb pragma add undefined dependency to -lgnalasup. Changing to
-pragma Linker_Options ("-lgnalasup");
+pragma Linker_Options ("-lblas");
+pragma Linker_Options ("-llapack");
appears to resolve the dependency issue (attached patch).

LIB_DEPENDS+= blas:${PORTSDIR}/math/blas
LIB_DEPENDS+= lapack:${PORTSDIR}/math/lapack

>How-To-Repeat:

>Fix:
correct linker dependency

cd /usr/ports/lang/gnat/work
patch < patch-i-forbla_adb.txt

Patch attached with submission follows:

diff --git gcc-4_3-branch-src/gcc/ada/i-forbla.adb gcc-4_3-branch-src/gcc/ada/i-forbla.adb
index b5e1e3f..217b194 100644
--- gcc-4_3-branch-src/gcc/ada/i-forbla.adb
+++ gcc-4_3-branch-src/gcc/ada/i-forbla.adb
@@ -39,6 +39,8 @@
 
 package body Interfaces.Fortran.BLAS is
    pragma Linker_Options ("-lgnala");
-   pragma Linker_Options ("-lgnalasup");
+--   pragma Linker_Options ("-lgnalasup");
+   pragma Linker_Options ("-lblas");
+   pragma Linker_Options ("-llapack");
    pragma Linker_Options ("-lm");
 end Interfaces.Fortran.BLAS;


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list