> On Oct 8, 2015, at 10:02 AM, Ryan Schmidt <ryandes...@macports.org> wrote:
> 
> 
> On Oct 8, 2015, at 8:34 AM, Adam Dershowitz wrote:
> 
>> On Oct 8, 2015, at 8:57 AM, Ryan Schmidt wrote:
>> 
>>> On Oct 7, 2015, at 9:53 AM, Adam Dershowitz wrote:
>>> 
>>>> Is there a way that I can rebuild and reactivate an older version of a  
>>>> port?  I know about this link:  
>>>> https://trac.macports.org/wiki/howto/InstallingOlderPort  but the problem 
>>>> I have is a little bit different.
>>>> I have the old versions still on my computer, including the source (these 
>>>> were ports that build from source), and they are for a port that is not 
>>>> hosted on macports.  
>>>> The problem is that one of the dependents changed, so if I just activate 
>>>> the old version it fails.  So, what I want is essentially to “activate 
>>>> from source” or “rebuild @version)” since I already have the source and 
>>>> the port for the old version.  
>>>> I can just activate the old version because there is the issue of a bad 
>>>> link, so it needs to be rebuilt.  
>>>> I tried: 
>>>> sudo port install myport @myoldversion but it tried to rebuild the new 
>>>> version, which is not what I want.  
>>>> I also tried just giving the source flag:
>>>> sudo port activate -s myport @myoldversion but then it just activated the 
>>>> old version.  
>>>> 
>>>> I actually had no intention of yet upgrading this port, but when I 
>>>> upgraded one of the dependents , macports found that the port was now 
>>>> broken, and proceeded to download the new version of the port before 
>>>> rebuilding.  But, that new version is actually broken (for a completely 
>>>> unrelated reason).  So, now I can’t use the new version of the port, and I 
>>>> want to go back to the old version, but I can just activate it, because of 
>>>> the dependent issue.  So, I want to just have macports rebuild the old 
>>>> version from source.  
>>> 
>>> I don't know what to tell you. I don't completely understand your issue. 
>>> InstallingOlderPort explains how to install an older version of a port. 
>>> "sudo port install" does not support an "@version" modifier.
>>> 
>>> Maybe it would help if you told us what version of what port you're trying 
>>> to build, and, since you said it's not hosted on MacPorts, where it's 
>>> hosted, or where you got it.
>>> 
>> 
>> Sure.  Sorry that my description was not detailed enough.
>> I have openmodelica-devel installed, and it was working fine.  And, I have 
>> often done upgrades with no problem.  
>> Some install details are here:  
>> https://openmodelica.org/download/download-mac
>> And, they keep the source code here:  
>> http://build.openmodelica.org/apt/pool/contrib/
>> 
>> Yesterday I upgraded qt4-mac.  That caused macports to determine that a few 
>> ports were broken (since qt4-mac seems to have changed the location of some 
>> files) and to cause them to rebuild.  One that it tried to rebuild was 
>> openmodelica-devel.  The problem is that I was not using the most recent 
>> version.  They upgrade every few hours typically, as this is develop code.  
>> Some recent change that they made has caused the recent versions not to 
>> build correctly.  The developers are aware of that, and it will get fixed 
>> eventually.  
>> So, I just wanted to keep using the version I had from a few days ago.  The 
>> problem is that macports saw the broken install of openmodelica-devel was 
>> not the newest so downloaded the new source and tried to build it, and 
>> failed due to the bug mentioned earlier.  Now the problem is that if I 
>> activate the older version (a few days old) it activates, but doesn’t run 
>> (because it linked against the old location of qt4-mac libraries).  
>> So, my current situation is I have old versions installed but not activated. 
>>  And, I can’t get old ones to work, and I can’t build a new version, since 
>> there is a bug that is yet to be fixed in openmodelica.  
>> So, would like to do is to rebuild an old version from the source that was 
>> downloaded when I last did a successful upgrade and build.  Since that build 
>> worked, and left the source stored in macports, it seems like there should 
>> be a way to reactivate that version, but let it use the source and rebuild 
>> it, instead of just doing the typical activate from the binaries that 
>> macports build and saved.
>> 
>> Does that make more sense?  
> 
> Ok, so you have 2 options.
> 
> 1. Downgrade qt4-mac to the version before the change in filesystem layout, 
> and then you can activate your already-installed older version of 
> openmodelica-devel and it will work. of course, you'll break all the ports 
> that require the new qt4-mac layout, and if you want to continue using them, 
> would have to downgrade them to pre-layout-change versions as well.
> 
> 2. (probably the better option) Follow the InstallingOlderPort instructions, 
> except where it tells you to look in the MacPorts Subversion repository's log 
> to find which revision of the port to use, you'll instead be consulting the 
> log of whatever revision control system the Open Modelica developers use for 
> their ports, and you'll get the old version of the port from there. Then 
> you'll install that version, possibly first uninstalling the one you already 
> have installed, since although it will have the correct version number, it 
> will be for the wrong qt4-mac layout. It's possible the old port (or even the 
> new port) won't build correctly with the new qt4-mac layout. If so, that's a 
> bug the people who provide that portfile will have to fix.
> 
> 
> 

It turns out that for the moment 2. didn’t work, as you had suggested, it seems 
that there is a bug that the OpenModelica has to fix for the new qt4-mac 
layout.  Is there any documentation, or hints, explaining the new layout, or 
what changes might be necessary?  Any guidance that I can pass along to those 
developers would be appreciated.  
For now, I ended up doing 2, then having to downgrade qt4-mac as well, to get 
it to build, ,then having to downgrade a few other ports, to go with the old 
qt4-mac layout.


Thanks,

—Adam

_______________________________________________
macports-users mailing list
macports-users@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-users

Reply via email to