Re: Windows 32-bit release build broken when using VS 2019

"Leland" <[email protected]>
Newsgroups gmane.comp.audio.audacity.devel
Message-ID <[email protected]>
Okay Peter, you can test out https://github.com/audacity/audacity/actions/runs/664608566 when it’s done building.

 

From: Peter Sampson <[email protected]> 
Sent: Thursday, March 18, 2021 7:55 AM
To: Devel <[email protected]>; Peter Sampson <[email protected]>
Subject: Re: [Audacity-devel] Windows 32-bit release build broken when using VS 2019

 

 

 

On Thu, Mar 18, 2021 at 12:48 PM Leland <[email protected] <mailto:[email protected]> > wrote:

Yep, you are indeed correct and you figured out why I was receiving the warnings.  😊  

 

But, we’ll want to use your solution, not the change from the pull request since that will reintroduce the performance issue.

 

Indeed we certainly would not want to reintroduce the Bug #2457 performance issue.  🤔

WAV export is one of the basis of Audacity.

 

Please just remind me to retest 2457 after any changes.

 

Thanks,

 

Peter.

 

 

 

From: David Bailes <[email protected] <mailto:[email protected]> > 
Sent: Thursday, March 18, 2021 7:11 AM
To: Audacity Development <[email protected] <mailto:[email protected]> >
Subject: Re: [Audacity-devel] Windows 32-bit release build broken when using VS 2019

 

On Wed, 17 Mar 2021 at 00:37, Leland <[email protected] <mailto:[email protected]> > wrote:

HAHAHAH!!!! SPOT ON!  Yes, that’s exactly it and David’s suggestion is the exact fix.  I guess I’m a little late to the party.  😃

 

But we’ll also want to wrap the functions in:

 

       #pragma warning( disable : 4163 )

       #pragma warning( default: 4163 )

 

To get rid of a warning induced by the “#pragma function” usage.

 

If you add the line 

#pragma function(lrint, lrintf)    //do not use intrinsic functions

 

there is no need for the #pragma warning lines (llrint and llrintf are not intrinsic).

 

Note this commit:

https://github.com/audacity/audacity/commit/3d90f8074aabe37a912e73392942cc0b99bcde9a

 

David.

 

 

From: John Colket <[email protected] <mailto:[email protected]> > 
Sent: Tuesday, March 16, 2021 5:49 PM
To: Devel <[email protected] <mailto:[email protected]> >
Subject: Re: [Audacity-devel] Windows 32-bit release build broken when using VS 2019

 

David Bailes noted the possibility of re-introducing bug #2457, which I believe may be exactly what you are referring to.  See also https://github.com/audacity/audacity/pull/750.  - John

 

On Tue, Mar 16, 2021 at 6:39 PM Leland <[email protected] <mailto:[email protected]> > wrote:

Incidentally, this was discussed in a forum topic on March 3rd:

 

https://forum.audacityteam.org/viewtopic.php?f=19 <https://forum.audacityteam.org/viewtopic.php?f=19&t=116165&start=10> &t=116165&start=10

 

I didn’t run into the problem until today since I don’t do release builds very often and it doesn’t happen in Debug builds (intrinsics must be disabled in Debug builds).

 

From: Leland <[email protected] <mailto:[email protected]> > 
Sent: Tuesday, March 16, 2021 5:29 PM
To: [email protected] <mailto:[email protected]> 
Subject: [Audacity-devel] Windows 32-bit release build broken when using VS 2019

 

This has started happening within the last few days and, near as I can tell, is due to an update of VS2019.  The last github action build to work was 8 days ago for bug 2688.  It was built using 16.8.3 of VS2019.  The last github action build (for a pull request) failed and it was using 16.9.0 of VS2019.  

 

Sample error messages:

 

2021-03-16T06:34:31.4733984Z   D:\a\audacity\audacity\src\float_cast.h(61,2): error C2169: 'lrint': intrinsic function, cannot be defined (compiling source file D:\a\audacity\audacity\src\AudioIO.cpp) [D:\a\audacity\audacity\build\src\Audacity.vcxproj]

2021-03-16T06:34:31.4735494Z   D:\a\audacity\audacity\src\float_cast.h(73,2): error C2169: 'lrintf': intrinsic function, cannot be defined (compiling source file D:\a\audacity\audacity\src\AudioIO.cpp) [D:\a\audacity\audacity\build\src\Audacity.vcxproj]

 

So the knee-jerk reaction is to simply stop using our versions of the various “rint()” functions.  I tried that a while back and our performance tanked. So, I just it a try again:

 

With 16.9.2 and our “rint” functions removed, exporting a 2 hour projects to WAV takes 2 minutes 34!  Using the last github build that worked (VS 16.8.3) which is using our versions of the “rint” functions takes a mere 17 seconds.

 

I’m still looking for a better solution than just trashing our “rint” functions and whether the VS 16.8 vs is VS 16.9 is causing the problem.

 

I bring this up because you know folks are going to start building with 16.9 since it’s the latest downloadable from Microsort.

 

_______________________________________________
audacity-devel mailing list
[email protected] <mailto:[email protected]> 
https://lists.sourceforge.net/lists/listinfo/audacity-devel

_______________________________________________
audacity-devel mailing list
[email protected] <mailto:[email protected]> 
https://lists.sourceforge.net/lists/listinfo/audacity-devel

_______________________________________________
audacity-devel mailing list
[email protected] <mailto:[email protected]> 
https://lists.sourceforge.net/lists/listinfo/audacity-devel

_______________________________________________
audacity-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.