[Adium-devl] StudiVZ Plugin
derDoc
derdoc at googlemail.com
Wed Mar 4 07:59:40 UTC 2009
Fellas,
I just submitted my first beta build of the studiVZ plugin for approval.
Finally, I found out how to relocate the RegexKit.FW into the plugin.
Peter was basically right, but it seemed that XCode did not care about
my setting of @load_path or didn't like it because I was linking against
other libs as well.
After a little unsucesfull venture into using POSIX extended Regexes and
before I was almost ready to statically link against libpcre I decided
to google some more, and the solution is a prog called 'install_name_tool'
For the interested the solution is to add a execute script build phase
with this contents:
PATH=../Frameworks/RegexKit.framework/Versions/A/RegexKit
/usr/bin/install_name_tool -change "@executable_path/${PATH}"
"@loader_path/${PATH}"
"$TARGET_BUILD_DIR/$TARGET_NAME.$WRAPPER_EXTENSION/Contents/MacOS/$TARGET_NAME"
These lines are mostly stolen from the skype plugin ;)
On another note I also ran into the Service Icons bug as noted in #5424.
I used the same solution that is implemented in ESJabberPurpleAccount, I
overrode
- (AIService *)_serviceForUID:(NSString *)contactUID
which seems to work fine most of the time.
As long as XEP-0172 is not working yet, the plugin sets the
formatted-UID to the StudiVZ UID (16 char hex string) and the display
name to the real Nickname.
One last thing that I could not figure out was a crash that happened
when I tried to set the content of 'textField_connectServer' in the
options pane of account prefs to snow.nimbuzz.com and disable it.
I just disabled it in the .nib for now, but even there it does not let
me set a string into it - well it doesn't show up.
Maybe I should just remove that textfield, since the server is hardset
anyway...
-Vitus
Peter Hosey wrote:
> On Feb 25, 2009, at 20:41:02, derDoc wrote:
>> 2009-02-25 19:50:45.857 Adium[54664:10b] Error loading
>> /Users/derDoc/Library/Application Support/Adium
>> 2.0/PlugIns/AdiumTestPlugin.AdiumPlugin/Contents/MacOS/AdiumTestPlugin:
>> dlopen(/Users/derDoc/Library/Application Support/Adium
>> 2.0/PlugIns/AdiumTestPlugin.AdiumPlugin/Contents/MacOS/AdiumTestPlugin,
>> 265): Library not loaded:
>> @executable_path/../Frameworks/RegexKit.framework/Versions/A/RegexKit
>> Referenced from: /Users/derDoc/Library/Application Support/Adium
>> 2.0/PlugIns/AdiumTestPlugin.AdiumPlugin/Contents/MacOS/AdiumTestPlugin
>> Reason: image not found
>
> Use @rpath, not @executable_path. If you're building RegexKit from
> source, you can set the install path of the framework in its Xcode
> project; if you're using a pre-built framework, you'll need to use
> rtool (which is on Google Code).
>
> Info on the necessary changes in the Xcode project:
>
> http://lists.apple.com/archives/Unix-porting/2008/Mar/msg00012.html
> http://developer.apple.com/releasenotes/developertools/RN-dyld/index.html
>
>
--
Vitus Lorenz-Meyer
M.S. in Computer Science from University of Texas at El Paso, USA
Dipl.-Inform. (C.S.) @ Technical University at Braunschweig, Germany
----
confuzius says:
if one wants to truely pwn, one must pwn in all games !!
www.lorenz-meyer.de Family Community v0.1 alpha
More information about the devel
mailing list