ECoMark Platform搭建

来源:互联网 发布:招聘网络兼职的广告语 编辑:程序博客网 时间:2024/05/21 22:49

【M.Deng, T.Bianchi, A.Piva, B.Preneel, "An Efficient Buyer-Seller Watermarking Protocol based on Composite Signal Representation",  Proceedings of the 11th ACM Workshop on Multimedia and Security (MM&SEC 2009), Princeton, NJ, USA,  Sept. 2009. 】code的Platform搭建

************
* Platform *
************      
Tested on Linux (g++ 4.3.2) and Windows XP x64 with MinGW (g++ 4.5.0). 
Libraries required:
GNU Multiple Precision Arithmetic Library (http://gmplib.org/)  (下载xz的版本)
NTL: A Library for doing Number Theory (http://www.shoup.net/ntl/) 
GNU Scientific Library (http://www.gnu.org/software/gsl/) 
The CImg Library - C++ Template Image Processing Toolkit 
(http://cimg.sourceforge.net/index.shtml)

***********************
* Set-up Instructions *  
***********************
Extract all files to a single directory. Run COMPILE_<platform> scripts.  (在linux下执行语句为:./COMPILE_linux)
********************
* Run Instructions *
********************      
demo -f <image>

Some sample *.pgm images are included.
Run demo without arguments for options.
**********************
* Output Description *
**********************


1、1)Windows with MinGW +vim(使用与linux下同)

       MinGW 是什么? http://blog.csdn.net/jpcfei/article/details/6428613 ;

       安装视频:http://v.youku.com/v_show/id_XNDE1ODQwMDMy.html ;http://www.youtube.com/watch?v=Fl7iY7MFGJs 

       安装教程:http://tieba.baidu.com/p/2826016538

       2)Linux (g++ 4.3.2) :

               检查是否安装g++:->g++ -v<enter> (输出版本即为已安装)

               安装g++:Terminal : ->sudo apt-get install build-essential<enter>

                                                      ->password<enter>

               安装VIM:-> sudo apt-get install vim<enter>

                                   http://www.osetc.com/linux-ubuntu-install-the-command-line-text-editor-vim.html

 2、Linux下VIM的使用

      1)进入VIM:terminal上输入vim,回车即可;

      2)VIM上写C程序并运行:


3、1) Ubuntu上安装GMP(GNU Multiple Precision Arithmetic Library):

            先安装m4文件解析器:sudo apt-et install m4                                                                                                         

           ~$tar zxf gmp-x.x.x.tar.xz

          ~$cd gmp-x.x.x

          gmp-x.x.x$sudo make

          gmp-x.x.x$make check

          gmp-x.x.x$make install

          #安装完毕,默认路径为/usr/local

  http://hi.baidu.com/pcghost/item/b58b884ed6dea3abdf2a9f96


       2) Ubuntu上安装GNU Scientific Library(gsl):

           ~$tar -zxvf gsl-x.xx.tar.gz

          ~$cd gls-x.xx

          gls-x.xx$sudo ./configure

          gls-x.xx$sudo make

          gls-x.xx$sudo make check

          gls-x.xx$sudo make install

          gls-x.xx$sudo make clean

        #安装完毕,默认路径为/usr/local

        http://blog.163.com/znn04006518@126/blog/static/11825612520120975113630

        http://www.linuxdiyf.com/viewarticle.php?id=179389


        3) Ubuntu上安装NTL:D:\WinNTL-5_5_2\doc\tour-unix.html 

                       在/Home目录下终端执行以下指令:

-> gunzip ntl-xxx.tar.gz  <enter>

-> tar xf ntl-xxx.tar<enter>

 ->cd ntl-xxx/src<enter>

->./configure PREFIX=$Home/sw<enter>   ($Home/sw为安装目录,默认目录为/usr/local)

->make<enter> 

->make check<enter>

->make install<enter>

         备注:当出现无权限时,在执行语句前加sudo,输入密码后即可执行。

        4) Ubuntu上安装The CImg Library - C++ Template Image Processing Toolkit :无需安装,只需将CImg.h头文件添加到程序包内即可

http://cimg.sourceforge.net/index.shtml                                          

http://blog.163.com/xglla_1129/blog/static/81073510201061145439483/ 

