Developing on Linux

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

Developing on Linux

Paul Licameli
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?

Once over this hump, I imagine I could figure out how to get portmidi to compile and link by analogy with the other libraries.

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: Developing on Linux

Darrell Walisser


On Fri, Jun 30, 2017 at 6:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?


There are lots of ./configure... (under lib-src) I assume you mean the top-level one.

​I just pulled the current master, not having this issue. If configure is bad, then I immediately suspect configure.ac or one of the macros under m4/

I added some support for portmidi to my crosscompile branch, but only for linking with non-libsrc/external version. Needed that for the windows build. At the time I was unable to crosscompile portmidi from the lib-src copy. Anyways, the relevant commit is here:


Note this may be broken, I haven't rebased or compiled this branch for a while.


------------------------------------------------------------------------------
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: Developing on Linux

Paul Licameli


On Fri, Jun 30, 2017 at 7:34 PM, Darrell Walisser <[hidden email]> wrote:


On Fri, Jun 30, 2017 at 6:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?


There are lots of ./configure... (under lib-src) I assume you mean the top-level one.

​I just pulled the current master, not having this issue. If configure is bad, then I immediately suspect configure.ac or one of the macros under m4/

Assume I am a total noob.  What am I supposed to do with those files on the command line?

I just type
./configure

 but it doesn't go for me.  I see the file has #!/bin/sh so it's supposed to sh itself, but then I am told there are syntax errors in it.

PRL

 

I added some support for portmidi to my crosscompile branch, but only for linking with non-libsrc/external version. Needed that for the windows build. At the time I was unable to crosscompile portmidi from the lib-src copy. Anyways, the relevant commit is here:


Note this may be broken, I haven't rebased or compiled this branch for a while.


------------------------------------------------------------------------------
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: Developing on Linux

Stevethefiddle
In reply to this post by Darrell Walisser
For Dbian / 'buntu distros, try this config command:
../configure CXXFLAGS="-std=gnu++11" --disable-dynamic-loading --enable-debug
and see this post:
https://forum.audacityteam.org/viewtopic.php?f=19&t=88922

Steve

On 1 July 2017 at 00:34, Darrell Walisser <[hidden email]> wrote:

>
>
> On Fri, Jun 30, 2017 at 6:53 PM, Paul Licameli <[hidden email]>
> wrote:
>>
>> I am very tardily (sorry) figuring out linux builds for myself, and these
>> pages still look very dated.
>> http://wiki.audacityteam.org/wiki/Developing_On_Linux
>>
>> I'm stalled at running ./configure.  I am told there are syntax errors
>> starting at line 30.
>>
>> Help please?
>>
>
> There are lots of ./configure... (under lib-src) I assume you mean the
> top-level one.
>
> I just pulled the current master, not having this issue. If configure is
> bad, then I immediately suspect configure.ac or one of the macros under m4/
>
> I added some support for portmidi to my crosscompile branch, but only for
> linking with non-libsrc/external version. Needed that for the windows build.
> At the time I was unable to crosscompile portmidi from the lib-src copy.
> Anyways, the relevant commit is here:
>
> https://github.com/audacity/audacity/pull/161/commits/208b5cbdc4a1bbb0d5ecb1023a96098e7bea1781
>
> Note this may be broken, I haven't rebased or compiled this branch for a
> while.
>
>
> ------------------------------------------------------------------------------
> 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: Developing on Linux

