Ticket #3679 (closed bug: wontfix)

Opened 4 years ago

Last modified 3 years ago

./configure --enable-shared does not work for ghc-6.10

Reported by: elkner Owned by:
Priority: normal Milestone:
Component: Compiler Version: 6.10.4
Keywords: Cc:
Operating System: Solaris Architecture: x86_64 (amd64)
Type of failure: Building GHC failed Difficulty:
Test Case: Blocked By:
Blocking: Related Tickets:

Description (last modified by igloo) (diff)

SunOS q 5.11 snv_126 i86pc i386 i86pc

    ./configure --prefix=/opt \
        --disable-static \
        --disable-rpath \
        --enable-shared \
        --with-ghc=$ROOT4BUILD/opt/bin/ghc \
        --with-gmp-includes=/usr/include/gmp \
        --with-gmp-libraries=/usr/lib/${ARCH_DIR}

    gmake all | tee $MAKELOG

...
/export/scratch/elkner/build/ghc-6.10.4/ghc-6.10.4/ghc/stage1-inplace/ghc  -H32m -O -optc-O2 -I../includes -I. -Iparallel -Ism -DCOMPILING_RTS -package-name rts  -I/usr/include/gmp -I../gmp/gmpbuild -I../libffi/build/include -I. -dcmm-lint  -hisuf dyn_hi -hcsuf dyn_hc -osuf dyn_o -fPIC -dynamic   -c Apply.cmm -o Apply.dyn_o
ghc: panic! (the 'impossible' happened)
  (GHC version 6.10.4 for i386-unknown-solaris2):
	howToAccessLabel: PIC not defined for this platform

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

gmake[2]: *** [Apply.dyn_o] Error 1
gmake[1]: *** [all] Error 1
gmake[1]: Leaving directory `/export/scratch/elkner/build/ghc-6.10.4/ghc-6.10.4/rts'
gmake: *** [stage1] Error 2
Skipping package make
432.09u 41.84s 9:58.28 79.2%

Change History

Changed 4 years ago by igloo

  • description modified (diff)

Changed 3 years ago by duncan

  • status changed from new to closed
  • resolution set to wontfix
  • summary changed from ghc: panic! (the 'impossible' happened) to ./configure --enable-shared does not work for ghc-6.10

Note that --enable-shared is not supported in GHC 6.10. Currently the only platforms where ghc supports shared libs are Linux on x86 and x86-64 and only when using ghc-6.12.

Note also that the configure flags --disable-static and --disable-rpath do not actually exist.

In ghc-6.12 the flag --enable-shared also does not exist. The way to force the ghc build system to try to make shared libs on platforms where they are not officially supported is to add GhcLibWays += dyn to your mk/build.mk.

Elkner, it's worth having a go and trying this with 6.12. I would not expect it to work first time but it should give us a clue as to what needs fixing. Report your progress to the ghc users list and/or file a new feature-request ticket.

I'm closing this ticket because we do not expect 6.10 to support --enabled-shared.

Note: See TracTickets for help on using tickets.