我在 Stackoverflow 上找到了一种将 3D 模型导入 Android OpenGL 的方法:
尝试按照说明复制源代码并尝试编译程序。我得到了大量的错误,这里只是一个小样本:
/tmp/ccPavSpL.o:OFF-OpenGL_loader.cc:(.text+0xd): undefined reference to `std::basic_string<char,
std::char_traits<char>, std::allocator<char> >::size() const'
我认为问题是我没有向程序传递参数,所以我尝试像这样传递参数:
$ gcc OFF-OpenGL_loader.cc circle.off output.xml
(我的 .off 文件与其他源文件位于同一目录中,并且 output.xml 也在同一文件中。)我收到了这些错误
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld:circle.off: file format not recognized;
treating as linker script
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld:circle.off:2: syntax error
collect2: ld returned 1 exit status
无论如何,所以我觉得我不应该有一个 output.xml 文件,但是当我没有一个时,它给了我一个找不到文件的错误。
开源文件不在实际文件中,所以我觉得我应该向您展示我所有的文件,并且我觉得将其他人的源代码上传到 github 存储库很奇怪,所以这里是源文件的快速共享链接:
http://d01.megashares.com/dl/2YylIbE/SourceCodeAnd.offFile.zip
我觉得像这样共享文件很奇怪^^但我真的没有看到任何其他选择。它只包含我的 .off 文件和 .xml 文件以及 C 和 C++ 文件。
任何帮助将不胜感激,过去几天我一直坚持这一点。谢谢!
编辑
所以我用 g++ 运行它,没有参数,结果如下:
$ g++ OFF-OpenGL_loader.cc
/tmp/ccNFneYn.o:OFF-OpenGL_loader.cc:(.text+0x1aa): undefined reference to
`ReadFile::getExtension(char*)'/tmp/ccNFneYn.o:
OFF-OpenGL_loader.cc:(.text+0x2f8): undefined reference to
operator>>(std::basic_ifstream<char, std::
char_traits<char> >&, ReadFile&)'/tmp/ccNFneYn.o:OFF-
OpenGL_loader.cc:(.text+0x6de): undefined reference to `ReadFile::ReadFile()'/tmp/ccNFneYn.o:OFF-
OpenGL_loader.cc:(.text+0x6f9): undefined reference to `ReadFile::~ReadFile()'/usr/lib/gcc/i686-pc-
cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld:
/tmp/ccNFneYn.o: bad reloc address 0x1c in section
`.gcc_except_table'/usr/lib/gcc/i686-pc-cygwin/3.4.4/.
./../../../i686-pc-cygwin/bin/ld: final link failed:
Invalid operationcollect2: ld returned 1 exit status
我在寻找什么样的错误?