(追記)
色々やっている先人を見つけてしまいました。
でも、ここまでの労力ももったいないのでGitHubに上げて供養することにした。良い人にForkされるんだよ(違
以下は備忘録です-----------------------------------------
・設定ファイルの追加
Box Sync が".encfs6.xml" を同期してくれないので、設定ファイルを変更する。
Encdroid multi cloudなら以下のアップデートにあるようにencfs6.xmlを追加。
02/09/13
- if your server don't send hidden file, you can rename the file ".encfs6.xml" to "encfs6.xml" (without the starting dot). this version now support this fix.
具体的には,FileUtils.cpp の ConfigFileMapping[] に新しい設定ファイル名を追加して再コンパイルするだけだが。
-----------------------------------
encfs4winのNEWSに
・2013-02-18 No changes but currently compile under Visual C++. Hoping somebody could contribute easier.
と書かれているので 実際にやってみようかと。
環境は手元のWindows7 + Visual C++ 2010 Express
基本は付属ドキュメントのReadMe_Windows.txtに書かれている通りにしてます。
作業フォルダは c:\workです。
・Boostのインストール
boost_1_53_0.7zのダウンロード
http://sourceforge.net/projects/boost/files/boost/1.53.0/
ビルド方法はココに書いている通り
http://www.boost.org/doc/libs/1_53_0/more/getting_started/windows.html
All Programs > Microsoft Visual Studio 2010 Express > Visual Studio Command Prompt (2010)
>cd \work\boost_1_53_0
>bootstrap.bat
>.\b2
#boost_1_54_0 でもコンパイルは可能
#boost_1_55_0はコンパイルできませんでした。(b2でエラー)
#http://kowaimononantenai.blogspot.jp/2013/11/winodwsboost.html
# b2.exe toolset=msvc-10.0 でコンパイル可能
・OpenSSLのインストール
http://slproweb.com/products/Win32OpenSSL.htmlReadMe_Windows.txtとバージョン違うけど,Win32OpenSSL-1_0_1j.exe をダウンロード
( Visual C++ 2008 Redistributables が入ってなかったら怒られるのでその時にはダウンロード&インストール )
ReadMe_Windows.txt だと設定を変えているけど,最後の実行時にLIBEAY32.DLL が無いエラーが出るので、今回は標準インストールで実施。インストールパスとライブラリの場所は以下の画像参照。
・RLogのインストール
cd c:\work
tar -zxvf rlog\rlog-1.4.tar.gz
cd c:\work\rlog
patch -p0 < ..\rlog\rlog-1.4.diff
patch -p0 < ..\rlog\rlog-1.4-win.diff
patch -p0 < ..\rlog\rlog-1.4-win2.diff
ソリューションファイルを開いてビルド c:\work\rlog-1.4\win32\rlog.sln
・fuse4winのインストール
とりあえずCMakeのWindows用バイナリをダウンロードしてインストール
http://www.cmake.org/download/
そして実行。バージョンは聞かれるので開発環境と合わせておきましょう。
ソリューションファイルは以下のフォルダにCMakeが作るので,それをビルド。
C:\work\fuse4win-070d3a2e43de\build
・encfsのインストール
以下のソリューションファイルを開く。c:\work\encfs\msvc\encfs.sln
openSSLの場所を標準に変えてるので修正(インクルードディレクトリとライブラリ ディレクトリ)
../../OpenSSL-Win32/incluse→ C:\OpenSSL-Win32\include
../../OpenSSL-Win32/lib/VC→ C:\OpenSSL-Win32\lib\VC
設定箇所は以下の画像参照。
・ソースファイルの修正
ReadMe_Windows.txtによると、これで動くはずなのだが,実際にやってみると shared_ptrがあいまいと言われてコンパイルが通らない。ソースファイルの shared_ptr を全部 boost::shared_ptr に変更。
StreamNameIO.cpp
SSL_Cipher.cpp
NullCipher.cpp
nameio.cpp
main.cpp
macfileio.cpp
fileutils.cpp
filenode.cpp
encfsctrl.cpp
encfs.cpp
dirnode.cpp
cipher.cpp
ここまででコンパイルは完了。
・RLog.dllのコピー
実行時にRLog.dllが無いと言われるので,C:\work\rlog-1.4\win32\Release と C:\work\rlog-1.4\win32\Debug の rlog.dll をコンパイル先のReleaseとDebugフォルダにそれぞれ突っ込む。
これで実行まで確認。