首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我不能用freetds 0.91做SQSH 2.1.7

我不能用freetds 0.91做SQSH 2.1.7
EN

Stack Overflow用户
提问于 2011-09-21 04:13:09
回答 1查看 1.9K关注 0票数 1

我在构建针对freetdssqsh时遇到了问题。这篇文章交叉引用了https://sourceforge.net/projects/sqsh/forums/forum/365924/topic/4716627

我已经在Solaris10上安装了来自sunfreeware.com的Freetds0.91。我已经确认了用户指南第9章中提到的安装。

按照sqsh.org中的sqsh说明,我已经将SYBASE环境变量设置为/usr/local/freetds并运行配置脚本。(我没有在这台机器上安装Sybase。我不应该需要它。)

代码语言:javascript
复制
SYBASE=/usr/local/freetds; export SYBASE
./configure --with-readline

我已经检查了Makefile,根据我所读到的,它似乎是正确的。

代码语言:javascript
复制
SYBASE_LIBS = -lct -ltds -lnsl -ldl -lm

当我运行make时,我得到(在构建了一堆东西之后):

代码语言:javascript
复制
make
... 
...[build output]...
...
gcc -L/usr/local/freetds/lib -L/usr/local/lib cmd_alias.o cmd_bcp.o cmd_buf.o cmd_connect.o cmd_do.o cmd_echo.o cmd_exit.o cmd_for.o cmd_func.o cmd_go.o cmd_help.o cmd_history.o cmd_if.o cmd_input.o cmd_jobs.o cmd_kill.o cmd_lock.o cmd_loop.o cmd_misc.o cmd_read.o cmd_reconnect.o cmd_redraw.o cmd_reset.o cmd_return.o cmd_rpc.o cmd_set.o cmd_shell.o cmd_show.o cmd_sleep.o cmd_wait.o cmd_warranty.o cmd_while.o var_ctlib.o var_date.o var_debug.o var_dsp.o var_hist.o var_misc.o var_passwd.o var_readline.o var_thresh.o dsp.o dsp_bcp.o dsp_csv.o dsp_conv.o dsp_desc.o dsp_horiz.o dsp_html.o dsp_meta.o dsp_none.o dsp_out.o dsp_pretty.o dsp_vert.o dsp_x.o sqsh_alias.o sqsh_args.o sqsh_avl.o sqsh_buf.o sqsh_cmd.o sqsh_compat.o sqsh_ctx.o sqsh_debug.o sqsh_env.o sqsh_error.o sqsh_expand.o sqsh_fd.o sqsh_filter.o sqsh_fork.o sqsh_func.o sqsh_getopt.o sqsh_global.o sqsh_history.o sqsh_init.o sqsh_job.o sqsh_readline.o sqsh_sig.o sqsh_sigcld.o sqsh_stdin.o sqsh_strchr.o sqsh_tok.o sqsh_varbuf.o sqsh_main.o -lct -ltds -lnsl -ldl -lm -lreadline -lcurses -o sqsh 
ld: warning: global symbol `_END_' has non-global binding:
    (file /usr/local/freetds/lib/libct.so value=LOCL); 
ld: warning: global symbol `_START_' has non-global binding:
    (file /usr/local/freetds/lib/libct.so value=LOCL); 
ld: fatal: file /usr/local/freetds/lib/libtds.a: unknown file type 
ld: fatal: File processing errors. No output written to sqsh 
collect2: ld returned 1 exit status 
make[1]: *** [sqsh] Error 1 
make[1]: Leaving directory `/opt/BFMIfiles/src/sqsh-2.1.7/src' 
make: *** [build-subdirs] Error 2

错误是否与此相关:http://www.freetds.org/faq.html#where.is.libtds.so

有什么想法吗?

freetds mailing list上的引用。sqsh help forum上的引用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-22 21:39:08

在编辑src/Makefile时,去掉-ltds (按照这里的建议)并将-ldl更改为-liconv。我从cygwin版本的sqsh自述文件中获得了这最后一点。

我使用了SYBASE=/usr/local/freetds/。

之后,我必须设置LD_LIBRARY_PATH=$SYBASE/lib/:/usr/local/lib/来获取freetds和liconv库。

非常感谢freetds邮件列表。http://lists.ibiblio.org/pipermail/freetds/2011q3/027382.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7491222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档