没有用户在rpc中登录

时间:2013-01-26 10:17:11

标签: linux networking rpc

我是rpc的新手,即iam在学习阶段我想要从下面的程序登录用户 我像这样编译“cc samrpc.c -lrpcsvc”,但它显示的错误和警告是

     samrpc.c: In function ‘main’:
 samrpc.c:9:1: warning: incompatible implicit declaration of built-in function ‘exit’       [enabled by default]
  samrpc.c:13:1: warning: incompatible implicit declaration of built-in function ‘exit’    [enabled by default]
/tmp/ccxyIUNJ.o: In function `main':
samrpc.c:(.text+0x51): undefined reference to `rnusers'
collect2: error: ld returned 1 exit status

你能告诉我如何编译程序和wat是我需要的要求 注意:samrpc.c是程序名,我的程序在下面

 #include <stdio.h>
 int main(argc, argv)
 int argc;
 char **argv;
 { 
 int num;
  if (argc != 2) {
 fprintf(stderr, "usage: rnusers hostname\n");
 exit(1);
 }
 if ((num = rnusers(argv[1])) < 0) {
 fprintf(stderr, "error: rnusers\n");
 exit(-1);
 }
 printf("%d users on %s\n", num, argv[1]);
 return 0;
 }

}

1 个答案:

答案 0 :(得分:-1)

检查您的代码

  

ld返回1退出状态表示您对主函数的未定义引用由于哪个链接器没有找到编程的入口点

     
    

在你的代码main中没有正确定义你的运行时参数也没有正确传递

  
#include <stdio.h>
#include<process.h>
int main(int argc,char ** argv)
{
 int num;
  if (argc != 2) {
 fprintf(stderr, "usage: rnusers hostname\n");
 exit(1);
 }
 if ((num = rnusers(argv[1])) < 0) {
 fprintf(stderr, "error: rnusers\n");
 exit(-1);
 }
 printf("%d users on %s\n", num, argv[1]);
 return 0;
 }

正确定义主要内容并且它应该正常工作