Linux build instructions in a mess

classic Classic list List threaded Threaded
20 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Linux build instructions in a mess

James Crook
I think we need to sort out our linux build instructions!
This is what we currently have:

https://github.com/audacity/audacity/blob/7156479d11d24f2426298cb59c19615b54feac9f/INSTALL


I think we should be mentioning our repo for patched wxWidgets as
(surely?) it won't work as is.
These are the instructions I use:

http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu

I think we should also modify our set up so that configure chooses
"local system" by default, and -std=gnu++11 by default.

I work on Windows, and occasionally build on Ubuntu, but not other
linuxes, so I would like it that someone who knows autotools and knows
what they are doing does the updates.

--James.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Paul Licameli


On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
I think we need to sort out our linux build instructions!
This is what we currently have:

https://github.com/audacity/audacity/blob/7156479d11d24f2426298cb59c19615b54feac9f/INSTALL


I think we should be mentioning our repo for patched wxWidgets as (surely?) it won't work as is.
These are the instructions I use:

http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu

I think we should also modify our set up so that configure chooses "local system" by default, and -std=gnu++11 by default.

I work on Windows, and occasionally build on Ubuntu, but not other linuxes, so I would like it that someone who knows autotools and knows what they are doing does the updates.

--James.

I mentioned lately too that the Mac build instructions should probably be updated.  Don't mention the .patch files, and remove them from our source code tree.  Let our fork of wxWidgets be the source.

Agreed?

PRL

 


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Cliff Scott

On Jul 23, 2017, at 8:06 PM, Paul Licameli <[hidden email]> wrote:



On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
I think we need to sort out our linux build instructions!
This is what we currently have:

https://github.com/audacity/audacity/blob/7156479d11d24f2426298cb59c19615b54feac9f/INSTALL


I think we should be mentioning our repo for patched wxWidgets as (surely?) it won't work as is.
These are the instructions I use:

http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu

I think we should also modify our set up so that configure chooses "local system" by default, and -std=gnu++11 by default.

I work on Windows, and occasionally build on Ubuntu, but not other linuxes, so I would like it that someone who knows autotools and knows what they are doing does the updates.

--James.

I mentioned lately too that the Mac build instructions should probably be updated.  Don't mention the .patch files, and remove them from our source code tree.  Let our fork of wxWidgets be the source.

Agreed?

Seems as if that would simplify things so +1

Cliff

PRL

 


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 24 July 2017 at 02:27, Cliff Scott <[hidden email]> wrote:

>
> On Jul 23, 2017, at 8:06 PM, Paul Licameli <[hidden email]> wrote:
>
>
>
> On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
>>
>> I think we need to sort out our linux build instructions!
>> This is what we currently have:
>>
>>
>> https://github.com/audacity/audacity/blob/7156479d11d24f2426298cb59c19615b54feac9f/INSTALL
>>
>>
>> I think we should be mentioning our repo for patched wxWidgets as
>> (surely?) it won't work as is.

Audacity builds fine on Ubuntu with the standard wxgtk3 package.


>> These are the instructions I use:
>>
>> http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu

but there's no mention of dependencies that are not part of the
standard Desktop Ubuntu.

More up to date detailed instructions are available on the forum:
https://forum.audacityteam.org/viewforum.php?f=19

The most recent "almost complete" instructions are here:
https://forum.audacityteam.org/viewtopic.php?f=19&t=96525
I've not yet got FFmpeg working, which I suspect may require building
against system ffmpeg libraries (see also below).

>>
>> I think we should also modify our set up so that configure chooses "local
>> system" by default,

I don't know what (if any) implications that has for package
maintainers, but Audacity does not build with the system portaudio
library on Ubuntu 16.04 LTS, so my most recent instructions use:

../configure --disable-dynamic-loading --with-lib-preference="local system"

--disable-dynamic-loading allowed ffmpeg to work on Ubuntu 16.04 (last
tested a few days ago), but that's not working for me today with
Ubuntu 17.04. Audacity is building, but I'm still getting the
"Libraries" preference even with --disable-dynamic-loading

Steve


>> and -std=gnu++11 by default.
>>
>> I work on Windows, and occasionally build on Ubuntu, but not other
>> linuxes, so I would like it that someone who knows autotools and knows what
>> they are doing does the updates.
>>
>> --James.
>
>
> I mentioned lately too that the Mac build instructions should probably be
> updated.  Don't mention the .patch files, and remove them from our source
> code tree.  Let our fork of wxWidgets be the source.
>
> Agreed?
>
> Seems as if that would simplify things so +1
>
> Cliff
>
> PRL
>
>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> _______________________________________________
>> audacity-devel mailing list
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/audacity-devel
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org!
> http://sdm.link/slashdot_______________________________________________
> audacity-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/audacity-devel
>
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> audacity-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/audacity-devel
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 24 July 2017 at 04:06, Steve the Fiddle <[hidden email]> wrote:

