Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Compiling Evolution-MAPI from source (no ebuilds)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
kshade
n00b
n00b


Joined: 13 Jan 2004
Posts: 60
Location: Germany

PostPosted: Sun Mar 29, 2009 4:43 am    Post subject: Compiling Evolution-MAPI from source (no ebuilds) Reply with quote

I don't have the necessary ebuilds but a small guide for compiling & installing it by hand. It will go into /usr/local and therefore not collide with portage-installed packages. Oh, and have a look at the Gentoo bugzilla entry for evolution-mapi.

First of all we need the latest release of Samba 4. It's a dependency for libmapi which we also need because it's the foundation for the Evolution-MAPI plug-in.

Download these three and unpack them. First we need Samba 4 compiled, so go to the source4 directory inside your unpacked Samba distribution and run the usual build commands (./configure && make && su -c "make install" or whatever). Now you should have a fresh Samba 4 install inside of /usr/local/samba/.

Next step ist building libmapi, which is a little harder since you have to tell it where it can find the Samba 4 libs it needs. ./configure --with-samba=/usr/local/samba/ does the trick though and you can make and make install as usual.

Last package is the plug-in. I spend way too much time trying to figure out how to configure it.
Code:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig/:/usr/local/samba/lib/pkgconfig/ ./configure

is the way to go.


Don't fire up Evolution yet, I had to make a couple of symlinks before the plug-in worked:
Code:
ln -s /usr/local/samba/lib/libldb.so /usr/local/samba/lib/libldb.so.0
ln -s /usr/local/samba/lib/libndr.so /usr/local/samba/lib/libndr.so.0
ln -s /usr/local/samba/lib/libsamba-hostconfig.so /usr/local/samba/lib/libsamba-hostconfig.so.0

Now, if you want to run Evolution, you have to tell it where some of the libs are, so call it with
Code:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/samba/lib/ evolution

Let me know if it works. I was able to create a new account in Evolution, log in with my credentials and then... nothing. No folder list. The problem seems to be with my workplaces setup which is messed up right now though, so maybe it will work for you.
_________________
Get an operating system!
Back to top
View user's profile Send private message
gruftie
Apprentice
Apprentice


Joined: 24 Sep 2002
Posts: 182

PostPosted: Sun Mar 29, 2009 2:24 pm    Post subject: Reply with quote

i too compiled all the stuff last friday to be able to use evolution with our newly installed exchange server 2007.
i did end up at the same point: login is successful but at the console i get an error saying that it is unable to get the folder list.
i ran mapitest pointing it at the database inside my .evolution directory and it runs with only 2 (minor) errors out of 78 tests (iirc, as i'm not at work on sunday :wink: )
so i think the mapi-connection is correct and i didn't get any further. i will post the complete (or relevant part of) console-log on monday (and i don't like mondays :roll: ) when i'm at work. i would really like to get this working, as it's a great improvement and i can go on using linux at work 8)

daniel
Back to top
View user's profile Send private message
gruftie
Apprentice
Apprentice


Joined: 24 Sep 2002
Posts: 182

PostPosted: Mon Mar 30, 2009 6:39 am    Post subject: Reply with quote

good morning :)

and here we go.
starting evolution, i get the following on the console:
Code:
 ~ $ evolution

Type EPluginMono registered from the mono-plugin-loader
** (evolution:3788): DEBUG: mailto URL command: evolution %s
** (evolution:3788): DEBUG: mailto URL program: evolution
** (evolution:3788): DEBUG: Loading Exchange MAPI Plugin

** (evolution:3788): DEBUG: MAPI listener is constructed with 1 listed MAPI accounts
libexchangemapi-Message: exchange-mapi-connection.c:130: exchange_mapi_connection_new: lock(connect_lock)

exchange-mapi-connection.c:75: Entering mapi_profile_load
Loading profile dpaessler@cbs.local
exchange-mapi-connection.c:116: Leaving mapi_profile_load libexchangemapi-Message: exchange-mapi-connection.c:133: exchange_mapi_connection_new: unlock(connect_lock)
libexchangemapi-Message:
exchange-mapi-connection.c:138: exchange_mapi_connection_new: Connected

exchange-mapi-connection.c:2666: Entering exchange_mapi_get_folders_list libexchangemapi-Message: exchange-mapi-connection.c:2668: exchange_mapi_get_folders_list: lock(connect_lock)
    OpenMsgStore             : MAPI_E_SUCCESS (0x0)
