
# 获取源码包、ODBC包以及依赖库
基于ODBC开发用户需要获取unixODBC源码包、ODBC包以及依赖库。
#### 获取源码包
- unixODBC源码包获取参考地址：<https://www.unixodbc.org/unixODBC-2.3.7.tar.gz>。
- MD5文件下载地址：<https://www.unixodbc.org/unixODBC-2.3.7.tar.gz.md5>。
下载后需使用MD5文件对unixODBC源码包进行完整性校验（查看MD5值，对比MD5值是否与源码包一致）。
#### 获取驱动包
下载[表1]中的驱动包和驱动包校验包。
 表1驱动包下载列表 
| 版本        | 下载地址                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|
| V2.0-10.x | [驱动包](https://dbs-download.obs.cn-north-1.myhuaweicloud.com/DBS-GaussDB-driver/1782715650051/DBS-GaussDB-driver_507.0_20260629130806.133858239.tar.gz) [驱动包校验包](https://dbs-download.obs.cn-north-1.myhuaweicloud.com/DBS-GaussDB-driver/1782715650051/DBS-GaussDB-driver_507.0_20260629130806.133858239.tar.gz.sha256) |
   
为了防止软件包在传递过程或存储期间被恶意篡改，下载软件包时需下载对应的校验包对软件包进行校验，校验方法如下：
- Linux操作系统软件包完整性校验：
  1. 上传软件包和软件包校验包到虚拟机的同一目录下。
  
  2. 执行如下命令，校验软件包完整性。
     ```
     F=$(echo DBS-GaussDB-driver*.tar.gz);echo "$(awk '{print $1}' "$F.sha256")  $F" | sha256sum -c -
     ```
     如果回显OK，则校验通过。例如：
     ```
     DBS-GaussDB-driver_507.0_20260629130806.133858239.tar.gz: OK
     ```
     
   

- Windows操作系统软件包完整性校验：
  1. 使用快捷键"Win+R"打开"运行"窗口。 在"打开"栏，输入"cmd"，按"Enter"回车，打开命令行页面。
  
  2. 执行以下命令，获取驱动包的Hash值。
     certutil -hashfile *{* *驱动包本地目录* *}* \\*{驱动包名}* sha256
     - {*驱动包本地目录*}：请根据实际下载目录进行替换。例如：C:\\Users
     
     - {*驱动包*名}：请根据实际下载的驱动包名进行替换。例如：DBS-GaussDB-driver_507.0_20260629130806.133858239.tar.gz
     
     
     示例：certutil -hashfile *C:\\Users\\DBS-GaussDB-driver_507.0_20260629130806.133858239.tar.gz sha256*
     
  
  3. 将[2]获取到的Hash值和[表1]中获取到的驱动包校验包的Hash值进行比较。
     - 若一致则通过校验。
     
     - 若不一致，请重新下载驱动包，重复[1]\~[3]进行校验。
      
   
 
#### 获取ODBC包以及依赖库
ODBC包以及依赖库支持两种操作系统（Linux和Windows），请用户根据实际情况进行选择。
- Linux系统： 从驱动包中获取ODBC包，驱动包中提供多种数据库内核操作系统支持，用户可根据实际使用的数据库内核操作系统信息定位对应文件，驱动包的文件层级关系参考以下结构：DBS-GaussDB-driver_\*/Centralized/驱动类型/操作系统信息（例如：Euler2.10_X86_64）。
  压缩包名为GaussDB-Kernel_数据库版本号_Odbc_CPU架构信息_Centralized.tar.gz，将其解压后即可得到所需要的ODBC压缩包GaussDB-Kernel_数据库版本号_操作系统信息_64bit_Odbc.tar.gz。
  Linux环境下，开发应用程序需要使用unixODBC提供的头文件（sql.h、sqlext.h等）和库libodbc.so。这些头文件和库可从unixODBC-2.3.7源码包中获取。
  
- Windows系统： 从驱动包中获取ODBC包，驱动包中提供多种数据库内核操作系统支持，用户可根据实际使用的数据库内核操作系统信息定位对应文件，驱动包的文件层级关系参考以下结构：DBS-GaussDB-driver_\*/Centralized/驱动类型/操作系统信息（例如：Euler2.10_X86_64）。
  将文件中两个名称含有"Windows"的压缩包解压，即可得到GaussDB-Kernel_数据库版本号_Windows_X86_Odbc.tar.gz（32位）和GaussDB-Kernel_数据库版本号_Windows_X64_Odbc.tar.gz（64位）。
  Windows环境下，开发应用程序所需的相关头文件和库文件由系统自身提供。
  
 
