GBase 8s
安装配置
问答

gbase8s 关于gorm适配后的运行测试-相关报错问题处理

发表于2025-12-15 14:44:45138次浏览11个评论

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

【GBase版本】: 363

【操作系统】: centos7.6

【CPU】: 4核

【问题描述】*: 按照配置要求正确配置后,在Go程序中进行gorm的库连接测试时,报错,报错信息如下:

下面有我详细的配置流程和相关的配置内容、测试内容,希望 尽快给予回复,特别感谢
[root@localhost gbase8s-test]# go run main.go
# command-line-arguments
/usr/local/go/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/usr/bin/gcc -m64 -s -o $WORK/b001/exe/main -rdynamic -Wl,--compress-debug-sections=zlib /tmp/go-link-2891688968/go.o /tmp/go-link-2891688968/000000.o /tmp/go-link-2891688968/000001.o /tmp/go-link-2891688968/000002.o /tmp/go-link-2891688968/000003.o /tmp/go-link-2891688968/000004.o /tmp/go-link-2891688968/000005.o /tmp/go-link-2891688968/000006.o /tmp/go-link-2891688968/000007.o /tmp/go-link-2891688968/000008.o /tmp/go-link-2891688968/000009.o /tmp/go-link-2891688968/000010.o /tmp/go-link-2891688968/000011.o /tmp/go-link-2891688968/000012.o /tmp/go-link-2891688968/000013.o /tmp/go-link-2891688968/000014.o /tmp/go-link-2891688968/000015.o /tmp/go-link-2891688968/000016.o /tmp/go-link-2891688968/000017.o /tmp/go-link-2891688968/000018.o /tmp/go-link-2891688968/000019.o /tmp/go-link-2891688968/000020.o /tmp/go-link-2891688968/000021.o /tmp/go-link-2891688968/000022.o /tmp/go-link-2891688968/000023.o /tmp/go-link-2891688968/000024.o /tmp/go-link-2891688968/000025.o /tmp/go-link-2891688968/000026.o -O2 -g -L/home/bjy/GSDK//lib/ -lclntsh_gbase -O2 -g -lpthread -O2 -g -lresolv
/usr/bin/ld: 当搜索用于 /home/bjy/GSDK//lib//libclntsh_gbase.so 时跳过不兼容的 -lclntsh_gbase
/usr/bin/ld: 找不到 -lclntsh_gbase
collect2: 错误:ld 返回 1

 

我的配置信息如下:
1、使用最新官网下载的gsdk--版本:GSDK_3.6.3_3X3_1_1.1.0_1_39d3ca_CentOS7_FT2000.tar,下载地址:https://www.gbase.cn/download/gbase-8s-1?category=DRIVER_PACKAGE&page=2
2、测试demo中运行了: go get gitee.com/GBase8s/gorm-gbase,成功获取到相关包

3、创建了相关的目录和配置文件,且正确配置了环境变量的内容:

     3.1.  使用最新下载的的gsdk,解压后作为GSDK目录

.   3.2.  在GSDK目录同级创建了pc心目录,用于gbase8s.pc的存放及内容编写, gbase8s.pc编写内容如下:

prefix=/home/bjy/GSDK/
includedir=${prefix}/include/
libdir=${prefix}/lib/

Name: gbase8s
Description: gbase8s Instant Client
Version: 8.8
Cflags: -I${includedir}
Libs: -L${libdir} -lclntsh_gbase


 

.   3.3.  配置环境变量(按照最新的与贵司 研发沟通的,只用配置2个环境变量即可,我的配置内容如下:)

export LD_LIBRARY_PATH=/home/bjy/GSDK/lib:$LD_LIBRARY_PATH
export PKG_CONFIG_PATH=/home/bjy/pc/

            打印环境变量内容如下:
[root@localhost pc]# echo $LD_LIBRARY_PATH
/home/bjy/GSDK/lib:/home/gbase8s-odbc-driver/lib:/home/gbase8s-odbc-driver/lib/esql:/home/gbase8s-odbc-driver/lib/cli:
[root@localhost pc]# echo $PKG_CONFIG_PATH
/home/bjy/pc/
[root@localhost pc]# 

4、 测试数据库连接信息,新建了go程序测试目录,测试内容也很简单,按照事例测试数据库的连接情况

   测试文件内容如下:

 

 

5、 运行后报错:
[root@localhost gbase8s-test]# go run main.go
# command-line-arguments
/usr/local/go/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/usr/bin/gcc -m64 -s -o $WORK/b001/exe/main -rdynamic -Wl,--compress-debug-sections=zlib /tmp/go-link-2891688968/go.o /tmp/go-link-2891688968/000000.o /tmp/go-link-2891688968/000001.o /tmp/go-link-2891688968/000002.o /tmp/go-link-2891688968/000003.o /tmp/go-link-2891688968/000004.o /tmp/go-link-2891688968/000005.o /tmp/go-link-2891688968/000006.o /tmp/go-link-2891688968/000007.o /tmp/go-link-2891688968/000008.o /tmp/go-link-2891688968/000009.o /tmp/go-link-2891688968/000010.o /tmp/go-link-2891688968/000011.o /tmp/go-link-2891688968/000012.o /tmp/go-link-2891688968/000013.o /tmp/go-link-2891688968/000014.o /tmp/go-link-2891688968/000015.o /tmp/go-link-2891688968/000016.o /tmp/go-link-2891688968/000017.o /tmp/go-link-2891688968/000018.o /tmp/go-link-2891688968/000019.o /tmp/go-link-2891688968/000020.o /tmp/go-link-2891688968/000021.o /tmp/go-link-2891688968/000022.o /tmp/go-link-2891688968/000023.o /tmp/go-link-2891688968/000024.o /tmp/go-link-2891688968/000025.o /tmp/go-link-2891688968/000026.o -O2 -g -L/home/bjy/GSDK//lib/ -lclntsh_gbase -O2 -g -lpthread -O2 -g -lresolv
/usr/bin/ld: 当搜索用于 /home/bjy/GSDK//lib//libclntsh_gbase.so 时跳过不兼容的 -lclntsh_gbase
/usr/bin/ld: 找不到 -lclntsh_gbase
collect2: 错误:ld 返回 1

评论

登录后才可以发表评论
用户头像
路路路发表于 7个月前
稍等有技术回复
用户头像
路路路发表于 7个月前
https://www.gbase.cn/community/post/7272
是不是能从这里得到答案
最佳回答
卜锦元发表于 7个月前
@路路路:已经在 https://www.gbase.cn/community/post/7272 此处进行了沟通,很感谢
用户头像
maktub发表于 7个月前
使用最新官网下载的gsdk--版本:GSDK_3.6.3_3X3_1_1.1.0_1_39d3ca_CentOS7_FT2000.tar, 这个是arm架构的包,看你的错误是 跳过不兼容的 -lclntsh_gbase,应该是你的系统是/usr/local/go/pkg/tool/linux_amd64/link: 应该是amd64 的, 应该是架构不兼容,需要下载x86架构的GSDK包做开发
卜锦元发表于 7个月前
@maktub:好的,我试试,感谢
卜锦元发表于 7个月前
@maktub:很感谢,成功了
用户头像
maktub发表于 7个月前
@卜锦元:太客气了
用户头像
GBase用户28017发表于 7个月前
优秀啊。
用户头像
GBase用户28017发表于 7个月前
学习。
曾浩轩发表于 2个月前
不清楚啊。
菲菲发表于 2个月前
好问题啊。