adityah,
if the library is cabalized, do cabal configure --extra-lib-dirs=$PATHtoArchive and assuming you have the right foreign import code, things should work fine. (or the equivalient .cabal file extra lib dirs field with can be a relative path within the package). then cabal repl should also presumably work. if you then wanna use ghci directly, try invoking cabal repl with the verbose flag (-v) to see how its setting up ghci.
if your ffi bindings dont work in cabal repl, thats probably valid a bug report. (at least on some platforms)