DTL使用中遇到的sql.h无法找到的解决过程

        最近任务,看DTL,高级货呢么,一搜,还有OTL,哎,看到一个linux培训机构的广告,培训Linux下开发,包括ACE,Boost,OTL,DTL....看到个评论,说这几个就够喝一壶的了,哎,算来估计的确是啊,虽然最近也看点ACE,不过目前是让DTL,储备力量,爆发之。。。

        首先,去了sourceforge下载DTL源码http://sourceforge.net/projects/dtemplatelib/,进入目录,make一把,悲剧了,fatal error:sql.h :No such file or dictionary。。。

        一搜,整个系统只有qt的qsql.h和mysql的mysql.h,果然没有sql.h;而在windows这边,是能搜到sql.h的,vc98的include下有的。

       搜索引擎是个好东东啊,一搜,原来没装unixodbc,http://bytes.com/topic/c/answers/604015-dtl-g#post2379147(看到和自己差不多的人遇到同样的问题,居然有一丝欣慰,哎,邪恶了)。毕竟也是啊,人DTL是封装ODBC成类似STL操作的,没ODBC的东东,说不过去,于是装之(更多unixodbc可参考http://www.unixodbc.org/)

         

sudo apt-get install unixodbc
       不过依旧找不到sql.h,纳尼?以楼主有限的经历,实在想不出原因啦,莫非windows有,因为windows我装了sqlserver?看目录,应该是vc6对sql访问提供支持才对啊。那么linux呢?

      于是,继续在茫茫网海中搜寻,何处是归处?

       问题在于,用这个东东的人就不多,幸好长期用google的engligh搜索再去掉搜索结果,不然百度这个真的是搜不出这些东东。终于,功夫不负有心人,在sql.h  和ubuntu的组合词搜索下(真的是换了很多个组合,像sql.h:no such file),找到个很是靠谱的:

http://packages.ubuntu.com/search?searchon=contents&keywords=sql.h&mode=exactfilename&suite=intrepid&arch=any

       因为sql.h是来自于unixodbc-dev或libiodbc2-dev开发包,于是果断装之:

sudo apt-get install unixodbc-dev
sudo apt-get install libiodbc2-dev
      后来在自己电脑上重做,发现只需要第一个就够。

       再次make,OK。exlipse直接添加DTL.h也不再像以前提示缺少文件,Ok~~~

       至此,解决。中间搜到的http://www.builder.com.cn/2007/0912/501609.shtml也还不错,留着,也许有用http://blog.csdn.net/liefdiy/article/details/5348583

      下面就开始按照文档进行尝试了。。。先将本次经历整理为文档。

 

       ps:不少开源软件真是不错,像DTL,文档就做的很细致,代码风格还没看,应该不错,不然也不会这么出名,以前下的cppcheck,代码写的真是漂亮,而且分工和层次清楚,不得不说,好的开源软件,真的是福音啊

      

      菜鸟goes on ~~~

你可能感兴趣的:(Linux)