> On 24 July 2017 at 02:27, Cliff Scott <[hidden email]> wrote:
>>
>> On Jul 23, 2017, at 8:06 PM, Paul Licameli <[hidden email]> wrote:
>>
>>
>>
>> On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
>>>
>>> I think we need to sort out our linux build instructions!
>>> This is what we currently have:
>>>
>>>
>>> https://github.com/audacity/audacity/blob/7156479d11d24f2426298cb59c19615b54feac9f/INSTALL
>>>
>>>
>>> I think we should be mentioning our repo for patched wxWidgets as
>>> (surely?) it won't work as is.
>
> Audacity builds fine on Ubuntu with the standard wxgtk3 package.
>
>
>>> These are the instructions I use:
>>>
>>> http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu
>
> but there's no mention of dependencies that are not part of the
> standard Desktop Ubuntu.
>
> More up to date detailed instructions are available on the forum:
> https://forum.audacityteam.org/viewforum.php?f=19
>
> The most recent "almost complete" instructions are here:
> https://forum.audacityteam.org/viewtopic.php?f=19&t=96525
> I've not yet got FFmpeg working, which I suspect may require building
> against system ffmpeg libraries (see also below).
>
>>>
>>> I think we should also modify our set up so that configure chooses "local
>>> system" by default,

Why?
We currently need to build against our local portaudio library, at
least on Ubuntu 16.04, but I've not noticed problems with system
libraries elsewhere.

Isn't there a risk that if we build against local libraries that there
could be compatibility problems with installed system libraries? That
certainly appears to be the case for ffmpeg (see below).

>
> I don't know what (if any) implications that has for package
> maintainers, but Audacity does not build with the system portaudio
> library on Ubuntu 16.04 LTS, so my most recent instructions use:
>
> ../configure --disable-dynamic-loading --with-lib-preference="local system"
>
> --disable-dynamic-loading allowed ffmpeg to work on Ubuntu 16.04 (last
> tested a few days ago), but that's not working for me today with
> Ubuntu 17.04. Audacity is building, but I'm still getting the
> "Libraries" preference even with --disable-dynamic-loading

I've now got ffmpeg working on Ubuntu 17.04.
The "--disable-dynamic-loading" switch is not required, but Audacity
must be built against system ffmpeg libraries.

I think that installing dependencies for Audacity on Ubuntu 17.04 can
be simplified from my current instructions now that I've got my
sources.list fixed. It'll take a bit of time to check because I will
need to reinstall vanilla Ubuntu.

Steve

>
> Steve
>
>
>>> and -std=gnu++11 by default.
>>>
>>> I work on Windows, and occasionally build on Ubuntu, but not other
>>> linuxes, so I would like it that someone who knows autotools and knows what
>>> they are doing does the updates.
>>>
>>> --James.
>>
>>
>> I mentioned lately too that the Mac build instructions should probably be
>> updated.  Don't mention the .patch files, and remove them from our source
>> code tree.  Let our fork of wxWidgets be the source.
>>
>> Agreed?
>>
>> Seems as if that would simplify things so +1
>>
>> Cliff
>>
>> PRL
>>
>>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

James Crook
On 7/24/2017 1:53 PM, Steve the Fiddle wrote:

> James wrote:
>> I think we should also modify our set up so that configure chooses
>> "local system" by default,
> Why?
> We currently need to build against our local portaudio library, at
> least on Ubuntu 16.04, but I've not noticed problems with system
> libraries elsewhere.
>
> Isn't there a risk that if we build against local libraries that there
> could be compatibility problems with installed system libraries? That
> certainly appears to be the case for ffmpeg (see below).

I can't build ffmpeg with system libs.  I can't build with system
portaudio.  I'm expecting that disabling dynamic linking (of wxwidgets)
prevents use of mod-xxx plug-ins like mod-nyqbench.  I've lost track of
exactly what libs we've patched, but I think it is more than portaudio.

Also we know we only work with some versions of ffmpeg, and that
probably holds for other libs too.

So I guessed that the most reliable way to build multiplatform is to use
our own copy of the libs.

A better solution would be if configure would make 'the right choices',
but I think that needs more autotools foo than we (certainly than I)
have.  So that's why.  I'm certainly open to any better solution.  I do
know that our instructions for building on linux need some work, and
that was my main point.

--James.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 24 July 2017 at 15:33, James Crook <[hidden email]> wrote:

> On 7/24/2017 1:53 PM, Steve the Fiddle wrote:
>>
>> James wrote:
>>>
>>> I think we should also modify our set up so that configure chooses "local
>>> system" by default,
>>
>> Why?
>> We currently need to build against our local portaudio library, at
>> least on Ubuntu 16.04, but I've not noticed problems with system
>> libraries elsewhere.
>>
>> Isn't there a risk that if we build against local libraries that there
>> could be compatibility problems with installed system libraries? That
>> certainly appears to be the case for ffmpeg (see below).
>
>
> I can't build ffmpeg with system libs.  I can't build with system portaudio.

Which version of Ubuntu are you using?
With Xubuntu 16.04, these instructions work for me with one modification:
https://forum.audacityteam.org/viewtopic.php?f=19&t=88922

The modification: add "--with-portaudio=local" to the configure command:
../configure --disable-dynamic-loading --with-portaudio=local

> I'm expecting that disabling dynamic linking (of wxwidgets) prevents use of
> mod-xxx plug-ins like mod-nyqbench.

No. Nyquist Workbench still works.

