Hi,
I hope this post helps other Mac OS X 10.9.4 users to enable KeeChallenge plugin usage on OS X. To get the KeeChallenge to work on OS X you need to follow the OP's guide and create .config file etc. The problem comes with the
libykpers because it is build only for x86_64 and thereof cannot work with Mono 32-bit version. The best solution was to build universal version of the
libykpers.
Code:
<dllmap dll="libykpers-1-1.dll" target="libykpers-1.1.dylib" />
Prepearing libykpers buildBefore begining
libykpers build process, you need to have
Home brew installed and then install following dependencies.
Code:
brew install autoconf automake libtool pkg-config help2man asciidoc
To prevent errors from
a2x (asciidoc) you need to do following (because
a2x cannot access "XML_CATALOG_FILES" environment variable set for asciidoc,
read more)
Code:
sudo mkdir /etc/xml
sudo ln -s /usr/local/etc/xml/catalog /etc/xml/catalog
Create some folders to keep your machine cleaner.
Code:
cd ~/
mkdir workspace
cd workspace/
mkdir Yubico
cd Yubico/
Building libyubikey (yubico-c)Libykpers is dependent of
libyubikey and thereof we need to build it first, we are building universal build so that it will work in both 32 and 64 bit environments.
Code:
cd ~/worspace/Yubikey/
git clone https://github.com/Yubico/yubico-c.git
cd yubico-c/
autoreconf --install
./configure CC="gcc -arch i386 -arch x86_64" \
CXX="g++ -arch i386 -arch x86_64" \
CPP="gcc -E" CXXCPP="g++ -E"
make check
make install
#Clean up
make clean
To check that
libyubikey is installed correctly, type:
Code:
ls -l /usr/local/lib
...and you should see
libyubikey.dylib in the file list.
Building libykpers (yubikey-personalization)If you got the
libyubikey successfully build, you can start building the actually needed library
libykpers. We are making universal build of this library as well.
Code:
cd ~/workspace/Yubikey/
git clone https://github.com/Yubico/yubikey-personalization.git
cd yubikey-personalization/
autoreconf --install
./configure CC="gcc -arch i386 -arch x86_64" \
CXX="g++ -arch i386 -arch x86_64" \
CPP="gcc -E" CXXCPP="g++ -E" \
--with-libyubikey-prefix=/usr/local
make check
make install
#Clean up
make clean
To check that
libykpers is installed correctly, type:
Code:
ls -l /usr/local/lib
...and you should see
libykpers-1.1.dylib in the file list. That is the library which KeeChallenge plugin is needing.
To make sure that is it universal, type:
Code:
lipo -info /usr/local/lib/libykpers-1.1.dylib
#And you should get this output
Architectures in the fat file: /usr/local/lib/libykpers-1.1.dylib are: i386 x86_64
TestingNow you should be able to run KeeChallenge plugin in Mac OS X 10.9.4. If you cannot get it working you can run KeePass from shell and use Mono logging mode to get more information.
Code:
cd /Applications/KeePass2.23.app/Contents/MacOS/
MONO_LOG_LEVEL=debug mono KeePass.exe
Now try to use KeeChallenge plugin and you get the log information in to console. Those should help you to resolve the possible issues.
*******
I hope this helps others as well, I got my KeeChallenge working now on Mac OS X 10.9.4 and I'm able to share same KeePass db through private git repository to my Windows machine.