Closed leonpengdo closed 1 year ago
libG3DXML.lib是从Geo3DML-CPP这个库编译出来的。Geo3DML-CPP库编译成功了吗?
或者补充一下具体的错误信息看看呢?
感谢您百忙之中能抽出时间来回答我的问题。在这几个月中进行了多次的尝试,也有一些进展,也出现了一些问题,但不太清楚是否正确,麻烦您指教一下 Q1:在之前编译中有时候能通过cmake的编译,有时候则会报错显示找不到pthead.h这个头文件(编译通过时好像是因为我选择的QtPropertyBrowser头文件不同的原因?这个pthead的配置一直没有弄清楚)。 Q2:之前在cmake编译通过后,在vs生成exe阶段,显示libG3DXML.lib的的问题(具体原因忘记了),之后找了许久后发现是您文件在/Geo3DML-CPP/src/g3dxml/libxml2/CMakeLists.txt:set(CMAKE_THREAD_PREFER_PTHREAD OFF)中设置了off,我改成on之后,没有再报错libG3DXML.lib的问题(不太清楚是不是这么解决,今天又尝试了一下,发现改回了也没有再报错之前的问题),修改之后在vs中libG3GRID.lib、libG3DXML.lib、libGeo3DML.lib这三个文件的生成都没有啥问题。 Q3:但现在编译过程中的OpenGeo3D这个项目的生成显示为近1444多个LNK2019,无法解析外部符号,基本上都是.obj文件中的错误,目前还不知道如何解决,期待您的建议。
我最终的目的,其实是想通过gis的手段来简化有限元建模的前处理过程,即通过加入dem和断层线等2.5维数据简化3维建模的过程(包括格网的细化的剖分-如八叉树算法),从而实现3DGIS与FME的耦合,之前有通过3DMINE等软件进行六面体的建模工作,但因为不是开源软件等原因,无法实现心中的算法,因此希望能通过您的平台来实现这样一个功能,麻烦您了。
这个看起来是没有链接到 Qt 的 Widgets 库。OpenGeo3D/CMakeLists.txt
里有要求链接到 Qt5::Widgets
的配置:
你看生成的VS工程里“链接”部分的配置正确吗?
感谢您的回复,我仔细检查了一下,发现之前用的是qt平台为x32,导致了一系列错误,更改为x64后,错误减少到19个,但仍然报错无法解析外部命令 按照您的建议,我检查了cmake编译过程和vs中链接库目录,发现qt5::widgets应该是已经链接过了的,或许不是这个问题。
旧的错误信息里提示的无法解析的外部符号是Qt的,如QWidget
、QIcon
、QMainWindow
等等。新的无法解析的外部符号是来自Geo3DML-CPP
库的,比如g3dvtk::ObjectFactory
、geo3dml::Model
等等。无法解析的外部符号的意思就是链接过程中没找到对应函数的实现,要么是函数只有声明没有实现,要么是没找到对应的lib库
不过我也还没把网格属性差值的功能加进来。现在就我在维护,没人帮忙的话估计要元旦以后再补充新功能了。
感谢您的回复,我再仔细思考检查一下。如果您需要帮忙的话,我能跟您一起进行学习、维护吗?如果可以的话能否留下您的联系方式,我的邮箱是:pengboqi@csu.edu.cn,或者您加一下我的qq:976853891。
我qq用的少,要不直接加我微信吧:18619733
您好,我是一名研究生,最近在从事地质建模方面的工作,对您的项目非常感兴趣,因此下载了源码进行编译。但在配置过程中出现了各种各样的问题,目前是卡在无法打开libG3DXML.lib这一步,不知道您能不能给点建议如何解决?