2009/4/10 Ian Lynagh <[email protected]>:
> Oh, OK. What does "ghc-pkg list" say?
mbolingbr...@mb566 ~
$ ghc-pkg list
/opt/local/lib/ghc-6.10.1/./package.conf:
Cabal-1.6.0.1, HTTP-3001.1.4, HUnit-1.2.0.3, QuickCheck-1.2.0.0,
array-0.2.0.0, base-3.0.3.0, base-4.0.0.0, bytestring-0.9.1.4,
category-extras-0.53.5, containers-0.2.0.0, directory-1.0.0.2,
(dph-base-0.3), (dph-par-0.3), (dph-prim-interface-0.3),
(dph-prim-par-0.3), (dph-prim-seq-0.3), (dph-seq-0.3),
editline-0.2.1.0, filepath-1.1.0.1, (ghc-6.10.1), ghc-prim-0.1.0.0,
haddock-2.3.0, hashtables-0.1, haskell-src-1.0.1.3,
haskell98-1.0.1.0, hpc-0.5.0.2, html-1.0.1.2, integer-0.1.0.0,
mtl-1.1.0.2, network-2.2.0.1, old-locale-1.0.0.1, old-time-1.0.0.1,
packedstring-0.1.0.1, parallel-1.1.0.0, parsec-2.1.0.1,
parsec-3.0.0, pretty-1.0.1.0, process-1.0.1.0, random-1.0.0.1,
regex-base-0.72.0.2, regex-compat-0.71.0.1, regex-posix-0.72.0.3,
rts-1.0, stm-2.1.1.2, syb-0.1.0.0, template-haskell-2.3.0.0,
time-1.1.2.2, unix-2.3.1.0, xhtml-3000.2.0.1, zlib-0.5.0.0
/Users/mbolingbroke/.ghc/i386-darwin-6.10.1/package.conf:
Agda-2.1.3, Cabal-1.6.0.1, Cabal-1.6.0.2, FindBin-0.0.2,
HStringTemplate-0.4.3, QuickCheck-2.1.0.1, ansi-terminal-0.5.0,
ansi-wl-pprint-0.5.0, binary-0.4.4, category-extras-0.53.5,
cmonad-0.1.1.1, extensible-exceptions-0.1.1.0, haskeline-0.3.2,
hscolour-1.10.1, parsec-3.0.0, process-1.0.1.1, rosezipper-0.1,
split-0.1.1, syb-with-class-0.5.1, tagsoup-0.6, terminfo-0.3.0.1,
test-framework-0.2.0, test-framework-hunit-0.2.0,
test-framework-quickcheck-0.2.0, test-framework-quickcheck2-0.2.0,
test-framework-quickcheck2-0.2.1, utf8-string-0.3.4, vector-0.2
> And does this work?:
>
> cat <<EOF > foo.hs
> import System.Environment; import System.Cmd; import System.Exit
> main = getArgs >>= rawSystem "/usr/bin/ghc" >>= exitWith
> EOF
> ghc -O -c foo.hs -o foo.o
> ghc -o foo -O foo.o
mbolingbr...@mb566 ~
$ cd Junk/
mbolingbr...@mb566 ~/Junk
$ cat <<EOF > foo.hs
> import System.Environment; import System.Cmd; import System.Exit
> main = getArgs >>= rawSystem "/usr/bin/ghc" >>= exitWith
> EOF
mbolingbr...@mb566 ~/Junk
$ ghc -O -c foo.hs -o foo.o
mbolingbr...@mb566 ~/Junk
$ ghc -o foo -O foo.o
Undefined symbols:
"_processzm1zi0zi1zi1_SystemziProcessziInternals_Inherit_closure",
referenced from:
_s1bA_info in foo.o
_s1bA_info in foo.o
_s1bA_info in foo.o
"_processzm1zi0zi1zi1_SystemziProcessziInternals_CreateProcess_con_info",
referenced from:
_s1bA_info in foo.o
"_processzm1zi0zi1zi1_SystemziProcess_a25_info", referenced from:
_s1bA_info in foo.o
"_processzm1zi0zi1zi1_SystemziProcessziInternals_RawCommand_con_info",
referenced from:
_s1bA_info in foo.o
"___stginit_processzm1zi0zi1zi1_SystemziCmd_", referenced from:
___stginit_Main_ in foo.o
"_processzm1zi0zi1zi1_SystemziProcess_a25_closure", referenced from:
_Main_a_srt in foo.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
> If the last step fails, what does this say?:
>
> ghc -o foo -O foo.o -v
mbolingbr...@mb566 ~/Junk
$ ghc -o foo -O foo.o -v
Glasgow Haskell Compiler, Version 6.10.1, for Haskell 98, stage 2
booted by GHC version 6.8.2
Using package config file: /opt/local/lib/ghc-6.10.1/./package.conf
Using package config file:
/Users/mbolingbroke/.ghc/i386-darwin-6.10.1/package.conf
hiding package base-3.0.3.0 to avoid conflict with later version base-4.0.0.0
hiding package process-1.0.1.0 to avoid conflict with later version
process-1.0.1.1
hiding package parsec-2.1.0.1 to avoid conflict with later version parsec-3.0.0
hiding package QuickCheck-1.2.0.0 to avoid conflict with later version
QuickCheck-2.1.0.1
hiding package Cabal-1.6.0.1 to avoid conflict with later version Cabal-1.6.0.2
hiding package test-framework-quickcheck2-0.2.0 to avoid conflict with
later version test-framework-quickcheck2-0.2.1
wired-in package ghc-prim mapped to ghc-prim-0.1.0.0
wired-in package integer mapped to integer-0.1.0.0
wired-in package base mapped to base-4.0.0.0
wired-in package rts mapped to rts-1.0
wired-in package haskell98 mapped to haskell98-1.0.1.0
wired-in package syb mapped to syb-0.1.0.0
wired-in package template-haskell mapped to template-haskell-2.3.0.0
wired-in package dph-seq mapped to dph-seq-0.3
wired-in package dph-par mapped to dph-par-0.3
Hsc static flags: -static
*** Linker:
gcc -v -o foo -DDONT_WANT_WIN32_DLL_SUPPORT foo.o -L/opt/local/lib
-L/opt/local/lib/ghc-6.10.1/haskell98-1.0.1.0
-L/opt/local/lib/ghc-6.10.1/random-1.0.0.1
-L/opt/local/lib/ghc-6.10.1/process-1.0.1.0
-L/opt/local/lib/ghc-6.10.1/directory-1.0.0.2
-L/opt/local/lib/ghc-6.10.1/unix-2.3.1.0
-L/opt/local/lib/ghc-6.10.1/old-time-1.0.0.1
-L/opt/local/lib/ghc-6.10.1/old-locale-1.0.0.1
-L/opt/local/lib/ghc-6.10.1/filepath-1.1.0.1
-L/opt/local/lib/ghc-6.10.1/array-0.2.0.0
-L/opt/local/lib/ghc-6.10.1/syb-0.1.0.0
-L/opt/local/lib/ghc-6.10.1/base-4.0.0.0
-L/opt/local/lib/ghc-6.10.1/integer-0.1.0.0
-L/opt/local/lib/ghc-6.10.1/ghc-prim-0.1.0.0
-L/opt/local/lib/ghc-6.10.1 -L/opt/local/lib -lHShaskell98-1.0.1.0
-lHSrandom-1.0.0.1 -lHSprocess-1.0.1.0 -lHSdirectory-1.0.0.2
-lHSunix-2.3.1.0 -ldl -lHSold-time-1.0.0.1 -lHSold-locale-1.0.0.1
-lHSfilepath-1.1.0.1 -lHSarray-0.2.0.0 -lHSsyb-0.1.0.0
-lHSbase-4.0.0.0 -lHSinteger-0.1.0.0 -lHSghc-prim-0.1.0.0 -lHSrts -lm
-lffi -lgmp -ldl -u _ghczmprim_GHCziTypes_Izh_static_info -u
_ghczmprim_GHCziTypes_Czh_static_info -u
_ghczmprim_GHCziTypes_Fzh_static_info -u
_ghczmprim_GHCziTypes_Dzh_static_info -u
_base_GHCziPtr_Ptr_static_info -u _base_GHCziWord_Wzh_static_info -u
_base_GHCziInt_I8zh_static_info -u _base_GHCziInt_I16zh_static_info -u
_base_GHCziInt_I32zh_static_info -u _base_GHCziInt_I64zh_static_info
-u _base_GHCziWord_W8zh_static_info -u
_base_GHCziWord_W16zh_static_info -u _base_GHCziWord_W32zh_static_info
-u _base_GHCziWord_W64zh_static_info -u
_base_GHCziStable_StablePtr_static_info -u
_ghczmprim_GHCziTypes_Izh_con_info -u
_ghczmprim_GHCziTypes_Czh_con_info -u
_ghczmprim_GHCziTypes_Fzh_con_info -u
_ghczmprim_GHCziTypes_Dzh_con_info -u _base_GHCziPtr_Ptr_con_info -u
_base_GHCziPtr_FunPtr_con_info -u _base_GHCziStable_StablePtr_con_info
-u _ghczmprim_GHCziBool_False_closure -u
_ghczmprim_GHCziBool_True_closure -u
_base_GHCziPack_unpackCString_closure -u
_base_GHCziIOBase_stackOverflow_closure -u
_base_GHCziIOBase_heapOverflow_closure -u
_base_ControlziExceptionziBase_nonTermination_closure -u
_base_GHCziIOBase_blockedOnDeadMVar_closure -u
_base_GHCziIOBase_blockedIndefinitely_closure -u
_base_ControlziExceptionziBase_nestedAtomically_closure -u
_base_GHCziWeak_runFinalizzerBatch_closure -u
_base_GHCziTopHandler_runIO_closure -u
_base_GHCziTopHandler_runNonIO_closure -u
_base_GHCziConc_ensureIOManagerIsRunning_closure
-Wl,-search_paths_first
Using built-in specs.
Target: i686-apple-darwin9
Configured with: /var/tmp/gcc/gcc-5490~1/src/configure
--disable-checking -enable-werror --prefix=/usr --mandir=/share/man
--enable-languages=c,objc,c++,obj-c++
--program-transform-name=/^[cg][^.-]*$/s/$/-4.0/
--with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib
--build=i686-apple-darwin9 --with-arch=apple --with-tune=generic
--host=i686-apple-darwin9 --target=i686-apple-darwin9
Thread model: posix
gcc version 4.0.1 (Apple Inc. build 5490)
/usr/libexec/gcc/i686-apple-darwin9/4.0.1/collect2 -dynamic -arch
i386 -macosx_version_min 10.5.6 -weak_reference_mismatches non-weak -u
_ghczmprim_GHCziTypes_Izh_static_info -u
_ghczmprim_GHCziTypes_Czh_static_info -u
_ghczmprim_GHCziTypes_Fzh_static_info -u
_ghczmprim_GHCziTypes_Dzh_static_info -u
_base_GHCziPtr_Ptr_static_info -u _base_GHCziWord_Wzh_static_info -u
_base_GHCziInt_I8zh_static_info -u _base_GHCziInt_I16zh_static_info -u
_base_GHCziInt_I32zh_static_info -u _base_GHCziInt_I64zh_static_info
-u _base_GHCziWord_W8zh_static_info -u
_base_GHCziWord_W16zh_static_info -u _base_GHCziWord_W32zh_static_info
-u _base_GHCziWord_W64zh_static_info -u
_base_GHCziStable_StablePtr_static_info -u
_ghczmprim_GHCziTypes_Izh_con_info -u
_ghczmprim_GHCziTypes_Czh_con_info -u
_ghczmprim_GHCziTypes_Fzh_con_info -u
_ghczmprim_GHCziTypes_Dzh_con_info -u _base_GHCziPtr_Ptr_con_info -u
_base_GHCziPtr_FunPtr_con_info -u _base_GHCziStable_StablePtr_con_info
-u _ghczmprim_GHCziBool_False_closure -u
_ghczmprim_GHCziBool_True_closure -u
_base_GHCziPack_unpackCString_closure -u
_base_GHCziIOBase_stackOverflow_closure -u
_base_GHCziIOBase_heapOverflow_closure -u
_base_ControlziExceptionziBase_nonTermination_closure -u
_base_GHCziIOBase_blockedOnDeadMVar_closure -u
_base_GHCziIOBase_blockedIndefinitely_closure -u
_base_ControlziExceptionziBase_nestedAtomically_closure -u
_base_GHCziWeak_runFinalizzerBatch_closure -u
_base_GHCziTopHandler_runIO_closure -u
_base_GHCziTopHandler_runNonIO_closure -u
_base_GHCziConc_ensureIOManagerIsRunning_closure -o foo -lcrt1.10.5.o
-L/opt/local/lib -L/opt/local/lib/ghc-6.10.1/haskell98-1.0.1.0
-L/opt/local/lib/ghc-6.10.1/random-1.0.0.1
-L/opt/local/lib/ghc-6.10.1/process-1.0.1.0
-L/opt/local/lib/ghc-6.10.1/directory-1.0.0.2
-L/opt/local/lib/ghc-6.10.1/unix-2.3.1.0
-L/opt/local/lib/ghc-6.10.1/old-time-1.0.0.1
-L/opt/local/lib/ghc-6.10.1/old-locale-1.0.0.1
-L/opt/local/lib/ghc-6.10.1/filepath-1.1.0.1
-L/opt/local/lib/ghc-6.10.1/array-0.2.0.0
-L/opt/local/lib/ghc-6.10.1/syb-0.1.0.0
-L/opt/local/lib/ghc-6.10.1/base-4.0.0.0
-L/opt/local/lib/ghc-6.10.1/integer-0.1.0.0
-L/opt/local/lib/ghc-6.10.1/ghc-prim-0.1.0.0
-L/opt/local/lib/ghc-6.10.1 -L/opt/local/lib
-L/usr/lib/i686-apple-darwin9/4.0.1
-L/usr/lib/gcc/i686-apple-darwin9/4.0.1
-L/usr/lib/gcc/i686-apple-darwin9/4.0.1
-L/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../i686-apple-darwin9/4.0.1
-L/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../.. foo.o
-lHShaskell98-1.0.1.0 -lHSrandom-1.0.0.1 -lHSprocess-1.0.1.0
-lHSdirectory-1.0.0.2 -lHSunix-2.3.1.0 -ldl -lHSold-time-1.0.0.1
-lHSold-locale-1.0.0.1 -lHSfilepath-1.1.0.1 -lHSarray-0.2.0.0
-lHSsyb-0.1.0.0 -lHSbase-4.0.0.0 -lHSinteger-0.1.0.0
-lHSghc-prim-0.1.0.0 -lHSrts -lm -lffi -lgmp -ldl -search_paths_first
-lgcc_s.10.5 -lgcc -lSystem
Undefined symbols:
"_processzm1zi0zi1zi1_SystemziProcessziInternals_Inherit_closure",
referenced from:
_s1bA_info in foo.o
_s1bA_info in foo.o
_s1bA_info in foo.o
"_processzm1zi0zi1zi1_SystemziProcessziInternals_CreateProcess_con_info",
referenced from:
_s1bA_info in foo.o
"_processzm1zi0zi1zi1_SystemziProcess_a25_info", referenced from:
_s1bA_info in foo.o
"_processzm1zi0zi1zi1_SystemziProcessziInternals_RawCommand_con_info",
referenced from:
_s1bA_info in foo.o
"___stginit_processzm1zi0zi1zi1_SystemziCmd_", referenced from:
___stginit_Main_ in foo.o
"_processzm1zi0zi1zi1_SystemziProcess_a25_closure", referenced from:
_Main_a_srt in foo.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
*** Deleting temp files:
Deleting:
*** Deleting temp dirs:
Deleting:
Hope that helps,
Max
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc