LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1105|回复: 5

编译选项

[复制链接]
发表于 2009-11-28 00:04:46 | 显示全部楼层 |阅读模式
今天升级了下fqterm,但在Slackware 13.0下无法编译通过,错误信息如下:
/usr/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function
`posix_forkpty':
posixmodule.c.text+0x3216): undefined reference to `forkpty'
/usr/lib/python2.6/config/libpython2.6.a(posixmodule.o): In function
`posix_openpty':
posixmodule.c.text+0x32a2): undefined reference to `openpty'
collect2: ld returned 1 exit status
make[2]: *** [fqterm.bin] Error 1

胡乱搜索一番后man openpty: “Link with -lutil.”
然后给make添加 -lutil 选项后就正常编译通过了。
但其他发行版用户反映来看都可以顺利编译通过。为啥slk下就不行呢?是不是slk的某些so在编译时一些选项没有加进去导致了这种情况?我对编译不是很懂,请教大家~~:Coffee:
发表于 2009-11-28 09:02:51 | 显示全部楼层
我这给 fqterm 的 make 加上 -lutil 之后还是不行……(make clean && make -lutil) 你是给 python 的编译脚本加 -lutil 的么?……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-28 14:42:42 | 显示全部楼层
Post by grissiom;2050468
我这给 fqterm 的 make 加上 -lutil 之后还是不行……(make clean && make -lutil) 你是给 python 的编译脚本加 -lutil 的么?……



我是直接在fqterm.SlackBuild里加的:
[PHP]
if [ "$ARCH" = "i486" ]; then
   SLKCFLAGS="-O2 -march=i486 -mtune=i686 -lutil"
   LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
   SLKCFLAGS="-O2 -march=i686 -mtune=i686 -lutil"
   LIBDIRSUFFIX=""
[/PHP]

SBo的脚本允许直接在SLKCFLAGS里添加额外的编译选项吗?如果像现在这种情况还是得在后面加上SLKFLAGS="${SLK***S} -lutil"?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-28 14:45:49 | 显示全部楼层
CFLAG怎么变成***了
回复 支持 反对

使用道具 举报

发表于 2009-11-29 13:15:23 | 显示全部楼层
嗯,还是不要吧…… 在 cmake 的时候添上这个参数得了~
  1. cmake \
  2. -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS"" -lutil " \
  3. -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS"" -lutil " \
  4. ...
复制代码

其他发行版怎么不用呢?奇怪了……

嘿嘿,是不是触发什么规则了?嘿嘿……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-4 22:37:36 | 显示全部楼层
先这样提交上去了~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表