realbasic-plugins
[Top] [All Lists]

Re: OT: Framework vs. dylib (Was: Incorporating existing C/C++. .)

To: REALbasic Plugins <realbasic-plugins at lists dot realsoftware dot com>
Subject: Re: OT: Framework vs. dylib (Was: Incorporating existing C/C++. .)
From: Norman Palardy <npalardy at great-white-software dot com>
Date: Tue, 31 Jul 2007 11:58:37 -0600
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-plugins at lists dot realsoftware dot com
References: <20070731175001 dot 795BA4EAA12 at lists dot realsoftware dot com>
On 31-Jul-07, at 11:48 AM, lists at mgreg dot com wrote:

> Alright, so please humor me and reiterate 1,2,3 the procedure for  
> each OS.
>
> 1) Mac - debug externally and production in *any* internal folder  
> (although generally "frameworks").

use @executable_path and put the dylib inside the app package

> 2) Linux - ?

install the dylib in /usr/local/lib and use a hard coded path to the  
library

> 3) Windows - ?

Use an installer and install it in application data/your app name/ 
library_name.dll
Use a hard coded path to it

> ...it might not exist, but I'm looking for the most cross-platform  
> compatible method(s)

It doesn't exist because each OS allows you to do different things.
OS X is the only one that makes it so an "installer" is really not  
necessary because all your custom dylibs can be IN the app package  
which and end user see' and treats as one file.

There is no equivalent on Linux or Windows so you have to do things  
differently
They are more similar to each other

On Windows you will want an installer so you can put dylibs in the  
right places and so the end user can remove things later if they desire.

On OS X you will want only a DMG if you can do that so it's a drag  
and drop of the application to install it

Linux folks will have to chime in for "what's expected"
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives:
<http://support.realsoftware.com/listarchives/lists.html>


From  Tue 31 Jul 2007 12:55:36 -0600
Return-Path: <realbasic-plugins-bounces at lists dot realsoftware dot com>
X-Original-To: listarchive at realsoftware dot com
Delivered-To: listarchive at realsoftware dot com
Received: by xmail.realsoftware.com (Postfix, from userid 1037)
        id 5F79A38366CB; Tue, 31 Jul 2007 11:55:45 -0700 (PDT)
X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on 
        www.realsoftware.com
X-Spam-Level: 
X-Spam-Status: No, score=-3.1 required=4.5 tests=ALL_TRUSTED,AWL,BAYES_00,
        NO_REAL_NAME autolearn=ham version=3.1.1
Received: from lists.realsoftware.com (m.realsoftware.com [66.116.103.65])
        by xmail.realsoftware.com (Postfix) with ESMTP id 0C8AC38366C0;
        Tue, 31 Jul 2007 11:55:43 -0700 (PDT)
Received: from real-software-mini.local (localhost [127.0.0.1])
        by lists.realsoftware.com (Postfix) with ESMTP id 567AE4EB0EE;
        Tue, 31 Jul 2007 13:55:32 -0500 (CDT)
X-Original-To: realbasic-plugins at lists dot realsoftware dot com
Delivered-To: realbasic-plugins at lists dot realsoftware dot com
Received: from mail.verex.com (mail.verex.com [66.116.103.197])
        by lists.realsoftware.com (Postfix) with ESMTP id 9E8A14EB0DF
        for <realbasic-plugins at lists dot realsoftware dot com>;
        Tue, 31 Jul 2007 13:55:28 -0500 (CDT)
Received: from [66.116.103.197] (localhost [127.0.0.1])
        by mail.verex.com (Postfix) with SMTP id 9035079743B
        for <realbasic-plugins at lists dot realsoftware dot com>;
        Tue, 31 Jul 2007 12:55:36 -0600 (MDT)
Date: Tue, 31 Jul 2007 12:55:36 -0600
Subject: Re: OT: Framework vs. dylib (Was: Incorporating existing C/C++. .)
From: joe at strout dot net
To: realbasic-plugins at lists dot realsoftware dot com
In-Reply-To: <2BF96938-9376-43BC-8DD1-3B44D316FFF2 at great-white-software dot 
com>
X-Mailer: VerEx Email Gateway
Message-Id: <20070731185536 dot 9035079743B at mail dot verex dot com>
X-BeenThere: realbasic-plugins at lists dot realsoftware dot com
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: REALbasic Plugins <realbasic-plugins at lists dot realsoftware dot 
com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: realbasic-plugins-bounces at lists dot realsoftware dot com
Errors-To: realbasic-plugins-bounces at lists dot realsoftware dot com

On Jul 31, 2007, at 17:51 UTC, Norman Palardy wrote:

> So you have a couple choices
> 1) use a different location for debug builds because then you do  
> not have to interrupt the normal opening of your app
> 2) use the same location but interrupt your app's open event as  
> described
> 3) run a script as part of your app open that copies the dylib from
> one spot into the same location as it would be in a built app

Don't forget

4) in your Open event, when DebugBuild is true, make aliases of
whatever your app expects to be inside the bundle.  I'd use the Shell
class with the "ln -s" command to make files inside the bundle that
point to the corresponding development locations outside the bundle.

Best,
- Joe

--
Joe Strout -- joe at strout dot net
Strout Custom Solutions, LLC

_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives:
<http://support.realsoftware.com/listarchives/lists.html>


<Prev in Thread] Current Thread [Next in Thread>