﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-wonderer's-随笔分类-linux</title><link>http://www.blogjava.net/wonderer/category/21145.html</link><description>everything will be better</description><language>zh-cn</language><lastBuildDate>Sun, 22 Apr 2007 14:12:51 GMT</lastBuildDate><pubDate>Sun, 22 Apr 2007 14:12:51 GMT</pubDate><ttl>60</ttl><item><title>subversion一些默认的设置</title><link>http://www.blogjava.net/wonderer/archive/2007/04/16/111089.html</link><dc:creator>wonderer</dc:creator><author>wonderer</author><pubDate>Mon, 16 Apr 2007 13:40:00 GMT</pubDate><guid>http://www.blogjava.net/wonderer/archive/2007/04/16/111089.html</guid><wfw:comment>http://www.blogjava.net/wonderer/comments/111089.html</wfw:comment><comments>http://www.blogjava.net/wonderer/archive/2007/04/16/111089.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wonderer/comments/commentRss/111089.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wonderer/services/trackbacks/111089.html</trackback:ping><description><![CDATA[<p>在subversion的配置文件 svnserve.con 中，默认的配置都说的很清楚。可是在配置的时候，却没有看清楚。一天，一个小组的成员说他检出他项目的时候可以不输入密码的，但是项目的源码却不可以对外公开的。于是，才发觉到这个问题。</p>
<p>后来发现问题出现在</p>
<p>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">anon-access&nbsp;=&nbsp;read</span></div>
<br> </p>
<p>这里，配置文件里说的很清楚的</p>
<p>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">###&nbsp;These&nbsp;options&nbsp;control&nbsp;access&nbsp;to&nbsp;the&nbsp;repository&nbsp;for&nbsp;unauthenticated<br>###&nbsp;and&nbsp;authenticated&nbsp;users.&nbsp;Valid&nbsp;values&nbsp;are&nbsp;"write",&nbsp;"read",<br>###&nbsp;and&nbsp;"none".&nbsp;The&nbsp;sample&nbsp;settings&nbsp;below&nbsp;are&nbsp;the&nbsp;defaults.<br>#anon-access&nbsp;=&nbsp;read<br>#auth-access&nbsp;=&nbsp;write</span></div>
<br></p>
<p>默认的是匿名可读的，现只要添加</p>
<p>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">anon-access&nbsp;=&nbsp;none</span></div>
<br> </p>
<p>就可以了</p><img src ="http://www.blogjava.net/wonderer/aggbug/111089.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wonderer/" target="_blank">wonderer</a> 2007-04-16 21:40 <a href="http://www.blogjava.net/wonderer/archive/2007/04/16/111089.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>翻译：把 Borland Turbo c 的源代码移植到GNU gcc</title><link>http://www.blogjava.net/wonderer/archive/2007/03/31/107650.html</link><dc:creator>wonderer</dc:creator><author>wonderer</author><pubDate>Sat, 31 Mar 2007 08:23:00 GMT</pubDate><guid>http://www.blogjava.net/wonderer/archive/2007/03/31/107650.html</guid><wfw:comment>http://www.blogjava.net/wonderer/comments/107650.html</wfw:comment><comments>http://www.blogjava.net/wonderer/archive/2007/03/31/107650.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wonderer/comments/commentRss/107650.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wonderer/services/trackbacks/107650.html</trackback:ping><description><![CDATA[<p></p> <p>把 Borland Turbo c 的源代码移植到GNU gcc  <p>内容<br>TurboC 的大概内容<br>TurboC为何而生??<br>其他方法(Alternate Approaches, 不知道是不是这样翻译)<br>TurboC的特点与不足<br>下载和安装TurboC <br>未来的计划<br>为什么要用这么可爱的logo呢?  <p>TurboC的大概内容  <p>TurboC是一个可连接的库同时也是一大堆C语言的头文件,是为了更容易地在GNU gcc,也就是在类Unix系统上,编译那些用原来在Turbo C编译器编译的MS-DOS系统的C语言的源文件,概括如下:<br>通过Turbo C的conio.x里的ncurses的实现<br>通过Turbo C的graphics.h里的Xlib的实现<br>一些其他的函数和为了方便的节省时间的特征<br>一种克服了Turbo C和GUN gcc的整型数据类型差异的方法<br>但不管怎么说,这也不是一个完美的解决方案,但是你会发现它还是有用的.你可以在它相关的早期的发展阶段找到graphics.h的帮助.<br>TurboC遵于GNU的LGPL协议(Lesser General Public License).  <p>TurboC为何而生??  <p>我写过很多基于MS-DOS的用Borland公司的Turbo C 2.0编译器编译的程序.当由于爱好的原因,我想把其中一些代码以自由软件的形式存在,我便想到了把这些代码发布在GPL下,是MS-DOS的代码,慢慢的把它们转换成类Unix系统的代码.很明显,预先直接的去转换(MS-DOS--&gt; *nix)是一件很耗时的工作.而且渐渐的,我遇到了困难,因为发布一个别人无法理解其源代码的的软件并不是一件好事.而我最喜欢的发布开源的频道fleshmeat不"吃"MS-DOS,因此它很文雅的拒绝了我的MS-DOS项目.<br>很显然,现在的需要是更底层的,然后我就想到了我可以提供合适兼容的Turbo C的库和头文件,这样,把Turbo C的源码引到类Unix系统就会简单得多.也就是说,提供旧版本的MS-DOS的类Unix版本是一件相对容易很多的事情.但究竟这个容易去到哪儿,跟你要引进的程序的很多东西都有关.  <p>其他方法(Alternate Approaches, 不知道是不是这样翻译)  <p>对于conio.h的功能,你可以考虑使用pablo Vidal的UConio的库来代替.但是我没有使用过,所以无法说出其好长与不足,不过它肯定提供比TurboC提供一个少得多的Conio的功能的子集.而且它也会要求你更大范围的修改你的源代码.<br>Borland公司已经有了(或许会提供)一个Linux版本的C++编译器,这样的话,它的nature,价格和这个编译器的目标工作平台将是一个谜.一种假设(象Kylix)就是它将基于wine的,所以它只可以工作在x86的系统上面.但是,如果它包括了在TurboC上实现的库,那样,老实说,他提供了一种更简单的的方法来把你Turbo C的源代码引入到Linux上,但如果这样的话,它将会是非常庞大的.对我自己来说,尽管已经是一个很久的borland公司的用户了,但我还是非常希望用GNU gcc来编译我的程序.<br>对于graphics.h的功能,有一个Csaba Biegl, Michael Goffioul, and Hartmut Schirmer的GRX库.直到graphics.h的功能还有一点还没写完的时候,我才发现了这个库,因此我还没来得及很充分的测试它.它的目标是要成为一个多平台的2D图像库.它的官网没有宣传(甚至没有提到)与Turbo C的兼容性.然而,它只包括了非常少量的与Turbo C同名(当然还有相同功能)的功能.<br>当然,如果你只是感兴趣在类Unix系统上运行你的程序,同时也反对把其他程序引到类Unix系统上,那你也可以在linux版本的DOS emulators 下运行你已经存在的程序.DOS emulation使用了 dosemu 和 freedos ,在x86系统上工作得非常好,同时 bochs 和 freedos在非x86类Unix系统上工作的也不错(但可能有点慢).  <p>TurboC的特点与不足  <p>特点<br>TurboC 提供了Turbo C的conio.h头文件控制台的大部分功能,与相关的ncurses的功能一一对应.(当然,除了scanf之外的conio.h的功能都有提供)<br>TurboC提供了Turbo C的graphics.h头文件"BGI"的大部分功能.到目前为止(2002 06 08),除了临时缺乏stroked-font的支持,这些特点的实现已经完成的很彻底了.<br>TurboC提供了这些丢失的功能诸如strupr和strlwr的功能的很少的东西,<br>请确认可提供的方法的完整列表:  <p>不足<br>请参考bugs和issues的完整列表.到目前为止,这个库文件只是我在特定的我写的Turbo C的程序所需要的那么完整,随着我引入的我以前的程序到类Unix 系统的多起来,TurboC的库大概才会愈来愈完整.到目前为止,本质上conio.h的支持已经完整了,除了显示文本外,graphics.h的支持也本质上完整了.<br>在已经引进的程序里,除非你使用了xterm,要不然文本控制台的窗口指挥逻辑上自动调好尺寸,并不会physically地去调整.如果你用了诸如KDE控制台之类的其他控制台,用户必须人为地去调整了. <br>Borland的Turbo C是16位的编译器,但是我目标的GNU gcc编译器是32位的,结果产生了整型的数据类型的差异.TurboC用宏的方法处理了(但愿)更普遍的情况.没有处理的情况会在编译的时候报错,用户必须手动去修改.在用户的页面会被详细介绍.<br>用基于诸如 getcha, cprintf或其他的控制台来混合基于流的功能(如 getchar, printf,其他),很可能会不工作.你也可以浏览usage page.  <p>下载并安装TurboC<br>下载源代码<br>*Most-current development code (20040218) TurboC-dev.tar.gz<br>20020602 snapshot TurboC-20020602.tar.gz<br>20020419 snapshot TurboC-20020419.tar.gz<br>20020418 snapshot TurboC-20020418.tar.gz<br>20020323 snapshot TurboC-20020323.tar.gz<br>20020317 snapshot TurboC-20020317.tar.gz<br>20020312 snapshot TurboC-20020312.tar.gz  <p>tarball里包括了一个教TurboC-source的文件夹,你可以简单的在这个目录下用make来编译库.但必须是GNU gcc或者用gmake(例如在FreeBSD或Mac下)来编译(提示,在FreeGSD下,你要编辑makefile和注释/反注释开头的若干行,你会很容易看到的),我已经检验了最近释出的snapshot(不是开发者的snapshot)并在以下系统测试了程序:<br>Linux Intel 'x86 (SuSE 8.0) <br>Linux PowerPC (SuSE 7.3) <br>FreeBSD (4.5)<br>(早期的TurboC的库好像在FreeBSD上工作的效果不怎么好,请升级到20020420的版本,并且在运行引入的程序的时候按照下面的步骤).最近释出的snapshot只在SuSE8.2上测试过.<br>把这个库(libTurboC.a and libTurboCu.a)放在你系统放库的地方--通常在 /usr/lib.把所有的头文件放到它应该放的地方--通常是 /usr/include.又或者,你也可以添加它们的链接到这些目录.又或者,把它们放到你喜欢的地方,然后在gcc里用参数 -L和-I来连接它们.<br>在我的系统,我是这么做的.<br>cd ~ <br>tar -xzvf TurboC-dev.tar.gz <br>cd TurboC-source <br>... 编辑FreeBSD的makefile ... <br>make (or gmake) <br>su <br>ln -s *.h /usr/include <br>ln -s libTurboC.a /usr/lib <br>exit<br>你会发现(例如,在FreeBSD)如果你在你引入的程序力#include了TurboC的头文件,你的编译器会报错:标识符链接太深(symbolic links being "too deep").如果是这样的话,你可以把上边的ln命令的参数"-s"去掉.<br>另外,编译Makefile当然会假定X-window系统的头文件和库;如果这个假定是错的话,你就要你的编译器加上参数"-L"和/或者"-I"来调整.X-window系统必须编译全部的库,或者你要运行你的程序,如果你要用到graphics.h的功能.如果你不打算使用这些功能,你可以通过编辑Makefile和去掉编译器参数的"-DWITH_X"在没有X的系统上引入和编译你的程序.  <p>未来的计划  <p>嗯,很明显这种项目是没什么前途的,它的计划只不过是从一个古老的编译器里引入它的代码.然而,我还是会在我这个项目里根据需要增加一些特性的.我不会浪费精力去写一些没有在我Turbo C程序力出现过的功能的,但如果你自己已经写了而又告诉了我,我是很乐意加进去的(把荣辱加给你).<br>当然,很希望你能把TurboC的bug返回给我,(当然在这之前,去看看Buglist有没有这个问题),我会尽力去改正它们的.  <p>为什么要用这么可爱的logo呢?  <p>这是一幅姐妹在谈话的图片,画家Lynn Rothan的杰作.我试图表达的意思是,它表现了很相似的c编译器 Borland Turbo C和GUN gcc的关系.当然拉,lynn有他自己的意思.请参考他的网站.</p><img src ="http://www.blogjava.net/wonderer/aggbug/107650.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wonderer/" target="_blank">wonderer</a> 2007-03-31 16:23 <a href="http://www.blogjava.net/wonderer/archive/2007/03/31/107650.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ubuntu下服务的自启动</title><link>http://www.blogjava.net/wonderer/archive/2007/03/31/107645.html</link><dc:creator>wonderer</dc:creator><author>wonderer</author><pubDate>Sat, 31 Mar 2007 08:05:00 GMT</pubDate><guid>http://www.blogjava.net/wonderer/archive/2007/03/31/107645.html</guid><wfw:comment>http://www.blogjava.net/wonderer/comments/107645.html</wfw:comment><comments>http://www.blogjava.net/wonderer/archive/2007/03/31/107645.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wonderer/comments/commentRss/107645.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wonderer/services/trackbacks/107645.html</trackback:ping><description><![CDATA[<p>实验室最近装了个subversion的服务器，操作系统采用了ubuntu server，没有安装desktop，鬼叫老师才给个128的内存。一路安装过来，非常顺利。</p> <p>&nbsp;&nbsp;&nbsp; sudo apt-get subversion</p> <p>然后就可以用svnadmin create project来创建项目了。之后修改passwd和svnserve.cnf文件都没有什么难度。不过发现ubuntu server没有redhat的chkconf指令（不过我也不懂这个指令是怎样工作的）。尝试过在/etc/init.d/rc3.d/里做链接。不过不成功,可能是我的文件链接有问题,找遍了ubuntu论坛,没有找到答案。最后，只能通过/etc/rc.local来达到我的目的了。</p> <p>rc.local在是系统启动后就执行,也就是说你没有登陆前就执行了 <p>rc.local脚本只是一个在各运行级别里到rc.d目录的rc.local脚本的软链接而已，编号最大，所以被rc脚本执行时在各运行级别的初始化末尾进行。<br>在rc.local里设置的最好是系统级别而非用户级别的，因为启动脚本的初始化与用户无关（启动脚本初始化完成后，才进入用户登录界面）。与用户相关的最好设置shell的配置文件如~/.bash_profile <p><a href="http://www.blogjava.net/images/blogjava_net/wonderer/WindowsLiveWriter/ubuntu_E07C/image%7B0%7D%5B14%5D.png" atomicselection="true"><img height="259" src="http://www.blogjava.net/images/blogjava_net/wonderer/WindowsLiveWriter/ubuntu_E07C/image%7B0%7D_thumb%5B12%5D.png" width="570"></a></p><img src ="http://www.blogjava.net/wonderer/aggbug/107645.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wonderer/" target="_blank">wonderer</a> 2007-03-31 16:05 <a href="http://www.blogjava.net/wonderer/archive/2007/03/31/107645.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>