libexchangemapi-Message: exchange-mapi-connection.c:2739: exchange_mapi_get_folders_list: unlock(connect_lock)

exchange-mapi-connection.c:2741: Leaving exchange_mapi_get_folders_list
(evolution:3788): camel-mapi-provider-WARNING **: Could not get folder list..


it looks like the connection is successfully established, but the mapi-provider is unable to get the folder list. why? :?

ok, now, when i run mapitest i get this:

Code:
~ $ mapitest -f .evolution/mapi-profiles.ldb
#############################[mapitest report]#################################
   [*] Date                     : Mon Mar 30 08:22:31 2009
   [*] Confidential mode        : [no]               
   [*] Samba Information        : 4.0.0alpha7         
   [*] OpenChange Information   : 0.8.2 (Romulus Maintainer)

   [*] System Information       :
      Kernel name          : Linux     
      Kernel release       : 2.6.28-gentoo-r2
      Processor            : Intel(R) Pentium(R) 4 CPU 2.40GHz

   [*] Exchange Server          :
      Store version        : 0.0.0
      Username             : Daniel Paessler
      Organization         : CBS       
      Organization Unit    : EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)
###############################################################################


[MODULE] OXCSTOR
################################################################################
   [TEST] OXCSTOR-LOGON
   ------------------------------------------------------------------------
      * OpenMsgStore                       : MAPI_E_SUCCESS
      * OpenPublicFolder                   : MAPI_E_SUCCESS
   ------------------------------------------------------------------------
   [RESULT] OXCSTOR-LOGON: [SUCCESS]
   ========================================================================

   [TEST] OXCSTOR-GET-RECEIVE-FOLDER
   ------------------------------------------------------------------------
      * OpenMsgStore                       : MAPI_E_SUCCESS
      * GetReceiveFolder                   : MAPI_E_SUCCESS
   ------------------------------------------------------------------------
   [RESULT] OXCSTOR-GET-RECEIVE-FOLDER: [SUCCESS]
   ========================================================================

   [TEST] OXCSTOR-SET-RECEIVE-FOLDER
   ------------------------------------------------------------------------
      * Step 1.    Logon                              : MAPI_E_SUCCESS
      * Step 2.    GetReceiveFolder                   : MAPI_E_SUCCESS
      * Step 3.    OpenFolder                         : MAPI_E_SUCCESS
      * Step 4.    GetDefaultFolder                   : MAPI_E_SUCCESS
      * Step 4.1.  OpenFolder                         : MAPI_E_SUCCESS
      * Step 5.    CreateFolder                       : MAPI_E_SUCCESS
      * Step 6.    SetReceiveFolder                   : MAPI_E_SUCCESS (New Inbox)
      * Step 6.1.  SetReceiveFolder                   : MAPI_E_SUCCESS
      * Step 7.    EmptyFolder                        : MAPI_E_SUCCESS
      * Step 8.    DeleteFolder                       : MAPI_E_SUCCESS
   ------------------------------------------------------------------------
   [RESULT] OXCSTOR-SET-RECEIVE-FOLDER: [SUCCESS]
   ========================================================================




--- snip ------- many more success messages here -----------




   [TEST] OXCTABLE-CATEGORY
   ------------------------------------------------------------------------
      * SetColumns                         : MAPI_E_SUCCESS
      * SortTable                          : MAPI_E_SUCCESS
      * QueryRows                          : MAPI_E_SUCCESS
      * QueryPosition                      : MAPI_E_SUCCESS
      * CollapseRow                        : MAPI_E_SUCCESS
      * QueryPosition                      : MAPI_E_SUCCESS
      * GetCollapseState                   : MAPI_E_SUCCESS
      * ExpandRow                          : MAPI_E_SUCCESS
      * QueryPosition                      : MAPI_E_SUCCESS
      * SetCollapseState                   : MAPI_E_SUCCESS
      * QueryPosition                      : MAPI_E_SUCCESS
      * FreeBookmark                       : MAPI_E_CALL_FAILED
   ------------------------------------------------------------------------
   [RESULT] OXCTABLE-CATEGORY: [FAILURE]
   ========================================================================

################################################################################