> I've lost track of exactly what libs
> we've patched, but I think it is more than portaudio.
>
> Also we know we only work with some versions of ffmpeg, and that probably
> holds for other libs too.
>
> So I guessed that the most reliable way to build multiplatform is to use our
> own copy of the libs.
>
> A better solution would be if configure would make 'the right choices', but
> I think that needs more autotools foo than we (certainly than I) have.

Could Benjamin be persuaded to give a hand? He's still listed on both
the Debian and Ubuntu package  maintainers lists.
What about Richard Ash?

Steve

> So
> that's why.  I'm certainly open to any better solution.  I do know that our
> instructions for building on linux need some work, and that was my main
> point.
>
> --James.
>
>
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

James Crook
On 7/24/2017 3:55 PM, Steve the Fiddle wrote:

> On 24 July 2017 at 15:33, James Crook <[hidden email]> wrote:
>> On 7/24/2017 1:53 PM, Steve the Fiddle wrote:
>>> James wrote:
>>>> I think we should also modify our set up so that configure chooses "local
>>>> system" by default,
>>> Why?
>>> We currently need to build against our local portaudio library, at
>>> least on Ubuntu 16.04, but I've not noticed problems with system
>>> libraries elsewhere.
>>>
>>> Isn't there a risk that if we build against local libraries that there
>>> could be compatibility problems with installed system libraries? That
>>> certainly appears to be the case for ffmpeg (see below).
>>
>> I can't build ffmpeg with system libs.  I can't build with system portaudio.
> Which version of Ubuntu are you using?
14.04, with an updated gcc.

--James.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 24 July 2017 at 16:06, James Crook <[hidden email]> wrote:

> On 7/24/2017 3:55 PM, Steve the Fiddle wrote:
>>
>> On 24 July 2017 at 15:33, James Crook <[hidden email]> wrote:
>>>
>>> On 7/24/2017 1:53 PM, Steve the Fiddle wrote:
>>>>
>>>> James wrote:
>>>>>
>>>>> I think we should also modify our set up so that configure chooses
>>>>> "local
>>>>> system" by default,
>>>>
>>>> Why?
>>>> We currently need to build against our local portaudio library, at
>>>> least on Ubuntu 16.04, but I've not noticed problems with system
>>>> libraries elsewhere.
>>>>
>>>> Isn't there a risk that if we build against local libraries that there
>>>> could be compatibility problems with installed system libraries? That
>>>> certainly appears to be the case for ffmpeg (see below).
>>>
>>>
>>> I can't build ffmpeg with system libs.  I can't build with system
>>> portaudio.
>>
>> Which version of Ubuntu are you using?
>
> 14.04, with an updated gcc.

That's a bit long in the tooth (even though still a supported version).
If I recall correctly, 14.04 did not have FFmpeg in the official repositories.

Steve

>
>
> --James.
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> audacity-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/audacity-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

James Crook
On 7/24/2017 4:43 PM, Steve the Fiddle wrote:

> On 24 July 2017 at 16:06, James Crook <[hidden email]> wrote:
>> On 7/24/2017 3:55 PM, Steve the Fiddle wrote:
>>> On 24 July 2017 at 15:33, James Crook <[hidden email]> wrote:
>>>> On 7/24/2017 1:53 PM, Steve the Fiddle wrote:
>>>>> James wrote:
>>>>>> I think we should also modify our set up so that configure chooses
>>>>>> "local
>>>>>> system" by default,
>>>>> Why?
>>>>> We currently need to build against our local portaudio library, at
>>>>> least on Ubuntu 16.04, but I've not noticed problems with system
>>>>> libraries elsewhere.
>>>>>
>>>>> Isn't there a risk that if we build against local libraries that there
>>>>> could be compatibility problems with installed system libraries? That
>>>>> certainly appears to be the case for ffmpeg (see below).
>>>>
>>>> I can't build ffmpeg with system libs.  I can't build with system
>>>> portaudio.
>>> Which version of Ubuntu are you using?
>> 14.04, with an updated gcc.
> That's a bit long in the tooth (even though still a supported version).
Then you and I are very long indeed in the tooth.  It was only released
in 2014.
It's LTS and supported out into 2019.  We could agree to drop support
for it, I suppose, if supporting it is and will be causing a lot of
problems.  But that begs the question, which versions of Linux do we
support?


> If I recall correctly, 14.04 did not have FFmpeg in the official repositories.
>
> Steve
>


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 24 July 2017 at 17:08, James Crook <[hidden email]> wrote:

> On 7/24/2017 4:43 PM, Steve the Fiddle wrote:
>>
>> On 24 July 2017 at 16:06, James Crook <[hidden email]> wrote:
>>>
>>> On 7/24/2017 3:55 PM, Steve the Fiddle wrote:
>>>>
>>>> On 24 July 2017 at 15:33, James Crook <[hidden email]> wrote:
>>>>>
>>>>> On 7/24/2017 1:53 PM, Steve the Fiddle wrote:
>>>>>>
>>>>>> James wrote:
>>>>>>>
>>>>>>> I think we should also modify our set up so that configure chooses
>>>>>>> "local
>>>>>>> system" by default,
>>>>>>
>>>>>> Why?
>>>>>> We currently need to build against our local portaudio library, at
>>>>>> least on Ubuntu 16.04, but I've not noticed problems with system
>>>>>> libraries elsewhere.
>>>>>>
>>>>>> Isn't there a risk that if we build against local libraries that there
>>>>>> could be compatibility problems with installed system libraries? That
>>>>>> certainly appears to be the case for ffmpeg (see below).
>>>>>
>>>>>
>>>>> I can't build ffmpeg with system libs.  I can't build with system
>>>>> portaudio.
>>>>
>>>> Which version of Ubuntu are you using?
>>>
>>> 14.04, with an updated gcc.
>>
>> That's a bit long in the tooth (even though still a supported version).
>
> Then you and I are very long indeed in the tooth.  It was only released in
> 2014.
> It's LTS and supported out into 2019.  We could agree to drop support for
> it, I suppose, if supporting it is and will be causing a lot of problems.
> But that begs the question, which versions of Linux do we support?

