diff --git a/lib/file_system/backends/fs_mac.ex b/lib/file_system/backends/fs_mac.ex
index a35324f94a7986f3cfed4bc4bdf4947a7134e5d8..7cc4232b24087f4189f1c62de329f8feb13d77d4 100644
--- a/lib/file_system/backends/fs_mac.ex
+++ b/lib/file_system/backends/fs_mac.ex
@@ -30,7 +30,14 @@ defmodule FileSystem.Backends.FSMac do
     exec_file = find_executable()
     unless File.exists?(exec_file) do
       Logger.info "Compiling executable file..."
-      cmd = "clang -framework CoreFoundation -framework CoreServices -Wno-deprecated-declarations c_src/mac/*.c -o #{exec_file}"
+      src_dir =
+        case Mix.Project.config[:app] do
+          :file_system ->
+            "."
+          _ ->
+            Mix.Project.deps_paths[:file_system]
+        end
+      cmd = "clang -framework CoreFoundation -framework CoreServices -Wno-deprecated-declarations #{src_dir}/c_src/mac/*.c -o #{exec_file}"
       if Mix.shell.cmd(cmd) > 0 do
         Logger.error "Compile executable file error, try to run `#{cmd}` manually."
         raise "compile backend error"