菜鸟教程小白 发表于 2022-12-12 21:10:44

ios - XCode IOS Apple LLVM 3.1 - Eigen NEON 中断


                                            <p><p>问题可能涉及使用 Apple 的 LLVM 3.1 编译器,我确信可以通过禁用 NEON 来解决。但是我们想使用 NEON。</p>

<p>我也很肯定这是我在 XCode 中设置的错误,但它可能与 Apple 有关。真的,我只是在寻求一些正确方向的提示。</p>

<pre><code>/Eigen/src/Core/util/Macros.h
188:Unknown type name &#39;namespace&#39;
188: Expected &#39;;&#39; after top level declarator

/Eigen/Core
144:&#39;cerrno&#39; file not found

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/3.1/include/arm_neon.h
55: Unknown type name &#39;float32_t&#39;
</code></pre>

<p>该文件中的每个实例都会出现此缺少的 float32_t 错误。尽管第 33 行 typedef 显然已经完成。</p>

<p><strong>更新:</strong>
如果我强制 <code>#define EIGEN_NO_DEBUG</code> 那么剩下的唯一错误就是缺少 cerrno。事实上,似乎所有的 cXXX 库都丢失了(例如 cstdlib)。但是,如果我将它们包含在 Eigen 之外,它们就会起作用。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>正如评论中提到的,问题在于源代码被编译为 Objective-C 而不是 Objective-C++。解决此问题即可解决问题。</p>

<p>特别是由于文件 (main.m) 未重命名为 (main.mm)。如果您要将文件重命名为 .mm 以便它使用 ObjC++ (clang++),那么请确保您获得了所有文件。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - XCode IOS Apple LLVM 3.1 - Eigen NEON 中断,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/10711815/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/10711815/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - XCode IOS Apple LLVM 3.1 - Eigen NEON 中断