No, I agree that we should officially support Ubuntu 14.04 LTS, though
perhaps prioritise more recent LTS versions. I think that it's
reasonable to assume that users that are particularly concerned about
having the most up to date software will have updated to a more recent
Ubuntu release.

I've had ffmpeg working on 14.04 with Audacity 2.1.2, so I'd guess
that it should also be possible with 2.2.0, though it may require a
bit of massaging. I don't have time to do that right now.

Steve

>
>
>> If I recall correctly, 14.04 did not have FFmpeg in the official
>> repositories.
>>
>> Steve
>>
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> audacity-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/audacity-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Darrell Walisser
In reply to this post by James Crook


On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
I think we need to sort out our linux build instructions!
This is what we currently have:

https://github.com/audacity/audacity/blob/7156479d11d24f2426298cb59c19615b54feac9f/INSTALL


I think we should be mentioning our repo for patched wxWidgets as (surely?) it won't work as is.

​I've never used patched wxWidgets on Linux, works fine. But it's advisable for the same reason as using "local system" by default.

 
These are the instructions I use:

http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu

I think we should also modify our set up so that configure chooses "local system" by default,

This is a good idea, for parity with other platforms, and ensures consistent results between distributions.

On that subject, if portaudio in lib-src doesn't work (or anything else) I suggest we figure out why and get that into lib-src rather than hope the system version is correct.

and -std=gnu++11 by default.


-std=gnu++11 is no longer needed, it's in the current configure script

It would be good to include instructions for getting a compatible FFmpeg/libav version from source as well. I've always used the current git version installed in /usr/local. If someone can point me in the right direction (what exactly are the compatible versions?) I can hack some autoconf foo for it.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

James Crook
On 7/24/2017 7:08 PM, Darrell Walisser wrote:
> On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
>
>> and -std=gnu++11 by default.
>>
> -std=gnu++11 is no longer needed, it's in the current configure script.

Thanks!  I updated INSTALL so it no longer says to pass in CXXFLAGS and
also updated on wiki.

> It would be good to include instructions for getting a compatible
> FFmpeg/libav version from source as well. I've always used the current git
> version installed in /usr/local. If someone can point me in the right
> direction (what exactly are the compatible versions?) I can hack some
> autoconf foo for it.
Anyone?

--James.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:

> On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>>
>> On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
>>
>>> and -std=gnu++11 by default.
>>>
>> -std=gnu++11 is no longer needed, it's in the current configure script.
>
>
> Thanks!  I updated INSTALL so it no longer says to pass in CXXFLAGS and also
> updated on wiki.
>
>> It would be good to include instructions for getting a compatible
>> FFmpeg/libav version from source as well. I've always used the current git
>> version installed in /usr/local. If someone can point me in the right
>> direction (what exactly are the compatible versions?) I can hack some
>> autoconf foo for it.
>
> Anyone?

It depends on the distribution / version.

I have just tested with a fully updated vanilla install of Ubuntu
17.04 LTS, and written up detailed notes here:
https://forum.audacityteam.org/viewtopic.php?f=19&t=96525

Building and installing was very straightforward, using system
libraries where available _except_for_portaudio_ and everything,
including FFmpeg works straight out of the box.

On Ubuntu 16.04 LTS, the standard Ubuntu repository version works
_provided_that_ Audacity is build with system libraries and Audacity
is configured with the
"--disable-dynamic-loading" option.

Steve

>
>
> --James.
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> audacity-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/audacity-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Darrell Walisser

On Mon, Jul 24, 2017 at 4:03 PM, Steve the Fiddle <[hidden email]> wrote:
On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:
> On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>>
>> On Sun, Jul 23, 2017 at 9:36 AM, James Crook <[hidden email]> wrote:
>>
>>> and -std=gnu++11 by default.
>>>
>> -std=gnu++11 is no longer needed, it's in the current configure script.
>
>
> Thanks!  I updated INSTALL so it no longer says to pass in CXXFLAGS and also
> updated on wiki.
>
>> It would be good to include instructions for getting a compatible
>> FFmpeg/libav version from source as well. I've always used the current git
>> version installed in /usr/local. If someone can point me in the right
>> direction (what exactly are the compatible versions?) I can hack some
>> autoconf foo for it.
>
> Anyone?

It depends on the distribution / version.

I have just tested with a fully updated vanilla install of Ubuntu
17.04 LTS, and written up detailed notes here:
https://forum.audacityteam.org/viewtopic.php?f=19&t=96525

Building and installing was very straightforward, using system
libraries where available _except_for_portaudio_ and everything,
including FFmpeg works straight out of the box.