4、1)安装VMware Tool:

              -> VM-Install VMware Tools

              -> 解压VMwareTools-x.x.x-xxxx.tar.gz,并拷贝到Home文件夹

               -> cd <enter>

              ->  ls<enter> 

              ->  cd VMware-tools-distrib<enter>

              ->  ls<enter>

             ->  sudo ./vmware-install.pl<enter>

              接下来不断按<enter>即可完成安装。

          参考网址:

                              file:///D:/VMware9/VMware9.0/help/workstation_win/wwhelp/wwhimpl/js/html/wwhelp.htm#href=GUID-08BB9465-D40A-4E16-9E15-8C016CC8166F.html

                              http://zhidao.baidu.com/link?url=tE0JXVyzPu9Z8S2A0pGBQ6bzlUk81i-9_d30mJmGpirMPN7KCSknZnDBRFyvTVZhy4gASH-aaaF1rUSroBXx7a

       2)实现文件共享:http://www.linuxidc.com/Linux/2012-07/64166.htm

                                         http://blog.csdn.net/lxwxiao/article/details/9147411

5、Linux C++编程:

              Terminal:    ->vim xxx.cc(进入文本编辑器)

                                    ->vim .vimrc (文本编辑器中配置文件)

                                    ->vim xxx.cc

                VIM的xxx.cc中:->a (可输入) 

                                             -> set nu (设置行数)

                                             ->set tabstop=4 

                                              ->xxxxxxx(输入程序)

                                               ->Esc(退出输入)

                                                ->:wq(退出并保存)

                  Terminal:  ->g++ xxx.cc(编辑运行xxx.cc文件)

              参考资料:Linux下的C++编程.ppt-北邮百度俱乐部
                                  http://wenku.baidu.com/view/e3fd5d0316fc700abb68fccd.html

                                  视频:http://v.uplook.cn/videoyykf/emb/2070/32423.html


6、Bug1:CImg.h:198:22 fatal error:X11/Xlib.h:no such file or directory

            解决:http://hi.baidu.com/liyi6891/item/7ac4753ebd6b3db9134b140e

sudo apt-get install libx11-dev
sudo apt-get install libgtkglextmm-x11-dev
sudo apt-get install libghc6-x11-dev
sudo apt-get install libgl1-mesa-swx11-dev

      Bug2:  NTL库链接不了,出现undefine reference to 的问题

            解决:把NTL整个文件夹放到跟main.cc同个目录下面,然后执行语句那个加上了main.cc的路径:g++ -I/home/yuliya main.cc -L/usr/local/lib -lntl (注意路径的设置及                             NTL文件内.h文件的调用!)

      Bug3 :  the download library can't be used twice again, you have to reload it if you want to install it in another computer.

      Bug4:  ./gdb_demo: error while loading shared libraries: libgsl.so.0: cannot open shared object file: No such file or directory
                    sudo ldconfig/usr/local/lib

            参考网站:D:\WinNTL-5_5_2\doc\tour-unix.html

                                http://ticktick.blog.51cto.com/823160/431329

                               http://hi.baidu.com/yoman/item/5046cc8420da49ebe496e008

                               http://blog.sina.com.cn/s/blog_6e9273c901018b8k.html                              


7、心得体会:

             从VM虚拟机的安装直到实现demo的运行,为了跑这个代码可谓是呕心沥血、茶饭不思了~经过一个星期的折腾最终尘埃落定,心里感慨良多,同时获益匪浅。

             1)熟悉了linux下编程环境,g++和vim的使用,以及基本的指令./,cd,ls,....

             2)学会筛选网络信息。网络是个好东西,整个SLY的方法基本上都是从网络中blog、百度、goole及相关网页搜索到的。当有问题时,一定要及时baidu和goole。但也 学会筛选合适你的信息进行借鉴,注重权威网站的信息,为解决自己的实际问题,非照单全收。

             3)通过聊天工具,eg:QQ, Q群,blog等认识相关专业人士,向他们请教解决问题。此处非常感谢“大哥”及“沈大侠”帮助!

             4)当遇到棘手的问题时(eg:undefine reference to),一定要沉下心来,认真思考解决方案。当毫无头绪时,应该从另一个角度去解决(eg:改装mingw代替linux)或者先放下干其他事情,切勿钻牛角尖.

            

 



查找文件指令:find  /  name 文件名
虚拟机和主机的文件共享指令: 

sudo apt-get install open-vm-dkms  (安装过则不需要执行)

sudo mount -t vmbgfs .host:/ /mnt/hgfs

cd /mnt/hgfs

终端快捷键:Ctrl+Alt+T



 

0 0