Using macports to create binary package

Manav Bhatia bhatiamanav at gmail.com
Fri Jul 20 18:24:52 UTC 2018


No GUI. My app is a terminal application with plenty of dependencies. My users are at places and on systems without root access. 

I am not sure what the best approach is here, but I am looking at various options where I can distribute precompiled binaries. 

Dylibbundler sounds interesting but I have no experience to try to judge its limitations. 

I am also looking at CPack (from cmake), which seems to have some promise as it is cross-platform compatible, so I can use the same cmake configuration script to create bundles on Mac and Linux. 

I need these to work in non-standard, non-root locations. 

This should not be so difficult. 

-Manav

Sent from my iPhone

> On Jul 20, 2018, at 1:01 PM, Craig Treleaven <ctreleaven at macports.org> wrote:
> 
> Others will have to advise you on dylibbundler; it doesn’t do what I need so I’ve never used it.
> 
> Does your app provide a Mac gui?  Otherwise, it doesn’t make sense to create an app bundle.
> 
> Craig
> 
>> On Jul 20, 2018, at 11:03 AM, Manav Bhatia <bhatiamanav at gmail.com> wrote:
>> 
>> I typically do:
>> 
>> $ port install openmpi-clang hdf5 eigen boost 
>> 
>> before building my application. This installs (a lot of) dependencies, including gcc. 
>> 
>> Thanks for pointing me to dylibbundler. I was not aware of that. I will look into the details of this package. 
>> 
>> Will this be able to take ports installed in a default /opt/local location and pack them in an app bundle? 
>> 
>> -Manav
>> 
>>>> On Jul 20, 2018, at 9:53 AM, Craig Treleaven <ctreleaven at macports.org> wrote:
>>>> 
>>>> On Jul 20, 2018, at 8:51 AM, Manav Bhatia <bhatiamanav at gmail.com> wrote:
>>>> 
>>>> Thanks. 
>>>> 
>>>> I saw some instructions related to octave that describes creations of an app bundle that can be put anywhere: https://wiki.octave.org/Create_a_MacOS_X_App_Bundle_Using_MacPorts
>>>> 
>>>> One of the commands they used is install_name_tool: 
>>>> install_name_tool -change /opt/local/libiconv.2.dylib @executable_path/../lib/libiconv.2.dylib Octave-3.7.0+
>>>> 
>>>> So, if I only keep the specific header files and relevant dyld files, with enough care something like this should be possible (?). 
>>>> 
>>>> -Manav
>>>> 
>>> 
>>> Creating a Mac application bundle is a somewhat different objective from what I thought was your stated goal.  You haven’t said what you want to package.
>>> 
>>> If it is appropriate to package your app as an app bundle, then perhaps dylibbundler is what you need.  Check ‘port info dylibbundler’ and ‘port gohome dylibbundler’.
>>> 
>>> Craig
>> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-users/attachments/20180720/c08df65c/attachment.html>


More information about the macports-users mailing list