【问题标题】:Cross platform c++ with libcurl带有 libcurl 的跨平台 C++
【发布时间】:2009-12-07 22:33:08
【问题描述】:

我是一名从未涉足客户端编程的 perl 开发人员。我想认为我是一个非常优秀的开发人员,但我知道我对桌面编程方式的严重缺乏了解确实会影响我的可信度。

也就是说,我真的很想从事一些桌面应用程序。

我想尝试开发一个简单的应用程序,该应用程序将连接到我的服务器并获取 rss 提要,然后将其显示在控制台中。我的攻击计划是使用 libcurl(和 curlpp)来获取提要(我还想在未来做更多 curl 的东西)。但是我希望能够在linux、windows和mac上运行这个小程序,因为我想了解开发跨平台。

所以这是一个问题(我知道这非常愚蠢):我如何编写将使用 libcurl 和 curlpp 并在 3 个主要操作系统上工作的 c++ 代码? 主要的事情我不明白的是,如果我必须编译 libcurl 和 curlpp,那么在尝试将其接管到其他平台时它是如何工作的?

【问题讨论】:

    标签: c++ cross-platform libcurl curlpp


    【解决方案1】:

    您需要以可移植的方式编写代码 - 基本上使其成为控制台应用程序。然后将源代码(不是 exe)转移到其他平台并在那里编译并与每个特定平台上的 llibcurl 版本链接。

    【讨论】:

    • 首先感谢您的回复。所以基本流程应该是在windows上编译libcurl,编写可移植代码,静态链接libcurl,复制源码到linux,重复?
    • 是的,就是这样。这并不难——我有一个 FOSS 项目,它可以在 Windows 和 Linux 上编译,两个平台之间只有很小的变化。
    • 哦,我应该说,如果你在所有平台上都使用 GCC 编译器,事情会更简单。
    • 坚持使用 POSIX 调用,会有很大帮助。
    【解决方案2】:

    Neil 是对的,但使用框架会让您的生活更轻松。试试QT 非常好。它有一个跨平台的http API,并且集成了curl。

    【讨论】:

    • 好吧,如果他只需要一个控制台应用程序,QT 就太过分了。永远不要低估学习一个框架所需的时间,然后才能使用它。
    • 另外,他想学跨平台开发,不让Qt替他干。
    • 我听说过很多关于 QT 的知识,但显然从未使用过它。一旦我手动关闭该过程,我将对其进行检查。它看起来非常适合更大的项目。感谢您的建议。
    【解决方案3】:

    我也推荐 Qt4,我写了一篇关于如何在 linux 上设置 windows gcc 编译器并用它为 windows 编译 Qt4/OpenSSL 的小教程,希望对您有所帮助。 http://www.limitlessfx.com/mingw-openssl-qt4-for-windows-on-linux.html

    您可以轻松地将该教程改编为编译 libcurl,而不仅仅是迁移到 Qt4。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-14
      • 2021-06-06
      • 1970-01-01
      • 2011-07-11
      • 1970-01-01
      • 1970-01-01
      • 2010-12-25
      相关资源
      最近更新 更多