​This makes sense, 17.04 gives you a much newer version of Libav.
 
On Ubuntu 16.04 LTS, the standard Ubuntu repository version works
_provided_that_ Audacity is build with system libraries and Audacity
is configured with the
"--disable-dynamic-loading" option.

I just checked my 16.04 machine and I have libavutil52, libavutil54, and libavutil-ffmpeg54 as choices. If Audacity compiled against the v54 headers it would not be able to load the v52 lib due to the conditional code in FFmpeg.h which appears to pivot about v53.

It seems to me --disable-dynamic-loading should be the default on Linux. The distros that include an Audacity package, are probably already doing this? Developers/power users probably want this if they are compiling from source. We don't supply a binary for Linux as in other platforms.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Darrell Walisser
In reply to this post by Stevethefiddle


On Mon, Jul 24, 2017 at 4:03 PM, Steve the Fiddle <[hidden email]> wrote:
On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:
> On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>>
>> It would be good to include instructions for getting a compatible
>> FFmpeg/libav version from source as well. I've always used the current git
>> version installed in /usr/local. If someone can point me in the right
>> direction (what exactly are the compatible versions?) I can hack some
>> autoconf foo for it.

It depends on the distribution / version.

I have just tested with a fully updated vanilla install of Ubuntu
17.04 LTS, and written up detailed notes here:
https://forum.audacityteam.org/viewtopic.php?f=19&t=96525

Building and installing was very straightforward, using system
libraries where available _except_for_portaudio_ and everything,
including FFmpeg works straight out of the box.


​I did a fresh VM of 17.04 and followed your guide. It seems like a minimal set of steps. Everything works as described except:


lib-src portaudio seems fine, shows ALSA as the host. I verified it was v19 and not v20 which was installed in /usr/lib.


I needed to add cmake to get ./configure to pass (I assume portaudio) and I added git for easier download
   $ sudo apt-get install build-essential cmake git

"make install" step doesn't show the icon in the launcher.
​Not sure if reboot would fix that. ​
I needed to run
   $ sudo desktop-file-install src/audacity.desktop


I prefer to use git to save a few steps


I also put my build folder one level up from audacity (keep source tree unmodified).
Now configure looks like:
   $ ../audacity/configure ...

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Darrell Walisser


On Wed, Jul 26, 2017 at 6:21 PM, Darrell Walisser <[hidden email]> wrote:


On Mon, Jul 24, 2017 at 4:03 PM, Steve the Fiddle <[hidden email]> wrote:
On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:
> On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>>
>> It would be good to include instructions for getting a compatible
>> FFmpeg/libav version from source as well. I've always used the current git
>> version installed in /usr/local. If someone can point me in the right
>> direction (what exactly are the compatible versions?) I can hack some
>> autoconf foo for it.

It depends on the distribution / version.

I have just tested with a fully updated vanilla install of Ubuntu
17.04 LTS, and written up detailed notes here:
https://forum.audacityteam.org/viewtopic.php?f=19&t=96525

Building and installing was very straightforward, using system
libraries where available _except_for_portaudio_ and everything,
including FFmpeg works straight out of the box.


​I did a fresh VM of 17.04 and followed your guide. It seems like a minimal set of steps. Everything works as described except:


lib-src portaudio seems fine, shows ALSA as the host. I verified it was v19 and not v20 which was installed in /usr/lib.


I needed to add cmake to get ./configure to pass (I assume portaudio) and I added git for easier download
   $ sudo apt-get install build-essential cmake git

"make install" step doesn't show the icon in the launcher.
​Not sure if reboot would fix that. ​
I needed to run
   $ sudo desktop-file-install src/audacity.desktop


I prefer to use git to save a few steps


I also put my build folder one level up from audacity (keep source tree unmodified).
Now configure looks like:
   $ ../audacity/configure ...

​Today I've also tested 16.04 and 14.04, with a few new findings.

