On a clean working copy :
In ObjectiveHaskell
```
clang: error: no such file or directory: '/Users/jon/Dropbox/Projects/ObjectiveHaskell/libextobjc/extobjc/EXTRuntimeExtensions.m'
clang: error: no input files
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
```
In PhotoUploader
```
ld: warning: could not create compact unwind for _ffi_call_unix64: does not use RBP or RSP based frame
ld: warning: could not create compact unwind for _ffi_call_unix64: does not use RBP or RSP based frame
Undefined symbols for architecture x86_64:
"_textzm0zi11zi2zi2_DataziTextziEncodingziError_strictDecode_closure", referenced from:
_sFus_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFuq_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH9_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH4_info in libHSaeson-0.6.0.2.a(Internal.o)
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_jstring1_srt in libHSaeson-0.6.0.2.a(Internal.o)
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_value1_srt in libHSaeson-0.6.0.2.a(Internal.o)
"_textzm0zi11zi2zi2_DataziTextziEncoding_zdwdecodeUtf8With_closure", referenced from:
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_jstring1_srt in libHSaeson-0.6.0.2.a(Internal.o)
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_value1_srt in libHSaeson-0.6.0.2.a(Internal.o)
"_textzm0zi11zi2zi2_DataziTextziLazzyziInternal_Empty_closure", referenced from:
_s9fF_info in User.o
_s9g4_info in User.o
_s9gt_info in User.o
_s9gS_info in User.o
"_textzm0zi11zi2zi2_DataziText_zdfShowTextzuzdcshow_closure", referenced from:
_r9df_srt in User.o
_r9dl_srt in User.o
_r9dr_srt in User.o
_r9dw_srt in User.o
_r9dB_srt in User.o
_r9dG_srt in User.o
"_textzm0zi11zi2zi2_DataziTextziInternal_Text_con_info", referenced from:
_s4Nr_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4NB_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4Rs_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4RK_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4Sc_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4Sq_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4ix_info in libHSaeson-0.6.0.2.a(Internal.o)
...
"_textzm0zi11zi2zi2_DataziText_zdfShowTextzuzdcshow_info", referenced from:
_r9df_info in User.o
_r9dl_info in User.o
_r9dr_info in User.o
_r9dw_info in User.o
_r9dB_info in User.o
_r9dG_info in User.o
"_textzm0zi11zi2zi2_DataziTextziEncoding_zdwdecodeUtf8With_info", referenced from:
_sFus_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFuq_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH9_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH4_info in libHSaeson-0.6.0.2.a(Internal.o)
"_textzm0zi11zi2zi2_DataziTextziLazzyziEncoding_encodeUtf8_info", referenced from:
_s3om_info in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziText_unpackCStringzh_closure", referenced from:
_r9d9_srt in User.o
_r9da_srt in User.o
_r9db_srt in User.o
_r9dc_srt in User.o
_r9dd_srt in User.o
_r9de_srt in User.o
"_textzm0zi11zi2zi2_DataziTextziLazzyziEncoding_encodeUtf8_closure", referenced from:
_ObjectiveHaskellziNSString_toNSString_srt in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziText_unpackCStringzh_info", referenced from:
_r9d9_info in User.o
_r9da_info in User.o
_r9db_info in User.o
_r9dc_info in User.o
_r9dd_info in User.o
_r9de_info in User.o
"_textzm0zi11zi2zi2_DataziTextziLazzyziInternal_Chunk_con_info", referenced from:
_s9fF_info in User.o
_s9g4_info in User.o
_s9gt_info in User.o
_s9gS_info in User.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
That's really weird, because ObjectiveHaskell explicitly links the Data.Text library.
Does running `cabal install text` say it's already installed and/or fix the linking errors?
Looks like the library was linking against a (slightly) out-of-date version of Data.Text. Would you mind giving the latest master a shot?
EDIT: Ugh, nevermind, getting other errors now. Damnit…
That's ok ! :)
I had already this version of data.text.
With the master, the problem looks a bit different, is there something with the version of aeson ?
```
ld: warning: could not create compact unwind for _ffi_call_unix64: does not use RBP or RSP based frame
ld: warning: could not create compact unwind for _ffi_call_unix64: does not use RBP or RSP based frame
Undefined symbols for architecture x86_64:
"_textzm0zi11zi2zi2_DataziTextziEncodingziError_strictDecode_closure", referenced from:
_sFus_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFuq_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH9_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH4_info in libHSaeson-0.6.0.2.a(Internal.o)
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_jstring1_srt in libHSaeson-0.6.0.2.a(Internal.o)
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_value1_srt in libHSaeson-0.6.0.2.a(Internal.o)
"_textzm0zi11zi2zi2_DataziTextziEncoding_zdwdecodeUtf8With_closure", referenced from:
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_jstring1_srt in libHSaeson-0.6.0.2.a(Internal.o)
_aesonzm0zi6zi0zi2_DataziAesonziParserziInternal_value1_srt in libHSaeson-0.6.0.2.a(Internal.o)
"_textzm0zi11zi2zi2_DataziTextziLazzyziInternal_Empty_closure", referenced from:
_s6G4_info in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziTextziArray_Array_con_info", referenced from:
_s6Gg_info in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziText_zdfShowTextzuzdcshow_closure", referenced from:
_r9aa_srt in User.o
_r9ag_srt in User.o
_r9am_srt in User.o
_r9ar_srt in User.o
_r9aw_srt in User.o
_r9aB_srt in User.o
"_textzm0zi11zi2zi2_DataziTextziInternal_Text_con_info", referenced from:
_s4Nr_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4NB_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4Rs_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4RK_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4Sc_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4Sq_info in libHSaeson-0.6.0.2.a(Internal.o)
_s4ix_info in libHSaeson-0.6.0.2.a(Internal.o)
...
"_textzm0zi11zi2zi2_DataziText_zdfShowTextzuzdcshow_info", referenced from:
_r9aa_info in User.o
_r9ag_info in User.o
_r9am_info in User.o
_r9ar_info in User.o
_r9aw_info in User.o
_r9aB_info in User.o
"_textzm0zi11zi2zi2_DataziTextziArray_MArray_con_info", referenced from:
_s6GO_info in libObjectiveHaskell Mac.a(NSString.o)
_s6GQ_info in libObjectiveHaskell Mac.a(NSString.o)
_s6Ge_info in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziTextziEncoding_zdwdecodeUtf8With_info", referenced from:
_sFus_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFuq_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH9_info in libHSaeson-0.6.0.2.a(Internal.o)
_sFH4_info in libHSaeson-0.6.0.2.a(Internal.o)
"_textzm0zi11zi2zi2_DataziTextziLazzyziEncoding_encodeUtf8_info", referenced from:
_s6rK_info in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziTextziInternal_safe_closure", referenced from:
_s9vw_info in User.o
_s9vk_info in User.o
_s9v8_info in User.o
"_textzm0zi11zi2zi2_DataziText_unpackCStringzh_closure", referenced from:
_r9a4_srt in User.o
_r9a5_srt in User.o
_r9a6_srt in User.o
_r9a7_srt in User.o
_r9a8_srt in User.o
_r9a9_srt in User.o
"_textzm0zi11zi2zi2_DataziTextziLazzyziEncoding_encodeUtf8_closure", referenced from:
_ObjectiveHaskellziNSString_toNSString_srt in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziTextziLazzyziInternal_defaultChunkSizze_closure", referenced from:
_r6rx_info in libObjectiveHaskell Mac.a(NSString.o)
"_textzm0zi11zi2zi2_DataziText_unpackCStringzh_info", referenced from:
_r9a4_info in User.o
_r9a5_info in User.o
_r9a6_info in User.o
_r9a7_info in User.o
_r9a8_info in User.o
_r9a9_info in User.o
"_textzm0zi11zi2zi2_DataziTextziLazzyziInternal_Chunk_con_info", referenced from:
_s6Gn_info in libObjectiveHaskell Mac.a(NSString.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
I think Aeson is fine – we're using the same version.
I have one last idea. Can you try adding `-all_load` to the linker flags of the ObjectiveHaskell static library target? I'm wondering if some of the Data.Text code isn't being copied into the library.
Hi guys,
I had this same issue just now — I fixed it by updating ObjectiveHaskell's Other Linker Flags to point to the latest versions of text and bytestring I had installed (which you can check with ghc-pkg list), which ended up being bytestring-0.10.0.0 and text-0.11.2.3, which I guess is what my version of Aeson was built against (and likewise for PhotoUploader, had to update to vector-0.10.0.1 and hashable-1.1.2.5).
I imagine the issue is that Data.Aeson specifies a broad dependency on those libraries in its cabal file, which ends up pulling down a different (later) version depending on when you cabal install it.
Tricky! :panda_face: