pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Imake on Solaris 11.2/sparc
Hi!
I just started using pkgsrc on Solaris 11.2/sparc. I have problems
compiling packages that use Imake, e.g. xdu or xv.
Linking fails with
ld: fatal: /usr/lib/ld/map.noexdata: 29: error: SPARC Procedure
Linkage Table (PLT) must remain executable
The flag "-Wl,-M,/usr/lib/ld/map.noexdata" (which should not be used in
Sparc, only i86) comes from sun.cf:
#ifndef Mapfile_NoExData
# if defined(SparcArchitecture)
/* SPARC archictecture requires PLT section in .data be executable, so
we can only make .bss, not all of .data no-exec on SPARC */
# define Mapfile_NoExData /**/
# else
# if OSMinorVersion >= 10
# define Mapfile_NoExData $(MAPFILEFLAG)/usr/lib/ld/map.noexdata
# else
# define Mapfile_NoExData /**/
# endif
# endif
#endif
The definition for SparcArchitecture seems okay, it boils down to the
presence of defines "sun" and "sparc", which my GCC emits.
I noticed patch-ag in x11/xorg-cf-files:
-#ifdef sun
+#if defined(sun) || defined(__sun)
in Imake.cf. Just for fun I reverted it back to the original, and voila,
now compilation of xdu succeeds (i.e. the linker flag is not included).
But installation then fails and the RUNPATH of the binary does not
include the pkgsrc directories for e.g. X11 libraries.
I have been building these packages on Solaris 11.2/i86 for some time
now, and last time I checked they worked fine on Solaris 10/i86 and
/sparc. Any idea what's going on?
Joern
--
Jörn Clausen
Plattformen & Serverdienste
Hochschulrechenzentrum
Universität Bielefeld
Universitätsstraße 25
33615 Bielefeld
Telefon: +49 521 106-12601
E-Mail: joern.clausen%uni-bielefeld.de@localhost
http://www.uni-bielefeld.de/hrz
Home |
Main Index |
Thread Index |
Old Index