[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17629525#comment-17629525 ] Apache Arrow JIRA Bot commented on ARROW-16778: --- This issue was last updated over 90 days ago, which may be an indication it is no longer being actively worked. To better reflect the current state, the issue is being unassigned per [project policy|https://arrow.apache.org/docs/dev/developers/bug_reports.html#issue-assignment]. Please feel free to re-take assignment of the issue if it is being actively worked, or if you plan to start that work soon. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Assignee: Arkadiy Vertleyb >Priority: Major > Labels: pull-request-available > Time Spent: 6h 10m > Remaining Estimate: 0h > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17563787#comment-17563787 ] Arkadiy Vertleyb commented on ARROW-16778: -- [~jduong] sorry, I am still waiting on my employer to approve my open source contribution. If you can still see my patch you can apply it manually - it's a few lines of code here and there. Fixed compile and unit tests, but not warnings. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Assignee: Arkadiy Vertleyb >Priority: Major > Labels: pull-request-available > Time Spent: 2h 20m > Remaining Estimate: 0h > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17561100#comment-17561100 ] James Duong commented on ARROW-16778: - [~avertleyb] , I saw that your PR is closed and that you were going to resubmit it. Do you need help finishing this off? I'm highly interested in this patch. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Assignee: Arkadiy Vertleyb >Priority: Major > Labels: pull-request-available > Time Spent: 1h 20m > Remaining Estimate: 0h > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553792#comment-17553792 ] Kouhei Sutou commented on ARROW-16778: -- Assigned. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Assignee: Arkadiy Vertleyb >Priority: Major > Labels: pull-request-available > Time Spent: 0.5h > Remaining Estimate: 0h > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553785#comment-17553785 ] Arkadiy Vertleyb commented on ARROW-16778: -- Can someone assign this Jjira to me? Or how do I assign it to myself? I need to move it so that my PR can proceed. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > Labels: pull-request-available > Time Spent: 0.5h > Remaining Estimate: 0h > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553781#comment-17553781 ] Arkadiy Vertleyb commented on ARROW-16778: -- Submitted > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > Labels: pull-request-available > Time Spent: 10m > Remaining Estimate: 0h > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553764#comment-17553764 ] Arkadiy Vertleyb commented on ARROW-16778: -- And this is fixed by the following: @@ -1280,7 +1280,7 @@ Status MemoryAdviseWillNeed(const std::vector& regions) { PrefetchEntry(const MemoryRegion& region) // NOLINT runtime/explicit : VirtualAddress(region.addr), NumberOfBytes(region.size) {} }; - using PrefetchVirtualMemoryFunc = BOOL (*)(HANDLE, ULONG_PTR, PrefetchEntry*, ULONG); + using PrefetchVirtualMemoryFunc = BOOL (__stdcall *)(HANDLE, ULONG_PTR, PrefetchEntry*, ULONG); > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553746#comment-17553746 ] Arkadiy Vertleyb commented on ARROW-16778: -- [~willjones127] [~kou] The next problem I am having is: Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention. On this line in io_util.cc: if (!entries.empty() && !prefetch_virtual_memory(GetCurrentProcess(), > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553743#comment-17553743 ] Arkadiy Vertleyb commented on ARROW-16778: -- [~willjones127][~kou] The following patch fixes the issue (this is in the code I was advised to use as a fallback: @@ -255,7 +262,7 @@ static inline int CountTrailingZeros(uint64_t value) { #else int bitpos = 0; if (value) { -while (value & 1 == 0) { +while ((value & 1) == 0) { value >>= 1; ++bitpos; } > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553262#comment-17553262 ] Kouhei Sutou commented on ARROW-16778: -- > I don't know why we are not documenting it (Kouhei Sutou do you know?) I also don't know. (I think that we just didn't do it.) We can document it. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552978#comment-17552978 ] Arkadiy Vertleyb commented on ARROW-16778: -- [~willjones127] Can you try the following under your 32 bit architecture (where tests pass)? 1) break in the TEST_F(TestSetBitRunReader, OneByte) 2) put breakpoints on: - SkipNextZeroes - CountNextOnes 3) see what is going on. In my system: current_word_ = 182 (1011 0110) num_zeros = 0; current_word remain 182 -- no zeroes removed Then the following asserts because 182 & 1 == 0: int64_t CountNextOnes() { assert(current_word_ & kFirstBit); I have a feeling something may be wrong with the byte ordering, but I am not sure. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552931#comment-17552931 ] Arkadiy Vertleyb commented on ARROW-16778: -- Okay, I will see what could be wrong with it. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552923#comment-17552923 ] Will Jones commented on ARROW-16778: [~avertleyb] We actually do test 32-bit on MinGW in CI on every PR, just not on MSVC. It's likely there's just something wrong with the bit utility still; validity bitmaps are a fundamental part of Arrow Arrays, so it wouldn't be surprising at all that a single small issue in bitmap handling would break most tests. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552918#comment-17552918 ] Arkadiy Vertleyb commented on ARROW-16778: -- [~willjones127] Depends. Besides crash, multiple tests fail. Let me ask you - in your best estimate, when was the last time someone ran 32 bit tests? It could be badly broken by now... I am afraid fixing that might be a major task, even for someone closely familiar with the system, let alone a library user like myself. For your reference: Start 1: arrow-array-test 1/26 Test #1: arrow-array-test .***Failed0.24 sec Start 2: arrow-buffer-test 2/26 Test #2: arrow-buffer-test Passed0.03 sec Start 3: arrow-extension-type-test 3/26 Test #3: arrow-extension-type-test ***Failed0.02 sec Start 4: arrow-misc-test 4/26 Test #4: arrow-misc-test .. Passed0.05 sec Start 5: arrow-public-api-test 5/26 Test #5: arrow-public-api-test Passed0.02 sec Start 6: arrow-scalar-test 6/26 Test #6: arrow-scalar-test ***Failed0.06 sec Start 7: arrow-type-test 7/26 Test #7: arrow-type-test .. Passed0.15 sec Start 8: arrow-table-test 8/26 Test #8: arrow-table-test .***Failed0.05 sec Start 9: arrow-tensor-test 9/26 Test #9: arrow-tensor-test Passed0.02 sec Start 10: arrow-sparse-tensor-test 10/26 Test #10: arrow-sparse-tensor-test . Passed0.07 sec Start 11: arrow-stl-test 11/26 Test #11: arrow-stl-test ... Passed0.03 sec Start 12: arrow-random-test 12/26 Test #12: arrow-random-test Passed0.20 sec Start 13: arrow-json-integration-test 13/26 Test #13: arrow-json-integration-test ..***Failed0.15 sec Start 14: arrow-concatenate-test 14/26 Test #14: arrow-concatenate-test ...***Failed0.02 sec Start 15: arrow-c-bridge-test 15/26 Test #15: arrow-c-bridge-test ..***Failed0.06 sec Start 16: arrow-io-buffered-test 16/26 Test #16: arrow-io-buffered-test ... Passed0.08 sec Start 17: arrow-io-compressed-test 17/26 Test #17: arrow-io-compressed-test . Passed0.02 sec Start 18: arrow-io-file-test 18/26 Test #18: arrow-io-file-test ...***Failed 10.61 sec Start 19: arrow-io-memory-test 19/26 Test #19: arrow-io-memory-test .***Failed1.62 sec Start 20: arrow-utility-test 20/26 Test #20: arrow-utility-test ...***Failed3.00 sec Start 21: arrow-threading-utility-test 21/26 Test #21: arrow-threading-utility-test . Passed 39.77 sec Start 22: arrow-feather-test 22/26 Test #22: arrow-feather-test ...***Failed0.04 sec Start 23: arrow-ipc-json-simple-test 23/26 Test #23: arrow-ipc-json-simple-test ...***Failed0.06 sec Start 24: arrow-ipc-read-write-test 24/26 Test #24: arrow-ipc-read-write-test ***Failed8.17 sec Start 25: arrow-ipc-tensor-test 25/26 Test #25: arrow-ipc-tensor-test ***Failed1.16 sec Start 26: arrow-json-test 26/26 Test #26: arrow-json-test ..***Failed0.03 sec 42% tests passed, 15 tests failed out of 26 > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552899#comment-17552899 ] Will Jones commented on ARROW-16778: {quote}This builds with three path parameters removed to use defaults and with my patch applied. {quote} Good! {quote}But then ctest crashes running arrow-io-file-test. {quote} Yup, same here. Would you like to continue debugging yourself? Or else I can look into it soon. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552895#comment-17552895 ] Arkadiy Vertleyb commented on ARROW-16778: -- [~willjones127] This builds with three path parameters removed to use defaults and with my patch applied. But ctest crashes running arrow-io-file-test. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552863#comment-17552863 ] Will Jones commented on ARROW-16778: Wow that will save me a lot of time! :) > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552859#comment-17552859 ] Antoine Pitrou commented on ARROW-16778: Instead of disabling warnings one-by-one, you can change the {{BUILD_WARNING_LEVEL}} CMake variable. I don't know why we are not documenting it ([~kou] do you know?), but it is described thusly in {{cmake_modules/SetupCxxFlags.cmake}}: {code} # BUILD_WARNING_LEVEL add warning/error compiler flags. The possible values are # - PRODUCTION: Build with `-Wall` but do not add `-Werror`, so warnings do not # halt the build. # - CHECKIN: Build with `-Wall` and `-Wextra`. Also, add `-Werror` in debug mode # so that any important warnings fail the build. # - EVERYTHING: Like `CHECKIN`, but possible extra flags depending on the # compiler, including `-Wextra`, `-Weverything`, `-pedantic`. # This is the most aggressive warning level. # Defaults BUILD_WARNING_LEVEL to `CHECKIN`, unless CMAKE_BUILD_TYPE is # `RELEASE`, then it will default to `PRODUCTION`. The goal of defaulting to # `CHECKIN` is to avoid friction with long response time from CI. {code} > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552853#comment-17552853 ] Will Jones commented on ARROW-16778: [~avertleyb] I've been able to get both of the following configurations to compile. Do you want to try them out and lmk if they work for you? {code:none} @REM Build using Ninja cmake.EXE ^ -DARROW_DEPENDENCY_SOURCE=BUNDLED ^ -DCMAKE_BUILD_TYPE=Debug ^ -DARROW_BUILD_TESTS=ON ^ "-DARROW_CXXFLAGS=/wd4244 /wd4554 /wd4018" ^ -DARROW_BUILD_INTEGRATION=OFF ^ -DARROW_EXTRA_ERROR_CONTEXT=ON ^ -DARROW_BUILD_STATIC=OFF ^ -DARROW_WITH_RE2=OFF ^ -DARROW_WITH_UTF8PROC=OFF ^ -DCMAKE_INSTALL_PREFIX=c:/Users/voltron/arrow/cpp/build/user-cpp-debug-win32-alt/dist ^ -S%USERPROFILE%/arrow/cpp ^ -B%USERPROFILE%/arrow/cpp/build/user-cpp-debug-win32 ^ -G Ninja @REM Or build using Visual Studio cmake.EXE ^ -DARROW_DEPENDENCY_SOURCE=BUNDLED ^ -DCMAKE_BUILD_TYPE=Debug ^ -DARROW_BUILD_TESTS=ON ^ "-DARROW_CXXFLAGS=/wd4244 /wd4554 /wd4018" ^ -DARROW_BUILD_INTEGRATION=OFF ^ -DARROW_EXTRA_ERROR_CONTEXT=ON ^ -DARROW_BUILD_STATIC=OFF ^ -DARROW_WITH_RE2=OFF ^ -DARROW_WITH_UTF8PROC=OFF ^ -DCMAKE_INSTALL_PREFIX=c:/Users/voltron/arrow/cpp/build/user-cpp-debug-win32-alt/dist ^ -S%USERPROFILE%/arrow/cpp ^ -B%USERPROFILE%/arrow/cpp/build/user-cpp-debug-win32-alt ^ -G "Visual Studio 16 2019" ^ -A Win32 {code} > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552413#comment-17552413 ] Arkadiy Vertleyb commented on ARROW-16778: -- 2019 is good for now. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552411#comment-17552411 ] Will Jones commented on ARROW-16778: Also note, it seems that our bundled version of Boost Build doesn't compile on VS2022. We may wish to upgrade that. I'll go forward in VS2019 for now. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552406#comment-17552406 ] Will Jones commented on ARROW-16778: Yes I got that error as warning too. For now I was able to bypass with {{-DARROW_CXXFLAGS='/wd4244 /wd4554'.}} > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552403#comment-17552403 ] Arkadiy Vertleyb commented on ARROW-16778: -- Thanks Will. Saw you latest comment at Bloomberg. Please also keep in mind that using -DCMAKE_BUILD_TYPE=Debug somehow ends up with treating warnings as errors, which doesn't work well in a 32 bit system because of conflicts between int64_t and size_t. As I understand this comes from Google guidelines conflicting with C++ standard. Not sure how to avoid this. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552398#comment-17552398 ] Will Jones commented on ARROW-16778: FYI I'm working on creating a win32 build right now to see if I can reproduce what you are seeing. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552378#comment-17552378 ] Will Jones commented on ARROW-16778: Also there are some other useful debug settings. See the {{base-debug}} preset in [CMakePresets.json|https://github.com/apache/arrow/blob/master/cpp/CMakePresets.json#L17-L27]. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552374#comment-17552374 ] Antoine Pitrou commented on ARROW-16778: You must first configure the CMake build type. For this you can pass the {{-DCMAKE_BUILD_TYPE=Debug}} flag in the CMake configuration command. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552345#comment-17552345 ] Arkadiy Vertleyb commented on ARROW-16778: -- Can't build Debug version. Is: cmake --build . --config Debug The right way to do it? Getting the following: Performing copy step for 'googletest_ep' Error copying file "C:/.../arrow/cpp/build32_debug/googletest_ep-prefix/bin/gtest.dll" to "C:/.../arrow/cpp/build32_debug/release//RELEASE". C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(241,5): error MSB8066: Custom build for 'C:\...\arrow\cpp\build32_debug\CMakeFiles\d9834a26c074484d22 c6b56466b8c71e\googletest_ep-copy.rule;C:\...\arrow\cpp\build32_debug\CMakeFiles\0e7b907092777ef17a2918749093be30\googletest_ep-complete.rule;C:\...\arrow\cpp\build32_debug\CMakeFiles\4d50031ad3e0595d6aa1 aebb9c9d11b8\googletest_ep.rule' exited with code 1. [C:\...\arrow\cpp\build32_debug\googletest_ep.vcxproj] > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552315#comment-17552315 ] Antoine Pitrou commented on ARROW-16778: Under Linux you would debug using {{gdb /arrow-utility-test}}. Under Windows I have no idea. > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552314#comment-17552314 ] Arkadiy Vertleyb commented on ARROW-16778: -- I was going to, but after I got the build fixed the arrow-utility-test hangs. Not sure if it is related to my fix, haven't figured out yet how debug it properly. This was my patch: index 8583e10b2..5122cb3d5 100644 --- a/cpp/src/arrow/util/bit_util.h +++ b/cpp/src/arrow/util/bit_util.h @@ -67,7 +67,14 @@ static constexpr uint8_t kBytePopcount[] = { 5, 4, 5, 5, 6, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7, 4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8}; -static inline uint64_t PopCount(uint64_t bitmap) { return ARROW_POPCOUNT64(bitmap); } +static inline uint64_t PopCount(uint64_t bitmap) { +#if defined(_MSC_VER) && !defined(_M_AMD64) && !defined(_M_X64) + const uint32_t* p = reinterpret_cast(&bitmap); + return ARROW_POPCOUNT32(*p) + ARROW_POPCOUNT32(*(p + 1)); +#else + return ARROW_POPCOUNT64(bitmap); +#endif +} static inline uint32_t PopCount(uint32_t bitmap) { return ARROW_POPCOUNT32(bitmap); } // @@ -199,7 +206,7 @@ static inline int CountLeadingZeros(uint64_t value) { #if defined(__clang__) || defined(__GNUC__) if (value == 0) return 64; return static_cast(__builtin_clzll(value)); -#elif defined(_MSC_VER) +#elif defined(_MSC_VER) && (defined(_M_AMD64) || defined(_M_X64)) unsigned long index; // NOLINT if (_BitScanReverse64(&index, value)) { // NOLINT return 63 - static_cast(index); @@ -245,7 +252,7 @@ static inline int CountTrailingZeros(uint64_t value) { #if defined(__clang__) || defined(__GNUC__) if (value == 0) return 64; return static_cast(__builtin_ctzll(value)); -#elif defined(_MSC_VER) +#elif defined(_MSC_VER) && (defined(_M_AMD64) || defined(_M_X64)) unsigned long index; // NOLINT if (_BitScanForward64(&index, value)) { return static_cast(index); > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)
[jira] [Commented] (ARROW-16778) [C++] 32 bit MSVC doesn't build
[ https://issues.apache.org/jira/browse/ARROW-16778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552080#comment-17552080 ] Antoine Pitrou commented on ARROW-16778: [~avertleyb] Would you like to submit a Github PR to fix those issues? > [C++] 32 bit MSVC doesn't build > --- > > Key: ARROW-16778 > URL: https://issues.apache.org/jira/browse/ARROW-16778 > Project: Apache Arrow > Issue Type: Bug > Components: C++ > Environment: Win32, MSVC >Reporter: Arkadiy Vertleyb >Priority: Major > > When specifying Win32 as a platform, and building with MSVC, the build fails > with the following compile errors : > {noformat} > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(70,59): error > C3861: '__popcnt64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(204,7): error > C3861: '_BitScanReverse64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > C:\Users\avertleyb\git\arrow\cpp\src\arrow/util/bit_util.h(250,7): error > C3861: '_BitScanForward64': identifier not found > [C:\Users\avertleyb\git\arrow\cpp\build32\src\arrow\arrow_shared.vcxproj] > {noformat} -- This message was sent by Atlassian Jira (v8.20.7#820007)