1.4. Solaris/SunOS 程序员要注意的事情

当编译 Solaris 或 SunOS 平台的代码时,你需要指定一些额外的命令行参数,以链接(link)正确的库(library)。为了达到这个目的,可以在编译命令後面简单加上"-lnsl -lsocket -lresolv",类似这样:

$ cc -o server server.c -lnsl -lsocket -lresolv

如果还是有错误信息,你可以再加上一个"-lnext"到命令行的後端。我不太清楚这样做了什麽事,不过有些人是会这样用。

你可能会遇到的另一个问题是调用 setsockopt()。这个原型与在我 Linux 系统上的不一样,所以可以这样替换:

int yes=1;

输入这行:

char yes='1';

因为我没有 Sun 系统,所以我无法测试上面的资料,这只是有人用 email 跟我说的。

Last updated