主题:求助:EM9280 ntpdate命令无效

  共有26911人关注过本帖    
帅哥哟,离线,有人找我吗?
jumpower
1楼 信息 | 搜索 | 邮箱


加好友 发短信
求助:EM9280 ntpdate命令无效  发帖心情 Post By:2014-12-29 22:09:00   [只看该作者]

在EM9280工控板子在链接了GPRS的情况下,手动运行命令ntpdate pool.ntp.org是可以正常同步网络时间的,可是想把这个命令在某程序中调用运行,使用system("ntpdate pool.ntp.org");为什么却同步失败了呢?
[此贴子已经被作者于2014-12-30 15:03:53编辑过]

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hzc
2楼 信息 | 搜索 | 邮箱


加好友 发短信 员工
  发帖心情 Post By:2014-12-30 9:21:00   [只看该作者]

你好,可以直接在命令行输入命令ntpdate cn.pool.ntp.org来测试功能是否正常。
我这边用板子测试了,应该是可以正确校时的,也可以参考一下:http://www.emlinix.com/news/news2011325.html

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
jumpower
3楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2014-12-30 14:57:00   [只看该作者]

我在连接了gprs网络的情况下 通过命令 ntpdate pool.ntp.org 直接测试是有用的  但是我在程序中通过fork(); 之后在子进程中运行如下命令
pid_t pid = fork();
if(pid <0)
perror("pid");
if(pid == 0)
{
execl("/bin/ntpdate", "ntpdate", "pool.ntp.org", NULL);
perror("execvp");
}
在运行时出现的却是:
20 Mar 00:23:58 ntpdate[123]: poll(): nfound = 0, error: No such file or directory
法二:
在程序中直接调用命令
system("ntpdate  pool.ntp.org");
也同样不能够正常同步时间

请问程序自运行命令和自己用命令来执行效果就是不一样呢?

  单帖管理 | 引用 | 回复 回到顶部
zhl
4楼


  发帖心情 Post By:2014-12-30 16:16:00   [只看该作者]

 exec()函数族是可以正常启动的,因为涉及到路径,建议你调用函数execlp(),p表示PATH中搜索执行的文件,如PATH没有设置, 则会默认在/bin,/usr/bin下搜索。


  单帖管理 | 引用 | 回复 回到顶部

返回首页

求助:EM9280 ntpdate命令无效

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: