1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: SteamDevice 2.8.x build on Windows issue |
From: | Freddie Akeroyd - UKRI STFC via Tech-talk <tech-talk at aps.anl.gov> |
To: | Mark Rivers <rivers at cars.uchicago.edu>, '吴煊' <wux at ihep.ac.cn> |
Cc: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Mon, 20 Jul 2020 12:31:01 +0000 |
Hi, I wasn’t able to check your exact combination, but I ran a few visual studio combinations from 2013 to 2019 through Appveyor and they all seemed OK https://ci.appveyor.com/project/FreddieAkeroyd/streamdevice/builds/34184691 Maybe it is picking up an incorrect include or definition from somewhere - if you check the C pre-processor output for the file compilation that
will show what headers are being loaded from where and might help locate the issue
Regards, Freddie From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of Mark Rivers via Tech-talk I just built stream 2.8.14 successfully with both Visual Studio 2015 and Visual Studio 2017. I don’t have 2019 installed so I could not test that, but I would be surprised if it failed. My environment: OS:Windows 10 x64 base:7.0.4 asyn:4-40
MSVC:2015, 2017 Community
GNU make:4.2.1 Perl64:5.24.3 SCNx8 is defined in inttypes.h for Visual Studio. This is where it is found in all of the inttypes.h files in C:\Program Files (x86)\Windows Kits. ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── [2020-07-19 14:46.55] /cygdrive/c/Program Files (x86)/Windows Kits [rivers.Camaro]
➤ find . -name inttypes.h -exec grep -H SCNx8 {} \; ./10/Include/10.0.10150.0/ucrt/inttypes.h:#define SCNx8 "hhx" ./10/Include/10.0.10150.0/ucrt/inttypes.h:#define SCNxLEAST8 SCNx8 ./10/Include/10.0.10150.0/ucrt/inttypes.h:#define SCNxFAST8 SCNx8 ./10/Include/10.0.10240.0/ucrt/inttypes.h:#define SCNx8 "hhx" ./10/Include/10.0.10240.0/ucrt/inttypes.h:#define SCNxLEAST8 SCNx8 ./10/Include/10.0.10240.0/ucrt/inttypes.h:#define SCNxFAST8 SCNx8 ./10/Include/10.0.16299.0/ucrt/inttypes.h:#define SCNx8 "hhx" ./10/Include/10.0.16299.0/ucrt/inttypes.h:#define SCNxLEAST8 SCNx8 ./10/Include/10.0.16299.0/ucrt/inttypes.h:#define SCNxFAST8 SCNx8 ./10/Include/10.0.17763.0/ucrt/inttypes.h:#define SCNx8 "hhx" ./10/Include/10.0.17763.0/ucrt/inttypes.h:#define SCNxLEAST8 SCNx8 ./10/Include/10.0.17763.0/ucrt/inttypes.h:#define SCNxFAST8 SCNx8
I also found that git needed to be installed on Windows to build 2.8.14. For other modules with base 7.0.4 it was sufficient to make “fake” git.bat that just contained: @echo GSECARS-Build However, stream actually checks the syntax of the returned string, and that trick fails. Mark From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of ?? via Tech-talk Hi all, I find that the SteamDevice(from 2.8 to 2.8.14) can not be built on Win7 x64. The error info is :../ChecksumConverter.cc:777:51: error: expected ')' before 'SCNx8'. However the version of 2.7.14 can be built successfully. I've checked
the file ChecksumConverter.cc, there is some difference between them like following:
2.8.x: if (sscanf(input(cursor+2*i), "%2" SCNx8, &inchar) != 1)
2.7.14: if (sscanf(input(cursor+2*i), "%2X", &inchar) != 1)
The software environment I'm using: OS:Win7 x64 base:3.15.8
asyn:4-38
MSVC:2019 community
GNU make:4.2.1 Strawberry:5.30.1 PS:SteamDevice 2.8.14 is dependency with git, the other versions are not
Cheers, Xuan This email and any attachments are intended solely for the use of the named recipients. If you are not the intended recipient you must not use, disclose, copy or distribute this email or any of its attachments and should notify the sender immediately and delete this email from your system. UK Research and Innovation (UKRI) has taken every reasonable precaution to minimise risk of this email or any attachments containing viruses or malware but the recipient should carry out its own virus and malware checks before opening the attachments. UKRI does not accept any liability for any losses or damages which the recipient may sustain due to presence of any viruses. Opinions, conclusions or other information in this message and attachments that are not related directly to UKRI business are solely those of the author and do not represent the views of UKRI. |