--- snip --- the above one is the first failure message
------- many more success messages here -----------





   [TEST] OXCPRPT-NAME-ID
   ------------------------------------------------------------------------
      * OpenMsgStore                       : MAPI_E_SUCCESS
      * GetDefaultFolder                   : MAPI_E_SUCCESS
      * OpenFolder                         : MAPI_E_SUCCESS
      * CreateFolder                       : MAPI_E_SUCCESS
      * mapitest_common_message_create     : MAPI_E_SUCCESS
      * SaveChangesMessage                 : MAPI_E_SUCCESS
      * GetIDsFromNames                    : MAPI_E_SUCCESS
      * GetNamesFromIDs                    : MAPI_E_SUCCESS
      * GetIDsFromNames                    : MAPI_E_INVALID_PARAMETER
      * DeleteFolder                       : MAPI_E_SUCCESS
   ------------------------------------------------------------------------
   [RESULT] OXCPRPT-NAME-ID: [FAILURE]
   ========================================================================

################################################################################




--- snip --- the above one is the second failure message
------- many more success messages here -----------


[MODULE] ERRORCHECKS
################################################################################
   [TEST] ERRORCHECKS-SIMPLEMAPI
   ------------------------------------------------------------------------
      * Step 1 - MAPI_E_NOT_INITIALIZED    : [SUCCESS]
      * Step 2 - MAPI_E_INVALID_PARAMETER  : [SUCCESS]
      * Step 3 - MAPI_E_NOT_FOUND          : [SUCCESS]
      * Step 4 - MAPI_E_NOT_INITIALIZED    : [SUCCESS]
      * Step 5 - MAPI_E_INVALID_PARAMETER  : [SUCCESS]
      * Step 6 - MAPI_E_NOT_INITIALIZED    : [SUCCESS]
      * Step 7 - MAPI_E_NOT_INITIALIZED    : [SUCCESS]
      * Step 8 - MAPI_E_INVALID_PARAMETER  : [SUCCESS]
      * Step 9 - MAPI_E_INVALID_PARAMETER  : [SUCCESS]
      * Step 10 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 11 - MAPI_E_NOT_INITIALIZED   : [SUCCESS]
      * Step 12 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 13 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 14 - MAPI_E_NOT_INITIALIZED   : [SUCCESS]
      * Step 15 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 16 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 17 - MAPI_E_NOT_INITIALIZED   : [SUCCESS]
      * Step 18 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 19 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 20 - MAPI_E_NOT_INITIALIZED   : [SUCCESS]
      * Step 21 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
      * Step 22 - MAPI_E_INVALID_PARAMETER : [SUCCESS]
   ------------------------------------------------------------------------
   [RESULT] ERRORCHECKS-SIMPLEMAPI: [SUCCESS]
   ========================================================================

################################################################################


[MODULE] LCID
################################################################################
   [TEST] LCID-CODE2TAG
   ------------------------------------------------------------------------
      * Step 1                             : [SUCCESS]
      * Step 2                             : [SUCCESS]
      * Step 3                             : [SUCCESS]
      * Step 4                             : [SUCCESS]
   ------------------------------------------------------------------------
   [RESULT] LCID-CODE2TAG: [SUCCESS]
   ========================================================================

################################################################################


[STAT] FAILURE REPORT
######################
   * OXCTABLE                           : OXCTABLE-CATEGORY
   * OXCPRPT                            : OXCPRPT-NAME-ID
------------------------------------------------------------------------
[STAT] TEST SUMMARY
####################
   Number of passing tests: 78
   Number of failing tests: 2
------------------------------------------------------------------------


so according to the first few messages it seems, that mapi itself is able to get the folders.
i'm kind of lost at this point. any ideas?

daniel
Back to top
View user's profile Send private message
mattwood2000
Tux's lil' helper
Tux's lil' helper


Joined: 13 Apr 2005
Posts: 146

PostPosted: Thu Aug 11, 2011 10:03 pm    Post subject: Reply with quote

Anyone do this recently? Got everything built (i.e samba4, openchange, libmapi, etc.) but i'm failing evolution-mapi with the following:

Code:

...
...

/usr/local/samba/include/libmapi/libmapi.h:327:18: note: expected 'struct SPropValue **' but argument is of type 'uint32_t *'
exchange-mapi-connection.c:3374:2: error: too few arguments to function 'GetProps'
/usr/local/samba/include/libmapi/libmapi.h:327:18: note: declared here
make[3]: *** [exchange-mapi-connection.lo] Error 1
make[3]: Leaving directory `/opt/matt.wood/evolution-mapi-3.0.2/src/libexchangemapi'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/matt.wood/evolution-mapi-3.0.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/matt.wood/evolution-mapi-3.0.2'
make: *** [all] Error 2
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum