$ git clone git://github.com/ghc/ghc.git ghc-github $ cd ghc-github $ ./sync-all get $ perl boot $ ./configure $ make
[…]
"inplace/bin/ghc-stage1" -this-package-key rts -shared -dynamic -dynload deploy
-no-auto-link-packages -Lrts/dist/build -lffi -optl-Wl,-rpath
-optl-Wl,'$ORIGIN' -optl-Wl,-zorigin `cat rts/dist/libs.depend`
rts/dist/build/Adjustor.dyn_o rts/dist/build/Arena.dyn_o
rts/dist/build/Capability.dyn_o rts/dist/build/CheckUnload.dyn_o
rts/dist/build/ClosureFlags.dyn_o rts/dist/build/Disassembler.dyn_o
rts/dist/build/FileLock.dyn_o rts/dist/build/Globals.dyn_o
rts/dist/build/Hash.dyn_o rts/dist/build/Hpc.dyn_o rts/dist/build/HsFFI.dyn_o
rts/dist/build/Inlines.dyn_o rts/dist/build/Interpreter.dyn_o
rts/dist/build/LdvProfile.dyn_o rts/dist/build/Linker.dyn_o
rts/dist/build/Messages.dyn_o rts/dist/build/OldARMAtomic.dyn_o
rts/dist/build/Papi.dyn_o rts/dist/build/Printer.dyn_o
rts/dist/build/ProfHeap.dyn_o rts/dist/build/Profiling.dyn_o
rts/dist/build/Proftimer.dyn_o rts/dist/build/RaiseAsync.dyn_o
rts/dist/build/RetainerProfile.dyn_o rts/dist/build/RetainerSet.dyn_o
rts/dist/build/RtsAPI.dyn_o rts/dist/build/RtsDllMain.dyn_o
rts/dist/build/RtsFlags.dyn_o rts/dist/build/RtsMain.dyn_o
rts/dist/build/RtsMessages.dyn_o rts/dist/build/RtsStartup.dyn_o
rts/dist/build/RtsUtils.dyn_o rts/dist/build/STM.dyn_o
rts/dist/build/Schedule.dyn_o rts/dist/build/Sparks.dyn_o
rts/dist/build/Stable.dyn_o rts/dist/build/Stats.dyn_o
rts/dist/build/StgCRun.dyn_o rts/dist/build/StgPrimFloat.dyn_o
rts/dist/build/Task.dyn_o rts/dist/build/ThreadLabels.dyn_o
rts/dist/build/ThreadPaused.dyn_o rts/dist/build/Threads.dyn_o
rts/dist/build/Ticky.dyn_o rts/dist/build/Timer.dyn_o
rts/dist/build/Trace.dyn_o rts/dist/build/WSDeque.dyn_o
rts/dist/build/Weak.dyn_o rts/dist/build/hooks/FlagDefaults.dyn_o
rts/dist/build/hooks/MallocFail.dyn_o rts/dist/build/hooks/OnExit.dyn_o
rts/dist/build/hooks/OutOfHeap.dyn_o rts/dist/build/hooks/StackOverflow.dyn_o
rts/dist/build/sm/BlockAlloc.dyn_o rts/dist/build/sm/Compact.dyn_o
rts/dist/build/sm/Evac.dyn_o rts/dist/build/sm/GC.dyn_o
rts/dist/build/sm/GCAux.dyn_o rts/dist/build/sm/GCUtils.dyn_o
rts/dist/build/sm/MBlock.dyn_o rts/dist/build/sm/MarkWeak.dyn_o
rts/dist/build/sm/Sanity.dyn_o rts/dist/build/sm/Scav.dyn_o
rts/dist/build/sm/Storage.dyn_o rts/dist/build/sm/Sweep.dyn_o
rts/dist/build/eventlog/EventLog.dyn_o rts/dist/build/posix/GetEnv.dyn_o
rts/dist/build/posix/GetTime.dyn_o rts/dist/build/posix/Itimer.dyn_o
rts/dist/build/posix/OSMem.dyn_o rts/dist/build/posix/OSThreads.dyn_o
rts/dist/build/posix/Select.dyn_o rts/dist/build/posix/Signals.dyn_o
rts/dist/build/posix/TTY.dyn_o rts/dist/build/Apply.dyn_o
rts/dist/build/Exception.dyn_o rts/dist/build/HeapStackCheck.dyn_o
rts/dist/build/PrimOps.dyn_o rts/dist/build/StgMiscClosures.dyn_o
rts/dist/build/StgStartup.dyn_o rts/dist/build/StgStdThunks.dyn_o
rts/dist/build/Updates.dyn_o rts/dist/build/AutoApply.dyn_o -fPIC -dynamic
-H32m -O -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header
-Iincludes/dist-ghcconstants/header -Irts -Irts/dist/build -DCOMPILING_RTS
-this-package-key rts -optc-DNOSMP -dcmm-lint -i -irts -irts/dist/build
-irts/dist/build/autogen -Irts/dist/build -Irts/dist/build/autogen
-O2 -fno-use-rpaths -optl-Wl,-zorigin -o
rts/dist/build/libHSrts-ghc7.9.20140809.so
/usr/bin/ld: rts/dist/build/Adjustor.dyn_o: relocation R_MIPS_HI16 against
`__gnu_local_gp' can not be used when making a shared object; recompile with
-fPIC
rts/dist/build/Adjustor.dyn_o: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [rts/dist/build/libHSrts-ghc7.9.20140809.so] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [all] Error 2
After making this change (see #8857)
$ diff -Nru config.mk.in-orig config.mk.in
--- config.mk.in-orig 2014-08-11 04:39:24.257232224 +0000
+++ config.mk.in 2014-08-11 04:41:50.666057938 +0000
@@ -99,7 +99,8 @@
x86_64-unknown-mingw32 \
i386-unknown-mingw32 \
sparc-sun-solaris2 \
- sparc-unknown-linux
+ sparc-unknown-linux \
+ mipsel-unknown-linux
ifeq "$(SOLARIS_BROKEN_SHLD)" "YES"
NoSharedLibsPlatformList += i386-unknown-solaris2
and running
$ make distclean
$ ./configure
$ make
it failed with a different error:
"inplace/bin/ghc-stage1" -hisuf hi -osuf o -hcsuf hc -static -H32m -O
-this-package-key time_KUji6QoLFw0LtcZkg4b7t4 -hide-all-packages -i
-ilibraries/time/. -ilibraries/time/dist-install/build
-ilibraries/time/dist-install/build/autogen -Ilibraries/time/dist-install/build
-Ilibraries/time/dist-install/build/autogen -Ilibraries/time/include
-optP-DLANGUAGE_Rank2Types -optP-DLANGUAGE_DeriveDataTypeable
-optP-DLANGUAGE_StandaloneDeriving -optP-include
-optPlibraries/time/dist-install/build/autogen/cabal_macros.h -package-key
base_DiPQ1siqG3SBjHauL3L03p -package-key deeps_L0rJEVU1Zgn8x0Qs5aTOsU
-package-key oldlo_EJWcQwUgW2gEwNtIuJl2P8 -Wall -XHaskell2010 -XCPP
-XRank2Types -XDeriveDataTypeable -XStandaloneDeriving -O2 -no-user-package-db
-rtsopts -odir libraries/time/dist-install/build -hidir
libraries/time/dist-install/build -stubdir libraries/time/dist-install/build
-c libraries/time/./Data/Time/Clock/CTimeval.hs -o
libraries/time/dist-install/build/Data/Time/Clock/CTimeval.o
<command line>: unknown package: old-locale-1.0.0.6
make[1]: *** [libraries/time/dist-install/build/Data/Time/Clock/CTimeval.o]
Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [all] Error 2
‘libraries/old-locale’ is present in the tree and is not empty. Is it
necessary to run anything else after distclean? According to
‘MAKEHELP’, it is not needed, so I’m puzzled.
pgpGX8rwyqlMU.pgp
Description: PGP signature
_______________________________________________ ghc-devs mailing list [email protected] http://www.haskell.org/mailman/listinfo/ghc-devs
