QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: haulm

关于MXD2 拔号器,大家可以给点建议

[复制链接]
发表于 2009-2-13 13:38:16 | 显示全部楼层
原帖由 haulm 于 2009-2-13 13:29 发表

会不会因为是新的分包是错误的?mxd2本身没有什么特别依赖,就算用原来Qt4.3的组件也是能运行的。


给个 src.rpm ,在我这边重建一遍试试...
回复

使用道具 举报

 楼主| 发表于 2009-2-13 13:48:23 | 显示全部楼层
http://ftp.magiclinux.org.cn/haulm/Source/mxd2-0.2-1mgc.src.rpm
源码应该没有问题,主要是Qt4.5的打包可能有问题,我没时间,要等到晚上12点才能看看,你帮我找出BUG直接改进我的目录中吧。
回复

使用道具 举报

发表于 2009-2-13 15:30:54 | 显示全部楼层
原帖由 haulm 于 2009-2-13 13:48 发表
http://ftp.magiclinux.org.cn/haulm/Source/mxd2-0.2-1mgc.src.rpm
源码应该没有问题,主要是Qt4.5的打包可能有问题,我没时间,要等到晚上12点才能看看,你帮我找出BUG直接改进我的目录中吧。 ...


我稍微改了一下....
已经可以运行了。


  1. --- mxd.cpp.orig        2009-02-08 08:04:26.000000000 +0000
  2. +++ mxd.cpp        2009-02-13 15:27:56.000000000 +0000
  3. @@ -12,9 +12,11 @@
  4.                 }
  5.          FILE *in=NULL;
  6.         char sl[128];
  7. +        const char *a="",*b="";
  8.         in=fopen("/etc/ppp/pap-secrets","r");
  9.         if(in==NULL){printf("can't open the /etc/ppp/pap-secrets");}       
  10. -        const char *a="",*b="";
  11. +        else
  12. +        {                                                // read the config only when the file can be accessed.
  13.         while(fgets(sl,128,in))
  14.         {
  15.                 if(strstr(sl,"mxd_connect"))
  16. @@ -40,6 +42,7 @@
  17.          strcpy(sldns,strtok(sldns,"nameserver "));
  18.          dns=sldns;
  19.          fclose(getdns);                                        //读取用户及密码
  20. +        }
  21.         QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
  22.          setMinimumSize(260,140);
  23.         setMaximumSize(260,140);

复制代码
回复

使用道具 举报

发表于 2009-2-13 15:41:16 | 显示全部楼层
rpm 包更新
四个包全是用 gcc3 和旧版 glibc 编译的,能直接装在 2.1final 上~

qt4-core-4.5.0-0.rc1.4mgc.i686.rpm
qt4-gui-4.5.0-0.rc1.4mgc.i686.rpm
qt4-chinese-4.5.0-0.rc1.4mgc.i686.rpm
mxd2-0.2a-1mgc.i686.rpm
回复

使用道具 举报

 楼主| 发表于 2009-2-14 05:19:53 | 显示全部楼层
谢谢nihui兄所做的努力,但是mxd2的确没有代码上的错误,主要是mxd2的打包存在一些个问题,首先看一下在初装MGC2.1-2046后直接安装mxd2的状况,的确出错,但已经给出错误判断can't find the file /etc/ppp/resolv.conf。

rpm -ivh qt4-chinese-4.5.0-rc1.3mgc.i686.rpm qt4-core-4.5.0-rc1.3mgc.i686.rpm qt4-gui-4.5.0-rc1.3mgc.i686.rpm
Preparing...                                                          ########################################### [100%]
   1:qt4-core                                                         ########################################### [ 33%]
   2:qt4-chinese                                                      ########################################### [ 67%]
   3:qt4-gui                                                          ########################################### [100%]
[root@haulmtf RPMS]# /opt/mxd/mxd
can't find the file /etc/ppp/resolv.conf
[root@haulmtf RPMS]# touch /etc/ppp/resolv.conf
[root@haulmtf RPMS]# /opt/mxd/mxd
Deleting all exist defaultroute ....
. Connected!

所以你做出的补丁还是去掉吧,需要在mxd2的rpm打包的%post项增加一句脚本
if (! [ -f /etc/ppp/resolv.conf ]); then  touch /etc/ppp/resolv.conf; fi
mxd2已经重新打包,Qt4.5不准备使用GCC3编译的版本,因为mxd2是由我唯护的,我是不会继续在GCC3的环境下编译软件,也希望MGC3能尽早亮相。
回复

使用道具 举报

 楼主| 发表于 2009-2-14 09:20:36 | 显示全部楼层
根据兄台们的建议,现在的mxd2自动拔号,只要一个mxd2实例退出就自动断开,问题是如果没有配置正确,比如第一次打开mxd2它会等待pppoe拔号失败后才能双击显示界面。我本来是想用参数调用来实现区分,但C函数getopt似乎无法在main()主函数中进行有效调用,所以还要查点资料,不知道se兄长期应用Qt3编程是否给点这方面的指导。
回复

使用道具 举报

 楼主| 发表于 2009-2-14 23:01:13 | 显示全部楼层
我觉得自动拔号还是不错的,不过如果要实现自动拔号可能要增加新的配置文件来定义运行,一些配置也可以写入临时配置文件。我曾经尝试过struct myclass::sturctvar run(var);这样的反回结构数据的函数来实现多值返回,可是最后调试运行出错提示看不懂错在哪了,一时找不到解决之道。而用getoptC函数从参数判断进行的一些工作却无法直接在main()主函数中限制pppoestart()拔号函数,这方面的资料搜索网络没有现成的例子(指的是Qt4)。
回复

使用道具 举报

 楼主| 发表于 2009-2-16 12:35:52 | 显示全部楼层
旧的没有了,新的给你吧,到我的空间的source目录中找找吧,新的mxd2实现了参数,如果执行mxd up则软件一打开就拔号了,你用kwrite以utf8编码方式打开修改/usr/share/applications/mxd.desktop增加参数up。
[Desktop Entry]
Categories=Application;Network;
Comment=MXD 拔号器
Comment[zh_CN]=MXD 拔号器
Exec[$e]=/opt/mxd/mxd up
GenericName=MXD 拔号器
GenericName[zh_CN]=MXD 拔号器
Icon=ktalkd
MimeType=
Name=mxd
Path[$e]=
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-DCOP-ServiceType=
X-KDE-SubstituteUID=false
X-KDE-Username=
回复

使用道具 举报

 楼主| 发表于 2009-2-17 01:25:06 | 显示全部楼层
原帖由 atang520 于 2009-2-16 17:48 发表


这不太方便。原来的mxd加参数比较好。
32367

还不是一样的。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2009-2-26 01:07:08 | 显示全部楼层
把软件界面中的几个界面文字改回英文,然后翻译成中文,结果捣腾了半天才知道程序中最好给出翻译资源的绝对路径,否则只有在./×××如此执行时方才加载得到。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-27 03:08 , Processed in 0.038289 second(s), 14 queries .

© 2021 Powered by Discuz! X3.5.

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