zoukankan      html  css  js  c++  java
  • 为使用mysql而配置codeblocks工程

       

    心结:

     
       为了在codeblocks下创建的C++工程中使用mysql,辛辛苦苦忙活了半个下午,终于长舒一口气,搞定了,编译成功。
        其中不乏数次的成功于失败的反复。个中滋味,只有让我有擂头顿足的冲动。
        不过,还算上天公平,问题终究还是解决了。
        趁着刻骨铭心的痛苦还没有消失殆尽,赶快把过程记录于此。权慰数小时之功,且备来时之用。

    -----------------------------------------------------
     记录:
        为使用mysql配置codeblocks下C++工程:
            goto project -> build options
            a. compiler settings tab -> other options: `mysql_config --cflags`
            b. linker settings tab -> other options: `mysql_config --libs`
            to get codecompletion you probably need to add the include dir to your project
            c. search directories tab -> compiler:  /usr/include/mysql


    -----------------------------------------------------
    问题:
        为了弄明白mysql_config是什么东西?
        使用了mysql_config之后,为什么就不需要lmysqlclient参数了?

        带着问题,查到了mysql_config的一些说明。转载如下:
    -----------------------------------------------------
    转载:
    //转载声明:下面的文字来自:Java入门培训网
       
      #
        mysql_config提供了关于编译MySQL客户端以及将其连接到MySQL的有用信息。
        mysql_config支持下述选项:
        ?         --cflags
        编译器标志,用于查找包含文件,以及编译libmysqlclient库时所要使用的关键编译器标志和定义。
        ?         --include
        编译器选项,用于查找MySQL包含文件(注意,正常情况下应使用“?cflags”而不是该选项)。
        ?         --libmysqld-libs, ---embedded
        与MySQL嵌入式服务器进行链接所需的库和选项。
        ?         --libs
        与MySQL客户端库进行链接所需的库和选项。
        ?         --libs_r
        与线程安全MySQL客户端库进行链接所需的库和选项。
        ?         --port
        默认的TCP/IP端口号,配置MySQL时定义。
        ?         --socket
        默认的Unix套接字文件,配置MySQL时定义。
        ?         --version
        版本号以及MySQL分发版的版本。

        如果未使用任何选项调用了mysql_config,将显示它所支持的所有选项的列表,以及它们的值:
        shell> mysql_config
        Usage: /usr/local/mysql/bin/mysql_config [options]
        Options:
          --cflags         [-I/usr/local/mysql/include/mysql -mcpu=pentiumpro]
          --include        [-I/usr/local/mysql/include/mysql]
          --libs           [-L/usr/local/mysql/lib/mysql -lmysqlclient -lz
                        -lcrypt -lnsl -lm -L/usr/lib -lssl -lcrypto]
          --libs_r         [-L/usr/local/mysql/lib/mysql -lmysqlclient_r
                        -lpthread -lz -lcrypt -lnsl -lm -lpthread]
          --socket         [/tmp/mysql.sock]
          --port           [3306]
          --version        [4.0.16]
          --libmysqld-libs [-L/usr/local/mysql/lib/mysql -lmysqld -lpthread -lz
                        -lcrypt -lnsl -lm -lpthread -lrt]

        可以在命令行上使用mysql_config,并包含针对特定选项的值。例如,要想编译MySQL客户端程序,
        可使用mysql_config,如下例所示:
        shell> CFG=/usr/local/mysql/bin/mysql_config
        shell> sh -c "gcc -o progname `$CFG --cflags` progname.c `$CFG --libs`"
        以这种方式使用mysql_config时,务必在字符(‘`’)内调用它。
        这样,就能通知shell执行它,并将其输出代入到环境命令中。
  • 相关阅读:
    QR码与DM码的对比
    JBPM在Eclipse中运行时页面错误ProcessEngine cannot be resolved to a type
    C. A Mist of Florescence
    B. A Tide of Riverscape
    A. A Blend of Springtime
    A. Gennady the Dentist
    D. Lizard Era: Beginning
    E. Jzzhu and Apples
    D. Jzzhu and Cities
    C. Jzzhu and Chocolate
  • 原文地址:https://www.cnblogs.com/lidan/p/2239513.html
Copyright © 2011-2022 走看看