​./configure now needs --disable-dynamic-loading as you've noted. I've also been reminded Audacity crashes if FFmpeg library is not found and import is attempted (bug #1692, maybe it should be raised to P1?)

Audacity shows up in system menu after reboot. Or immediately with desktop-file-install utility (also available on 14.04). I assume the same behavior in 17.04

In addition, 14.04 has some issues, nothing too crazy.

Needs package libwxtgk3.0-dev (mentioned in your 14.04 guide), not included with the build-dep.

As noted elsewhere, gcc-4.9 is needed, this is the minimal sequence:
    $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test 
    $ sudo apt-get update
    $ sudo apt-get install gcc-4.9 g++-4.9
    $ export CC=gcc-4.9
    $ export CXX=g++-4.9

​Finally, an unexpected twist... for some reason, this combination of GCC and wxwidgets now requires --std=gnu++11 for FileDialog and widget-extra, where before it was only needed for audacity/src/.

I have created a pull request which adds this to configure for each of those. https://github.com/audacity/audacity/pull/204

One last thing, if I used the "pulse" output device, audio was garbled and then shortly after crashed and had to reboot to get audio back. Using "dmix" or another ALSA-native output works fine. This was with the lib-src portaudio v19 as in all 3 versions. I guess we chalk that up to pulseaudio bugs in 14.04.


Based on this work I can now recommend we do the following first steps to clean up the Linux build mess.

- use "local system" the default
- update autotools to make --disable-dynamic-loading and --with-ffmpeg=system by default
- add desktop-file-install to the install script if possible
- use Steve's 17.04 guide with the exceptions added for for 14.04. The 16.04 and 17.04 steps can be the same
- deprecate, update, or remove the various and mixed information on the wiki


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On 28 July 2017 at 21:27, Darrell Walisser <[hidden email]> wrote:

>
>
> On Wed, Jul 26, 2017 at 6:21 PM, Darrell Walisser
> <[hidden email]> wrote:
>>
>>
>>
>> On Mon, Jul 24, 2017 at 4:03 PM, Steve the Fiddle
>> <[hidden email]> wrote:
>>>
>>> On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:
>>> > On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>>> >>
>>> >> It would be good to include instructions for getting a compatible
>>> >> FFmpeg/libav version from source as well. I've always used the current
>>> >> git
>>> >> version installed in /usr/local. If someone can point me in the right
>>> >> direction (what exactly are the compatible versions?) I can hack some
>>> >> autoconf foo for it.
>>>
>>> It depends on the distribution / version.
>>>
>>> I have just tested with a fully updated vanilla install of Ubuntu
>>> 17.04 LTS, and written up detailed notes here:
>>> https://forum.audacityteam.org/viewtopic.php?f=19&t=96525
>>>
>>> Building and installing was very straightforward, using system
>>> libraries where available _except_for_portaudio_ and everything,
>>> including FFmpeg works straight out of the box.
>>>
>>
>> I did a fresh VM of 17.04 and followed your guide. It seems like a minimal
>> set of steps. Everything works as described except:
>>
>>
>> lib-src portaudio seems fine, shows ALSA as the host. I verified it was
>> v19 and not v20 which was installed in /usr/lib.
>>
>>
>> I needed to add cmake to get ./configure to pass (I assume portaudio) and
>> I added git for easier download
>>    $ sudo apt-get install build-essential cmake git
>>
>> "make install" step doesn't show the icon in the launcher.
>> Not sure if reboot would fix that.
>> I needed to run
>>    $ sudo desktop-file-install src/audacity.desktop
>>
>>
>> I prefer to use git to save a few steps
>>    $ git clone https://github.com/audacity/audacity
>>
>>
>> I also put my build folder one level up from audacity (keep source tree
>> unmodified).
>> Now configure looks like:
>>    $ ../audacity/configure ...
>
>
> Today I've also tested 16.04 and 14.04, with a few new findings.
>
> ./configure now needs --disable-dynamic-loading as you've noted. I've also
> been reminded Audacity crashes if FFmpeg library is not found and import is
> attempted (bug #1692, maybe it should be raised to P1?)
>
> Audacity shows up in system menu after reboot. Or immediately with
> desktop-file-install utility (also available on 14.04). I assume the same
> behavior in 17.04
>
> In addition, 14.04 has some issues, nothing too crazy.
>
> Needs package libwxtgk3.0-dev (mentioned in your 14.04 guide), not included
> with the build-dep.
>
> As noted elsewhere, gcc-4.9 is needed, this is the minimal sequence:
>     $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
>     $ sudo apt-get update
>     $ sudo apt-get install gcc-4.9 g++-4.9
>     $ export CC=gcc-4.9
>     $ export CXX=g++-4.9
>
> Finally, an unexpected twist... for some reason, this combination of GCC and
> wxwidgets now requires --std=gnu++11 for FileDialog and widget-extra, where
> before it was only needed for audacity/src/.
>
> I have created a pull request which adds this to configure for each of
> those. https://github.com/audacity/audacity/pull/204
>
> One last thing, if I used the "pulse" output device, audio was garbled and
> then shortly after crashed and had to reboot to get audio back. Using "dmix"
> or another ALSA-native output works fine. This was with the lib-src
> portaudio v19 as in all 3 versions. I guess we chalk that up to pulseaudio
> bugs in 14.04.

Possibly bug 276
http://bugzilla.audacityteam.org/show_bug.cgi?id=276

>
>
> Based on this work I can now recommend we do the following first steps to
> clean up the Linux build mess.
>
> - use "local system" the default

I still don't understand the rationale for this.
Apart from PortAudio, I've not had any problems with system libraries,
though conversely, I've not been able to get ffmpeg to work with local
libraries.

> - update autotools to make --disable-dynamic-loading and
> --with-ffmpeg=system by default

I think there was some concern regarding possible patent infringement.

Steve

> - add desktop-file-install to the install script if possible
> - use Steve's 17.04 guide with the exceptions added for for 14.04. The 16.04
> and 17.04 steps can be the same
> - deprecate, update, or remove the various and mixed information on the wiki
>
>
> ------------------------------------------------------------------------------

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Darrell Walisser


On Fri, Jul 28, 2017 at 4:40 PM, Steve the Fiddle <[hidden email]> wrote:
On 28 July 2017 at 21:27, Darrell Walisser <[hidden email]> wrote:
>
>
> On Wed, Jul 26, 2017 at 6:21 PM, Darrell Walisser
> <[hidden email]> wrote:
>>
>>
>>
>> On Mon, Jul 24, 2017 at 4:03 PM, Steve the Fiddle
>> <[hidden email]> wrote:
>>>
>>> On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:
>>> > On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>>> >>
>>> >> It would be good to include instructions for getting a compatible
>>> >> FFmpeg/libav version from source as well. I've always used the current
>>> >> git
>>> >> version installed in /usr/local. If someone can point me in the right
>>> >> direction (what exactly are the compatible versions?) I can hack some
>>> >> autoconf foo for it.
>>>
>>> It depends on the distribution / version.
>>>
>>> I have just tested with a fully updated vanilla install of Ubuntu
>>> 17.04 LTS, and written up detailed notes here:
>>> https://forum.audacityteam.org/viewtopic.php?f=19&t=96525
>>>
>>> Building and installing was very straightforward, using system
>>> libraries where available _except_for_portaudio_ and everything,
>>> including FFmpeg works straight out of the box.
>>>
>>
>> I did a fresh VM of 17.04 and followed your guide. It seems like a minimal
>> set of steps. Everything works as described except:
>>
>>
>> lib-src portaudio seems fine, shows ALSA as the host. I verified it was
>> v19 and not v20 which was installed in /usr/lib.
>>
>>
>> I needed to add cmake to get ./configure to pass (I assume portaudio) and
>> I added git for easier download
>>    $ sudo apt-get install build-essential cmake git
>>
>> "make install" step doesn't show the icon in the launcher.
>> Not sure if reboot would fix that.
>> I needed to run
>>    $ sudo desktop-file-install src/audacity.desktop
>>
>>
>> I prefer to use git to save a few steps
>>    $ git clone https://github.com/audacity/audacity
>>
>>
>> I also put my build folder one level up from audacity (keep source tree
>> unmodified).
>> Now configure looks like:
>>    $ ../audacity/configure ...
>
>
> Today I've also tested 16.04 and 14.04, with a few new findings.
>
> ./configure now needs --disable-dynamic-loading as you've noted. I've also
> been reminded Audacity crashes if FFmpeg library is not found and import is
> attempted (bug #1692, maybe it should be raised to P1?)
>
> Audacity shows up in system menu after reboot. Or immediately with
> desktop-file-install utility (also available on 14.04). I assume the same
> behavior in 17.04
>
> In addition, 14.04 has some issues, nothing too crazy.
>
> Needs package libwxtgk3.0-dev (mentioned in your 14.04 guide), not included
> with the build-dep.
>
> As noted elsewhere, gcc-4.9 is needed, this is the minimal sequence:
>     $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
>     $ sudo apt-get update
>     $ sudo apt-get install gcc-4.9 g++-4.9
>     $ export CC=gcc-4.9
>     $ export CXX=g++-4.9
>
> Finally, an unexpected twist... for some reason, this combination of GCC and
> wxwidgets now requires --std=gnu++11 for FileDialog and widget-extra, where
> before it was only needed for audacity/src/.
>
> I have created a pull request which adds this to configure for each of
> those. https://github.com/audacity/audacity/pull/204
>
> One last thing, if I used the "pulse" output device, audio was garbled and
> then shortly after crashed and had to reboot to get audio back. Using "dmix"
> or another ALSA-native output works fine. This was with the lib-src
> portaudio v19 as in all 3 versions. I guess we chalk that up to pulseaudio
> bugs in 14.04.

Possibly bug 276
http://bugzilla.audacityteam.org/show_bug.cgi?id=276

>
>
> Based on this work I can now recommend we do the following first steps to
> clean up the Linux build mess.
>
> - use "local system" the default

I still don't understand the rationale for this.
Apart from PortAudio, I've not had any problems with system libraries,
though conversely, I've not been able to get ffmpeg to work with local
libraries.


​It's a quality control issue. Using system libraries adds another dimension that can break the build or worse. If the Linux version is going to be stable the best chance of that happening is to use the same foundation as the Mac and Windows version.
 
> - update autotools to make --disable-dynamic-loading and
> --with-ffmpeg=system by default
 
 
I think there was some concern regarding possible patent infringement.


Linking FFmpeg/Libav as a shared library vs loading with dlopen() isn't protecting anyone, those two are doing the same thing. It seems to me the feature (loading FFmpeg at runtime) exists in order to distribute binaries for Mac and Windows sans FFmpeg - which in theory removes Audacity Team from possible infringement and shift it onto the end user.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Linux build instructions in a mess

Stevethefiddle
On http://wiki.audacityteam.org/wiki/User:James/Building_on_Ubuntu
I think the configure command may be missing a "-"

./configure -with-lib-preference="local system"
(should be "--with-lib-preference"?)

For development work / hacking, it is a lot more convenient to make a
build folder, then run configure as:
..configure <options>
as this keeps the object files separate from the source files.

Steve

On 29 July 2017 at 18:53, Darrell Walisser <[hidden email]> wrote:

>
>
> On Fri, Jul 28, 2017 at 4:40 PM, Steve the Fiddle <[hidden email]>
> wrote:
>>
>> On 28 July 2017 at 21:27, Darrell Walisser <[hidden email]>
>> wrote:
>> >
>> >
>> > On Wed, Jul 26, 2017 at 6:21 PM, Darrell Walisser
>> > <[hidden email]> wrote:
>> >>
>> >>
>> >>
>> >> On Mon, Jul 24, 2017 at 4:03 PM, Steve the Fiddle
>> >> <[hidden email]> wrote:
>> >>>
>> >>> On 24 July 2017 at 20:41, James Crook <[hidden email]> wrote:
>> >>> > On 7/24/2017 7:08 PM, Darrell Walisser wrote:
>> >>> >>
>> >>> >> It would be good to include instructions for getting a compatible
>> >>> >> FFmpeg/libav version from source as well. I've always used the
>> >>> >> current
>> >>> >> git
>> >>> >> version installed in /usr/local. If someone can point me in the
>> >>> >> right
>> >>> >> direction (what exactly are the compatible versions?) I can hack
>> >>> >> some
>> >>> >> autoconf foo for it.
>> >>>
>> >>> It depends on the distribution / version.
>> >>>
>> >>> I have just tested with a fully updated vanilla install of Ubuntu
>> >>> 17.04 LTS, and written up detailed notes here:
>> >>> https://forum.audacityteam.org/viewtopic.php?f=19&t=96525
>> >>>
>> >>> Building and installing was very straightforward, using system
>> >>> libraries where available _except_for_portaudio_ and everything,
>> >>> including FFmpeg works straight out of the box.
>> >>>
>> >>
>> >> I did a fresh VM of 17.04 and followed your guide. It seems like a
>> >> minimal
>> >> set of steps. Everything works as described except:
>> >>
>> >>
>> >> lib-src portaudio seems fine, shows ALSA as the host. I verified it was
>> >> v19 and not v20 which was installed in /usr/lib.
>> >>
>> >>
>> >> I needed to add cmake to get ./configure to pass (I assume portaudio)
>> >> and
>> >> I added git for easier download
>> >>    $ sudo apt-get install build-essential cmake git
>> >>
>> >> "make install" step doesn't show the icon in the launcher.
>> >> Not sure if reboot would fix that.
>> >> I needed to run
>> >>    $ sudo desktop-file-install src/audacity.desktop
>> >>
>> >>
>> >> I prefer to use git to save a few steps
>> >>    $ git clone https://github.com/audacity/audacity
>> >>
>> >>
>> >> I also put my build folder one level up from audacity (keep source tree
>> >> unmodified).
>> >> Now configure looks like:
>> >>    $ ../audacity/configure ...
>> >
>> >
>> > Today I've also tested 16.04 and 14.04, with a few new findings.
>> >
>> > ./configure now needs --disable-dynamic-loading as you've noted. I've
>> > also
>> > been reminded Audacity crashes if FFmpeg library is not found and import
>> > is
>> > attempted (bug #1692, maybe it should be raised to P1?)
>> >
>> > Audacity shows up in system menu after reboot. Or immediately with
>> > desktop-file-install utility (also available on 14.04). I assume the
>> > same
>> > behavior in 17.04
>> >
>> > In addition, 14.04 has some issues, nothing too crazy.
>> >
>> > Needs package libwxtgk3.0-dev (mentioned in your 14.04 guide), not
>> > included
>> > with the build-dep.
>> >
>> > As noted elsewhere, gcc-4.9 is needed, this is the minimal sequence:
>> >     $ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
>> >     $ sudo apt-get update
>> >     $ sudo apt-get install gcc-4.9 g++-4.9
>> >     $ export CC=gcc-4.9
>> >     $ export CXX=g++-4.9
>> >
>> > Finally, an unexpected twist... for some reason, this combination of GCC
>> > and
>> > wxwidgets now requires --std=gnu++11 for FileDialog and widget-extra,
>> > where
>> > before it was only needed for audacity/src/.
>> >
>> > I have created a pull request which adds this to configure for each of
>> > those. https://github.com/audacity/audacity/pull/204
>> >
>> > One last thing, if I used the "pulse" output device, audio was garbled
>> > and
>> > then shortly after crashed and had to reboot to get audio back. Using
>> > "dmix"
>> > or another ALSA-native output works fine. This was with the lib-src
>> > portaudio v19 as in all 3 versions. I guess we chalk that up to
>> > pulseaudio
>> > bugs in 14.04.
>>
>> Possibly bug 276
>> http://bugzilla.audacityteam.org/show_bug.cgi?id=276
>>
>> >
>> >
>> > Based on this work I can now recommend we do the following first steps
>> > to
>> > clean up the Linux build mess.
>> >
>> > - use "local system" the default
>>
>> I still don't understand the rationale for this.
>> Apart from PortAudio, I've not had any problems with system libraries,
>> though conversely, I've not been able to get ffmpeg to work with local
>> libraries.
>>
>
> It's a quality control issue. Using system libraries adds another dimension
> that can break the build or worse. If the Linux version is going to be
> stable the best chance of that happening is to use the same foundation as
> the Mac and Windows version.
>
>>
>> > - update autotools to make --disable-dynamic-loading and
>> > --with-ffmpeg=system by default
>>
>>
>>
>> I think there was some concern regarding possible patent infringement.
>>
>
> Linking FFmpeg/Libav as a shared library vs loading with dlopen() isn't
> protecting anyone, those two are doing the same thing. It seems to me the
> feature (loading FFmpeg at runtime) exists in order to distribute binaries
> for Mac and Windows sans FFmpeg - which in theory removes Audacity Team from
> possible infringement and shift it onto the end user.
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> audacity-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/audacity-devel
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Loading...