我正在尝试在beaglebone的黑色rev c(带debian的喘息手臂)上安装cabal 1.20。它在cabal install cabal-install后期失败,出现以下错误:
[75 of 76] Compiling Distribution.Client.Sandbox ( Distribution/Client/Sandbox.hs, dist/build/cabal/cabal-tmp/Distribution/Client/Sandbox.o )
[76 of 76] Compiling Main ( Main.hs, dist/build/cabal/cabal-tmp/Main.o )
Linking dist/build/cabal/cabal ...
/usr/lib/ghc/libHSrts.a(OSThreads.o): In function `getNumberOfProcessors':
(.text+0x8): multiple definition of `getNumberOfProcessors'
dist/build/cabal/cabal-tmp/cbits/getnumcores.o:getnumcores.c:(.text+0x0): first defined here
collect2: ld returned 1 exit status
cabal: Error: some packages failed to install:
cabal-install-1.20.0.3 failed during the building phase. The exception was:
ExitFailure 1浏览一下haskell运行时库,我发现getNumberOfProcesses已经定义好了(这可以解释冲突):
root@doghouse:/# nm /usr/lib/ghc/libHSrts.a | grep -B 3 Processors
nm: Disassembler.o: no symbols
nm: FrontPanel.o: no symbols
nm: LdvProfile.o: no symbols
U getAllocations
U getFullProgArgv
U getGCStats
U getNumberOfProcessors
nm: OldARMAtomic.o: no symbols
nm: Papi.o: no symbols
nm: Profiling.o: no symbols
nm: RetainerProfile.o: no symbols
nm: RetainerSet.o: no symbols
nm: RtsDllMain.o: no symbols
nm: Trace.o: no symbols
nm: 0Hash.o: no symbols
nm: 0Unpack.o: no symbols
nm: Dist.o: no symbols
nm: Global.o: no symbols
nm: GranSim.o: no symbols
nm: HLComms.o: no symbols
nm: LLComms.o: no symbols
nm: Pack.o: no symbols
nm: ParInit.o: no symbols
nm: ParTicky.o: no symbols
nm: Parallel.o: no symbols
nm: ParallelDebug.o: no symbols
nm: RBH.o: no symbols
nm: Sanity.o: no symbols
nm: EventLog.o: no symbols
--
OSThreads.o:
00000000 T forkOS_createThread
00000008 T getNumberOfProcessors发布于 2014-10-29 14:13:31
我在运行Raspbian的Raspberry Pi上遇到了类似的问题。
为了解决这个问题,我打了cabal-install.cabal补丁,将-DHAS_GET_NUMBER_OF_PROCESSORS作为mentioned here添加到cc-options中。
https://stackoverflow.com/questions/24847576
复制相似问题