每每安装开源软件的时候,最头痛的就是编译安装的过程中出现了编译错误。有时看到大篇幅的编译错误时,就不知道该从哪下手修正错误了。这也许就是开源软件相对于商业软件难于普及的一个重要原因吧。
问题描述:cppdb在mac上的编译过程中出现了如下错误提示,
Building CXX object CMakeFiles/cppdb.dir/drivers/odbc_backend.cpp.o
/usr/local/src/cppdb-0.3.0/drivers/odbc_backend.cpp:46: error: size of array ‘assert_on_sqlwchar_is_16’ is negative
make[2]: *** [CMakeFiles/cppdb.dir/drivers/odbc_backend.cpp.o] Error 1
make[1]: *** [CMakeFiles/cppdb.dir/all] Error 2
make: *** [all] Error 2
问题解决:
显然,在编译安装odbc驱动时,出现了问题。因此,安装cppcms的经验,重新安装odbc库。
1. port search odbc.
2. 根据查询结果,选择合适的安装包名进行安装。sudo port install libiodbc.
安装完毕后,重新编译cppdb,可是问题依旧。我要开发的网站,后端数据库使用的是mysql,试想cppdb作为抽象数据库访问层编译安装odbc对我来说也没什么大用,那不如直接关掉该选项。于是,进入到cppdb的安装路径,用文本编辑器打开CMakeLists.txt,将odbc默认安装选项改为option(DISABLE_ODBC "Link odbc backend into the libcppdb" ON)。保存后,再重新编译安装cppdb库,编译安装通过。
问题2: 编译安装cppdb时,出现编译安装mysql驱动错误。我已经将mysql库的头文件库拷贝到/usr/include目录下,也将相关的libmysqlclient库拷贝到/usr/lib目录下,问题依旧。
问题解决:根据编译错误提示,猜想可能是因为我拷贝的库文件是32位的缘故,所以去mysql的官网,下载了64.tar.gz包,解压后,从/usr/include, 和/usr/lib目录,将原来拷贝好的32位mysql头文件和库文件删除掉,然后从64位库解压目录中,将对应的include文件目录中的所有头文件再次拷贝到/usr/include目录,再把lib目录中的所有mysql库拷贝到/usr/lib目录中。最后,重新编译cppdb库,安装终于通过了。
分享到:
相关推荐
本文将深入探讨在aarch64架构下的cppdb库的交叉编译过程以及如何使用该库进行数据库连接,以满足在64位ARM架构设备上的应用程序开发需求。 首先,让我们理解cppdb库的核心特性。cppdb提供了一种统一的C++接口来访问...
"openEuler 上编译安装 MLNX 驱动" openEuler 是一个基于 Linux 内核的操作系统,MLNX 驱动是 InfiniBand 高速互连技术的驱动程序。编译安装 MLNX 驱动是 openEuler 上实现高性能计算和高速存储的关键步骤。下面是 ...
在安装过程中,需要注意目标路径的权限问题。如果目标路径需要 root 权限,可以使用 `sudo` 命令来提升权限。例如,输入 `sudo make install PREFIX=/usr/local/bzip2` 命令。 GCC/GDB 是编译和调试 bzip2 源代码的...
2. 安装JD-GUI:在MAC上,通常是将下载的.dmg文件拖拽到"应用程序"目录中。 3. 运行JD-GUI:双击应用程序图标启动JD-GUI。 4. 反编译JAR文件:通过菜单栏选择"File" -> "Open File",然后选择需要反编译的JAR文件。 ...
在Mac操作系统上,一个常见的Java反编译工具是JD-GUI。JD-GUI是一款图形化界面的工具,它能够直观地显示类文件的源代码,而无需进行复杂的命令行操作。 标题中的"mac版本java反编译工具jd-gui"指的是专门为Mac OS...
在安装 Zabbix 之前,我们需要配置 apt-get 源,以便在安装过程中能够正确地获取所需的软件包。在这里,我们需要编辑 `/etc/apt/sources.list` 文件,以添加银河麒麟的软件源。 三、下载源码包 在这里,我们需要...
通过上述步骤,可以在CentOS 6.3系统上成功地编译安装Nginx、PHP和MySQL,构建出一个基础的Web服务器环境。需要注意的是,由于CentOS 6.3已经不再提供官方支持,运行这些服务时可能需要关注安全风险,并及时考虑升级...
### 在虚拟机上编译、安装和运行VPP #### 安装环境需求 为了确保在虚拟机上顺利编译、安装并运行VPP,首先需要满足以下环境配置: - **虚拟机软件**:推荐使用VMware 12.5版本。 - **虚拟机操作系统**:Ubuntu ...
内容概要:本文详细介绍在RHEL6.3操作系统环境中,利用官方安装光盘提供的资源无法直接获得python3运行环境的情况下,采用从源码手动编译安装Python3.5.2的方法构建python3运行环境。文章主要步骤包括修正命令错误...
在安装依赖项之后,需要安装 `cmake` 和 `libpcre2-dev`,以便编译 FRR。然后,使用 git 克隆 FRR 的源码,并 checkout 到 v2.0.0 版本。接下来,创建一个 build 目录,并使用 cmake 生成 Makefile。最后,使用 make...
在本文中,我们将探讨如何在基于ARM架构的银河麒麟操作系统(FT2000+KylinOS 4.0.2)上安装和编译QT 4.8.4和QT 4.8.6。这是一项对于在国产化系统上进行软件开发至关重要的任务,因为QT是一个广泛应用的跨平台应用程序...
本教程将详细讲解如何下载QtCharts 5.7.0的源码,并在不同环境下进行编译与安装,包括Visual Studio 2010和2013,以及Windows XP和7操作系统,同时兼容Qt 5.5及以上版本。 ### 1. 下载QtCharts 5.7.0源码 首先,你...
标题中的“mac下编译jsoncpp”指的是在苹果操作系统(Mac OS)环境下编译jsoncpp库的过程。Jsoncpp是一个开源的C++库,用于处理JSON(JavaScript Object Notation)数据格式,广泛应用于软件开发中,特别是在需要与...
在IT领域,监控系统是确保服务稳定性和性能的关键工具,Zabbix是一款广泛应用的开源网络监控解决方案。本压缩包“zabbix4.4&httpd&php编译安装.zip”提供...记得在安装过程中遵循最佳实践,确保系统的安全性和稳定性。
openvas9编译安装,系统建议ubuntu16.04,编译过程详细描述。以及后续配置,同步数据等。一些源码包没有上传,可直接从官网下载。
本资源可结合我的文章《详解CentOS7下编译安装Redis5.x设置开机启动及修改端口(含redis需编译安装包和redis免编译安装包)》配合使用,同时也可单独去使用。包含redis3.0.7免编译版安装包,redis5.0.7离线安装包,...
这个"ltp-3.4.0 mac编译包"可能是作者在Mac 10.14.3上编译好的LTP版本,对于不想从头编译的人来说,可以直接下载并尝试运行。然而,由于每个系统的具体环境差异,使用这个预编译包前最好先了解其编译和运行的条件,...
本书以作者实现的一个基于Intelx86指令集的编译系统为例,结合程序代码的主要部分详细阐述了编译系统的实现原理和过程。本书对编译器、汇编器、链接器、编译优化器涉及的关键算法、数据结构和程序实现流程,以及ELF...
在安装过程中可能出现依赖冲突,需要手动调整版本以匹配系统需求,如 `sudo apt install zlib1g=1:1.2.11.dfsg-2kylin1`。 9. **安装 libgtk2.0-dev**: libgtk2.0 是用于图形用户界面的库,对于某些图形相关的...