Pokechu22
In reply to this post by Paul Licameli
I also have a portmidi automake file (based off of the ones that were present at 932ca88255), which is currently on my midi-out-2 branch (not finished yet, and the config does seem to be somewhat broken right now but I'll detail that later).

One thing that the article is confusing about: you need to run autoreconf --no-recursive -i before you run ./configure; autoreconf regenerates the configure script.

--Poke

On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?

Once over this hump, I imagine I could figure out how to get portmidi to compile and link by analogy with the other libraries.

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: Developing on Linux

Darrell Walisser
In reply to this post by Paul Licameli


On Fri, Jun 30, 2017 at 7:41 PM, Paul Licameli <[hidden email]> wrote:


On Fri, Jun 30, 2017 at 7:34 PM, Darrell Walisser <[hidden email]> wrote:


On Fri, Jun 30, 2017 at 6:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?


There are lots of ./configure... (under lib-src) I assume you mean the top-level one.

​I just pulled the current master, not having this issue. If configure is bad, then I immediately suspect configure.ac or one of the macros under m4/

Assume I am a total noob.  What am I supposed to do with those files on the command line?

I just type
./configure

 but it doesn't go for me.  I see the file has #!/bin/sh so it's supposed to sh itself, but then I am told there are syntax errors in it.


​I did just that; ./configure is all that's needed assuming nothing is broken in the build. The equivalent is "sh -c ./configure" in case something is wrong with your shell.



------------------------------------------------------------------------------
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: Developing on Linux

Paul Licameli
In reply to this post by Stevethefiddle


On Fri, Jun 30, 2017 at 7:44 PM, Steve the Fiddle <[hidden email]> wrote:
For Dbian / 'buntu distros, try this config command:
../configure CXXFLAGS="-std=gnu++11" --disable-dynamic-loading --enable-debug
and see this post:
https://forum.audacityteam.org/viewtopic.php?f=19&t=88922

Steve

What says pwd when you type ../ there?

PRL

 

On 1 July 2017 at 00:34, Darrell Walisser <[hidden email]> wrote:
>
>
> On Fri, Jun 30, 2017 at 6:53 PM, Paul Licameli <[hidden email]>
> wrote:
>>
>> I am very tardily (sorry) figuring out linux builds for myself, and these
>> pages still look very dated.
>> http://wiki.audacityteam.org/wiki/Developing_On_Linux
>>
>> I'm stalled at running ./configure.  I am told there are syntax errors
>> starting at line 30.
>>
>> Help please?
>>
>
> There are lots of ./configure... (under lib-src) I assume you mean the
> top-level one.
>
> I just pulled the current master, not having this issue. If configure is
> bad, then I immediately suspect configure.ac or one of the macros under m4/
>
> I added some support for portmidi to my crosscompile branch, but only for
> linking with non-libsrc/external version. Needed that for the windows build.
> At the time I was unable to crosscompile portmidi from the lib-src copy.
> Anyways, the relevant commit is here:
>
> https://github.com/audacity/audacity/pull/161/commits/208b5cbdc4a1bbb0d5ecb1023a96098e7bea1781
>
> Note this may be broken, I haven't rebased or compiled this branch for a
> while.
>
>
> ------------------------------------------------------------------------------
> 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: Developing on Linux

Stevethefiddle
On 1 July 2017 at 01:57, Paul Licameli <[hidden email]> wrote:

>
>
> On Fri, Jun 30, 2017 at 7:44 PM, Steve the Fiddle <[hidden email]>
> wrote:
>>
>> For Dbian / 'buntu distros, try this config command:
>> ../configure CXXFLAGS="-std=gnu++11" --disable-dynamic-loading
>> --enable-debug
>> and see this post:
>> https://forum.audacityteam.org/viewtopic.php?f=19&t=88922
>>
>> Steve
>
>
> What says pwd when you type ../ there?

I'm not sure what you are asking.
If the root of the Audacity source code is at:

/home/my-user-name/sourcecode/audacity

then I create a sub-directory "build".

/home/my-user-name/sourcecode/audacity/build

I then navigate into the build directory, for example

cd "/home/my-user-name/sourcecode/audacity/build"

and run the config command from there with two dots.
The "build" directory is in the same folder as "src", "lib-src",
"include" and the rest.
(and remember that Linux is fully case-sensitive)

The purpose of the "build" directory is to avoid littering the source
code with object files.

Steve


>
> PRL
>
>
>>
>>
>> On 1 July 2017 at 00:34, Darrell Walisser <[hidden email]>
>> wrote:
>> >
>> >
>> > On Fri, Jun 30, 2017 at 6:53 PM, Paul Licameli <[hidden email]>
>> > wrote:
>> >>
>> >> I am very tardily (sorry) figuring out linux builds for myself, and
>> >> these
>> >> pages still look very dated.
>> >> http://wiki.audacityteam.org/wiki/Developing_On_Linux
>> >>
>> >> I'm stalled at running ./configure.  I am told there are syntax errors
>> >> starting at line 30.
>> >>
>> >> Help please?
>> >>
>> >
>> > There are lots of ./configure... (under lib-src) I assume you mean the
>> > top-level one.
>> >
>> > I just pulled the current master, not having this issue. If configure is
>> > bad, then I immediately suspect configure.ac or one of the macros under
>> > m4/
>> >
>> > I added some support for portmidi to my crosscompile branch, but only
>> > for
>> > linking with non-libsrc/external version. Needed that for the windows
>> > build.
>> > At the time I was unable to crosscompile portmidi from the lib-src copy.
>> > Anyways, the relevant commit is here:
>> >
>> >
>> > https://github.com/audacity/audacity/pull/161/commits/208b5cbdc4a1bbb0d5ecb1023a96098e7bea1781
>> >
>> > Note this may be broken, I haven't rebased or compiled this branch for a
>> > while.
>> >
>> >
>> >
>> > ------------------------------------------------------------------------------
>> > 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: Developing on Linux

Paul Licameli
In reply to this post by Pokechu22
I thought I just type ./configure.  But I am told 
bash: ./configure: Permission denied

Then I try chmod +x configure but ls -l still tells me it is not executable.  I am trying to reuse the same external storage device that I also used from the Windows partition to build the source tree.  I don't know if something in the file system denies me using chmod.

I try
sh configure

Now it appears that sh is interpreting the file, but I get

: not found14: configure:
configure: 30: configure: Syntax error: newline unexpected (expecting ")")

Does anyone know how to interpret these symptoms?

How do I find out if I have the right version of sh?

PRL


On Fri, Jun 30, 2017 at 7:44 PM, Pokechu22 <[hidden email]> wrote:
I also have a portmidi automake file (based off of the ones that were present at 932ca88255), which is currently on my midi-out-2 branch (not finished yet, and the config does seem to be somewhat broken right now but I'll detail that later).

One thing that the article is confusing about: you need to run autoreconf --no-recursive -i before you run ./configure; autoreconf regenerates the configure script.

--Poke

On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?

Once over this hump, I imagine I could figure out how to get portmidi to compile and link by analogy with the other libraries.

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: Developing on Linux

Paul Licameli
man sh brings up a man page for dash


On Sat, Jul 1, 2017 at 10:11 AM, Paul Licameli <[hidden email]> wrote:
I thought I just type ./configure.  But I am told 
bash: ./configure: Permission denied

Then I try chmod +x configure but ls -l still tells me it is not executable.  I am trying to reuse the same external storage device that I also used from the Windows partition to build the source tree.  I don't know if something in the file system denies me using chmod.

I try
sh configure

Now it appears that sh is interpreting the file, but I get

: not found14: configure:
configure: 30: configure: Syntax error: newline unexpected (expecting ")")

Does anyone know how to interpret these symptoms?

How do I find out if I have the right version of sh?

PRL


On Fri, Jun 30, 2017 at 7:44 PM, Pokechu22 <[hidden email]> wrote:
I also have a portmidi automake file (based off of the ones that were present at 932ca88255), which is currently on my midi-out-2 branch (not finished yet, and the config does seem to be somewhat broken right now but I'll detail that later).

One thing that the article is confusing about: you need to run autoreconf --no-recursive -i before you run ./configure; autoreconf regenerates the configure script.

--Poke

On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?

Once over this hump, I imagine I could figure out how to get portmidi to compile and link by analogy with the other libraries.

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: Developing on Linux

Paul Licameli
aclocal then autoconf modified configure for me, now I can sh it, but now I am stopped here:
checking whether we are cross compiling...
configure: error: cannot run C compiled programs.
If you meant to cross compile, use '--host'.

config.log tells me that configure tried running gcc to make a small executable, then run it, but permission was denied to run it.

PRL


On Sat, Jul 1, 2017 at 10:17 AM, Paul Licameli <[hidden email]> wrote:
man sh brings up a man page for dash


On Sat, Jul 1, 2017 at 10:11 AM, Paul Licameli <[hidden email]> wrote:
I thought I just type ./configure.  But I am told 
bash: ./configure: Permission denied

Then I try chmod +x configure but ls -l still tells me it is not executable.  I am trying to reuse the same external storage device that I also used from the Windows partition to build the source tree.  I don't know if something in the file system denies me using chmod.

I try
sh configure

Now it appears that sh is interpreting the file, but I get

: not found14: configure:
configure: 30: configure: Syntax error: newline unexpected (expecting ")")

Does anyone know how to interpret these symptoms?

How do I find out if I have the right version of sh?

PRL


On Fri, Jun 30, 2017 at 7:44 PM, Pokechu22 <[hidden email]> wrote:
I also have a portmidi automake file (based off of the ones that were present at 932ca88255), which is currently on my midi-out-2 branch (not finished yet, and the config does seem to be somewhat broken right now but I'll detail that later).

One thing that the article is confusing about: you need to run autoreconf --no-recursive -i before you run ./configure; autoreconf regenerates the configure script.

--Poke

On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?

Once over this hump, I imagine I could figure out how to get portmidi to compile and link by analogy with the other libraries.

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: Developing on Linux

Paul Licameli
I think I identified the problem -- I have an external drive that Ubuntu can read and write, but it silently fails to add +x permission to anything.  I don't know why that is, but I can copy the source tree elsewhere onto the internal drive and I don't have that problem, and I can run the unchanged configure file.

Good!  Now I must figure out other lesser difficulties, like getting the right version of gcc.

PRL


On Sat, Jul 1, 2017 at 10:25 AM, Paul Licameli <[hidden email]> wrote:
aclocal then autoconf modified configure for me, now I can sh it, but now I am stopped here:
checking whether we are cross compiling...
configure: error: cannot run C compiled programs.
If you meant to cross compile, use '--host'.

config.log tells me that configure tried running gcc to make a small executable, then run it, but permission was denied to run it.

PRL


On Sat, Jul 1, 2017 at 10:17 AM, Paul Licameli <[hidden email]> wrote:
man sh brings up a man page for dash


On Sat, Jul 1, 2017 at 10:11 AM, Paul Licameli <[hidden email]> wrote:
I thought I just type ./configure.  But I am told 
bash: ./configure: Permission denied

Then I try chmod +x configure but ls -l still tells me it is not executable.  I am trying to reuse the same external storage device that I also used from the Windows partition to build the source tree.  I don't know if something in the file system denies me using chmod.

I try
sh configure

Now it appears that sh is interpreting the file, but I get

: not found14: configure:
configure: 30: configure: Syntax error: newline unexpected (expecting ")")

Does anyone know how to interpret these symptoms?

How do I find out if I have the right version of sh?

PRL


On Fri, Jun 30, 2017 at 7:44 PM, Pokechu22 <[hidden email]> wrote:
I also have a portmidi automake file (based off of the ones that were present at 932ca88255), which is currently on my midi-out-2 branch (not finished yet, and the config does seem to be somewhat broken right now but I'll detail that later).

One thing that the article is confusing about: you need to run autoreconf --no-recursive -i before you run ./configure; autoreconf regenerates the configure script.

--Poke

On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli <[hidden email]> wrote:
I am very tardily (sorry) figuring out linux builds for myself, and these pages still look very dated.  http://wiki.audacityteam.org/wiki/Developing_On_Linux

I'm stalled at running ./configure.  I am told there are syntax errors starting at line 30.

Help please?

Once over this hump, I imagine I could figure out how to get portmidi to compile and link by analogy with the other libraries.

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: Developing on Linux

edgar-rft
Am Sat, 1 Jul 2017 10:38:50 -0400
schrieb Paul Licameli <[hidden email]>:

> I think I identified the problem -- I have an external drive that
> Ubuntu can read and write, but it silently fails to add +x permission
> to anything.  I don't know why that is, but I can copy the source tree
> elsewhere onto the internal drive and I don't have that problem, and
> I can run the unchanged configure file.

Windows usues different file permission bits than Linux. This means that
if you have checked out the code under Windows, Linux will interpret the
file permissions wrong. Also Windows checkouts have CRLF linebreaks,
while Linux needs LF-only linebreaks.

>
> Good!  Now I must figure out other lesser difficulties, like getting
> the right version of gcc.
>
> PRL
>
>
> On Sat, Jul 1, 2017 at 10:25 AM, Paul Licameli
> <[hidden email]> wrote:
>
> > aclocal then autoconf modified configure for me, now I can sh it,
> > but now I am stopped here:
> > checking whether we are cross compiling...
> > configure: error: cannot run C compiled programs.
> > If you meant to cross compile, use '--host'.
> >
> > config.log tells me that configure tried running gcc to make a small
> > executable, then run it, but permission was denied to run it.
> >
> > PRL
> >
> >
> > On Sat, Jul 1, 2017 at 10:17 AM, Paul Licameli
> > <[hidden email]> wrote:
> >
> >> man sh brings up a man page for dash
> >>
> >>
> >> On Sat, Jul 1, 2017 at 10:11 AM, Paul Licameli
> >> <[hidden email]> wrote:
> >>
> >>> I thought I just type ./configure.  But I am told
> >>> bash: ./configure: Permission denied
> >>>
> >>> Then I try chmod +x configure but ls -l still tells me it is not
> >>> executable.  I am trying to reuse the same external storage
> >>> device that I also used from the Windows partition to build the
> >>> source tree.  I don't know if something in the file system denies
> >>> me using chmod.
> >>>
> >>> I try
> >>> sh configure
> >>>
> >>> Now it appears that sh is interpreting the file, but I get
> >>>
> >>> : not found14: configure:
> >>> configure: 30: configure: Syntax error: newline unexpected
> >>> (expecting ")")
> >>>
> >>> Does anyone know how to interpret these symptoms?
> >>>
> >>> How do I find out if I have the right version of sh?
> >>>
> >>> PRL
> >>>
> >>>
> >>> On Fri, Jun 30, 2017 at 7:44 PM, Pokechu22 <
> >>> [hidden email]> wrote:
> >>>
> >>>> I also have a portmidi automake file (based off of the ones that
> >>>> were present at 932ca88255), which is currently on my midi-out-2
> >>>> branch (not finished yet, and the config does seem to be
> >>>> somewhat broken right now but I'll detail that later).
> >>>>
> >>>> One thing that the article is confusing about: you need to run
> >>>> autoreconf --no-recursive -i *before* you run ./configure;
> >>>> autoreconf regenerates the configure script.
> >>>>
> >>>> --Poke
> >>>>
> >>>> On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli
> >>>> <[hidden email]
> >>>> > wrote:
> >>>>
> >>>>> I am very tardily (sorry) figuring out linux builds for myself,
> >>>>> and these pages still look very dated.
> >>>>> http://wiki.audacityteam.org/ wiki/Developing_On_Linux
> >>>>>
> >>>>> I'm stalled at running ./configure.  I am told there are syntax
> >>>>> errors starting at line 30.
> >>>>>
> >>>>> Help please?
> >>>>>
> >>>>> Once over this hump, I imagine I could figure out how to get
> >>>>> portmidi to compile and link by analogy with the other
> >>>>> libraries.
> >>>>>
> >>>>> 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
> >>>>
> >>>>
> >>>
> >>
> >



--
The author of this email does not necessarily endorse the following
advertisements, which are the sole responsibility of the advertiser:


------------------------------------------------------------------------------
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: Developing on Linux

Paul Licameli


On Sat, Jul 1, 2017 at 12:00 PM, edgar <[hidden email]> wrote:
Am Sat, 1 Jul 2017 10:38:50 -0400
schrieb Paul Licameli <[hidden email]>:

> I think I identified the problem -- I have an external drive that
> Ubuntu can read and write, but it silently fails to add +x permission
> to anything.  I don't know why that is, but I can copy the source tree
> elsewhere onto the internal drive and I don't have that problem, and
> I can run the unchanged configure file.

Windows usues different file permission bits than Linux. This means that
if you have checked out the code under Windows, Linux will interpret the
file permissions wrong. Also Windows checkouts have CRLF linebreaks,
while Linux needs LF-only linebreaks.

I think there's something more fundamental than that.  It's not just git.  From the command line, I can't change the x permission on any files on that drive.

So maybe I must repartition it and let Linux reformat a part of it, or some such thing.  Or, as I did, just copy the tree to partition of the internal drive I made when I set up my dual boot.

PRL

 

>
> Good!  Now I must figure out other lesser difficulties, like getting
> the right version of gcc.
>
> PRL
>
>
> On Sat, Jul 1, 2017 at 10:25 AM, Paul Licameli
> <[hidden email]> wrote:
>
> > aclocal then autoconf modified configure for me, now I can sh it,
> > but now I am stopped here:
> > checking whether we are cross compiling...
> > configure: error: cannot run C compiled programs.
> > If you meant to cross compile, use '--host'.
> >
> > config.log tells me that configure tried running gcc to make a small
> > executable, then run it, but permission was denied to run it.
> >
> > PRL
> >
> >
> > On Sat, Jul 1, 2017 at 10:17 AM, Paul Licameli
> > <[hidden email]> wrote:
> >
> >> man sh brings up a man page for dash
> >>
> >>
> >> On Sat, Jul 1, 2017 at 10:11 AM, Paul Licameli
> >> <[hidden email]> wrote:
> >>
> >>> I thought I just type ./configure.  But I am told
> >>> bash: ./configure: Permission denied
> >>>
> >>> Then I try chmod +x configure but ls -l still tells me it is not
> >>> executable.  I am trying to reuse the same external storage
> >>> device that I also used from the Windows partition to build the
> >>> source tree.  I don't know if something in the file system denies
> >>> me using chmod.
> >>>
> >>> I try
> >>> sh configure
> >>>
> >>> Now it appears that sh is interpreting the file, but I get
> >>>
> >>> : not found14: configure:
> >>> configure: 30: configure: Syntax error: newline unexpected
> >>> (expecting ")")
> >>>
> >>> Does anyone know how to interpret these symptoms?
> >>>
> >>> How do I find out if I have the right version of sh?
> >>>
> >>> PRL
> >>>
> >>>
> >>> On Fri, Jun 30, 2017 at 7:44 PM, Pokechu22 <
> >>> [hidden email]> wrote:
> >>>
> >>>> I also have a portmidi automake file (based off of the ones that
> >>>> were present at 932ca88255), which is currently on my midi-out-2
> >>>> branch (not finished yet, and the config does seem to be
> >>>> somewhat broken right now but I'll detail that later).
> >>>>
> >>>> One thing that the article is confusing about: you need to run
> >>>> autoreconf --no-recursive -i *before* you run ./configure;
> >>>> autoreconf regenerates the configure script.
> >>>>
> >>>> --Poke
> >>>>
> >>>> On Fri, Jun 30, 2017 at 3:53 PM, Paul Licameli
> >>>> <[hidden email]
> >>>> > wrote:
> >>>>
> >>>>> I am very tardily (sorry) figuring out linux builds for myself,
> >>>>> and these pages still look very dated.
> >>>>> http://wiki.audacityteam.org/ wiki/Developing_On_Linux
> >>>>>
> >>>>> I'm stalled at running ./configure.  I am told there are syntax
> >>>>> errors starting at line 30.
> >>>>>
> >>>>> Help please?
> >>>>>
> >>>>> Once over this hump, I imagine I could figure out how to get
> >>>>> portmidi to compile and link by analogy with the other
> >>>>> libraries.
> >>>>>
> >>>>> 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
> >>>>
> >>>>
> >>>
> >>
> >



--
The author of this email does not necessarily endorse the following
advertisements, which are the sole responsibility of the advertiser:


------------------------------------------------------------------------------
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: Developing on Linux

Darrell Walisser


On Sat, Jul 1, 2017 at 12:23 PM, Paul Licameli <[hidden email]> wrote:


On Sat, Jul 1, 2017 at 12:00 PM, edgar <[hidden email]> wrote:
Am Sat, 1 Jul 2017 10:38:50 -0400
schrieb Paul Licameli <[hidden email]>:

> I think I identified the problem -- I have an external drive that
> Ubuntu can read and write, but it silently fails to add +x permission
> to anything.  I don't know why that is, but I can copy the source tree
> elsewhere onto the internal drive and I don't have that problem, and
> I can run the unchanged configure file.

Windows usues different file permission bits than Linux. This means that
if you have checked out the code under Windows, Linux will interpret the
file permissions wrong. Also Windows checkouts have CRLF linebreaks,
while Linux needs LF-only linebreaks.

I think there's something more fundamental than that.  It's not just git.  From the command line, I can't change the x permission on any files on that drive.

So maybe I must repartition it and let Linux reformat a part of it, or some such thing.  Or, as I did, just copy the tree to partition of the internal drive I made when I set up my dual boot.


​The CRLF will definitely trip up shell scripts like configure. This explains why regenerating configure corrected one issue. To avoid future mishaps, us a separate git clone on each system.

Your shell should be bash normally. In theory the build system is sh compatible but I doubt anyone has validated that, the default shell is bash in most distros.

As for the non-execute thing, probably the drive was auto-mounted with "noexec" flag as a default security measure. You can override that, but I recommend instead to use a separate clone. Also solves the CRLF issue.




------------------------------------------------------------------------------
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: Developing on Linux

Paul Licameli


On Sat, Jul 1, 2017 at 1:34 PM, Darrell Walisser <[hidden email]> wrote:


On Sat, Jul 1, 2017 at 12:23 PM, Paul Licameli <[hidden email]> wrote:


On Sat, Jul 1, 2017 at 12:00 PM, edgar <[hidden email]> wrote:
Am Sat, 1 Jul 2017 10:38:50 -0400
schrieb Paul Licameli <[hidden email]>:

> I think I identified the problem -- I have an external drive that
> Ubuntu can read and write, but it silently fails to add +x permission
> to anything.  I don't know why that is, but I can copy the source tree
> elsewhere onto the internal drive and I don't have that problem, and
> I can run the unchanged configure file.

Windows usues different file permission bits than Linux. This means that
if you have checked out the code under Windows, Linux will interpret the
file permissions wrong. Also Windows checkouts have CRLF linebreaks,
while Linux needs LF-only linebreaks.

I think there's something more fundamental than that.  It's not just git.  From the command line, I can't change the x permission on any files on that drive.

So maybe I must repartition it and let Linux reformat a part of it, or some such thing.  Or, as I did, just copy the tree to partition of the internal drive I made when I set up my dual boot.


​The CRLF will definitely trip up shell scripts like configure. This explains why regenerating configure corrected one issue. To avoid future mishaps, us a separate git clone on each system.

Your shell should be bash normally. In theory the build system is sh compatible but I doubt anyone has validated that, the default shell is bash in most distros.

configure starts with #!/bin/sh so that is the shell that it really uses.

Yes, I suppose line endings explain the syntax errors from sh, and checking configure out again from the git repository fixed that, but the noexec was another obstacle.

PRL

 

As for the non-execute thing, probably the drive was auto-mounted with "noexec" flag as a default security measure. You can override that, but I recommend instead to use a separate clone. Also solves the CRLF issue.
 




------------------------------------------------------------------------------
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: Developing on Linux

Darrell Walisser
/bin/sh is usually symlinked to one of the sh-compatible shells. On my system that appears to be /bin/dash. I could swear it was bash at one point.

On Sat, Jul 1, 2017 at 2:28 PM, Paul Licameli <[hidden email]> wrote:


On Sat, Jul 1, 2017 at 1:34 PM, Darrell Walisser <[hidden email]> wrote:


On Sat, Jul 1, 2017 at 12:23 PM, Paul Licameli <[hidden email]> wrote:


On Sat, Jul 1, 2017 at 12:00 PM, edgar <[hidden email]> wrote:
Am Sat, 1 Jul 2017 10:38:50 -0400
schrieb Paul Licameli <[hidden email]>:

> I think I identified the problem -- I have an external drive that
> Ubuntu can read and write, but it silently fails to add +x permission
> to anything.  I don't know why that is, but I can copy the source tree
> elsewhere onto the internal drive and I don't have that problem, and
> I can run the unchanged configure file.

Windows usues different file permission bits than Linux. This means that
if you have checked out the code under Windows, Linux will interpret the
file permissions wrong. Also Windows checkouts have CRLF linebreaks,
while Linux needs LF-only linebreaks.

I think there's something more fundamental than that.  It's not just git.  From the command line, I can't change the x permission on any files on that drive.

So maybe I must repartition it and let Linux reformat a part of it, or some such thing.  Or, as I did, just copy the tree to partition of the internal drive I made when I set up my dual boot.


​The CRLF will definitely trip up shell scripts like configure. This explains why regenerating configure corrected one issue. To avoid future mishaps, us a separate git clone on each system.

Your shell should be bash normally. In theory the build system is sh compatible but I doubt anyone has validated that, the default shell is bash in most distros.

configure starts with #!/bin/sh so that is the shell that it really uses.

Yes, I suppose line endings explain the syntax errors from sh, and checking configure out again from the git repository fixed that, but the noexec was another obstacle.

PRL

 

As for the non-execute thing, probably the drive was auto-mounted with "noexec" flag as a default security measure. You can override that, but I recommend instead to use a separate clone. Also solves the CRLF issue.
 




------------------------------------------------------------------------------
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: Developing on Linux

Richard Ash (audacity-help)
In reply to this post by Paul Licameli
On Sat, 1 Jul 2017 10:38:50 -0400
Paul Licameli <[hidden email]> wrote:

> I think I identified the problem -- I have an external drive that
> Ubuntu can read and write, but it silently fails to add +x permission
> to anything.  I don't know why that is, but I can copy the source tree
> elsewhere onto the internal drive and I don't have that problem, and
> I can run the unchanged configure file.
Your external drive almost certainly isn't formatted with a file system
that supports the POSIX permissions model (especially if it was
formatted from Windows). As you found, you need a fully POSIX file
system in order for the build tools (notably make) to run. Even if you
got round the execute bit problem you would have hit problems with file
name case later on.

Added note, you should check out the source code with git under Linux,
not use a git tree which was checked out under Windows, because git
will do some things (like setting end of line characters and execute
bits) which are specific to the platform you are checking out on.
https://help.github.com/articles/dealing-with-line-endings/
Most of the Audacity source tree is fairly tolerant, but we don't
support building copied trees so I'm sure there will be issues hiding.

If the 'c++' executable in your PATH isn't the c++ compiler you want to
use, then you can set the compiler on the configure command line, e.g.
./configure CC=/usr/i686-pc-linux-gnu/gcc-bin/5.4.0/gcc
CXX=/usr/i686-pc-linux-gnu/gcc-bin/5.4.0/g++

doing the command in this order means that the values are cached and
will be re-used in the future.

Richard

------------------------------------------------------------------------------
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...