微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – 从Windows转移到Ubuntu

我曾经在 Windows中使用Microsoft Visual C进行编程,我需要使我的便携式程序(以便携式C编写)成为跨平台的,或至少我可以为 Linux和Windows发布我的程序的工作版本.

我在Linux应用程序开发中总是新手(很少使用操作系统本身).

所以,今天,我安装了Ubuntu 10.04 LTS(通过Wubi),并将g编译器作为主要武器装备了Code :: Blocks.然后我编译了我第一个Hello World linux程序,我对输出程序感到困惑.

我可以通过Code :: Blocks中的“Build and Run”菜单选项运行我的程序,但是当我尝试通过文件浏览器(在/ media / MyNTFSPartition / MyProject / bin / Release中)启动外部编译应用程序时,是的,我保存在我的NTFS分区),程序没有显示.

为什么?我跑出了想法.

我需要将Windows和Microsoft Visual Studio的心态更改为Linux和Code :: Blocks的心态.

所以我想出了这些问题:

>如何从外部执行我编译的linux程序(IDE外部)?

>在Windows中,我只是运行生成的可执行文件(.exe)文件

>如何分发我的linux应用程序?

>在Windows中,我简单地分发可执行文件与相应的DLL文件(如果有的话)

> linux中的LIB(静态库)和DLL(动态库)的相当于如何使用它们?

>在Windows / Visual Studio中,我只需将所需的库添加到“项目设置”中的“附加依赖关系”,我的程序将自动链接到所需的静态库(-ies)/ DLL.

>可以使用C库的“二进制形式”(如果提供),以便我不需要重新编译整个库源代码

>在Windows中,是的.有时提供预编译的* .lib文件.

>如果我想在Linux中创建一个wxWidgets应用程序,那我应该选择哪个Ubuntu的软件包? wxGTK或wxX11?我可以在X11下运行wxGTK程序吗?

>在Windows中,我使用wxmsW,当然.

>如果问题不行4回答可能,预编译wxX11 / wxGTK库存在哪里?没有尝试深入谷歌搜索.

>在Windows中,有一个名为“wxPack”(http://wxpack.sourceforge.net/)的项目节省了大量时间.

对不起,提出了很多问题,但我对这些linux开发基础真的很困惑.

任何一种帮助将不胜感激=)

谢谢.

解决方法

How can I execute my compiled linux
programs externally (outside IDE)? In
Windows,I simply run the generated
executable (.exe) file

在Linux上你也一样.唯一的区别是,在Linux上,当前目录认情况下不在PATH中,因此通常您可以:

./myapp

如果将当前目录添加到路径

PATH=".:$PATH"

然后像窗户般的方式

myapp

将会这样做,但是由于安全风险,至少在共享环境(你不想运行/ tmp / ls由某人留下),这不是建议的.

How can I distribute my linux application?
In Windows,I simply distribute the executable files with the corresponding DLL files (if any)

如果您认真分发,您应该了解.deb(Ubuntu,Debian)和.rpm(RedHat,CentOS,SUSE).那些是“包”,这使得用户易于使用分配特定的方式安装应用程序.

还有一些安装程序项目类似于Windows安装程序生成器,但我建议先学习前一个路径.

What is the equivalent of LIBs (static library) and DLLs (dynamic library) in linux and how to use them?

.a(静态)和.so(动态).你使用它们或多或少与Windows相同,当然使用gcc特定的编译选项.我不使用Code :: Blocks,所以我不知道他们的对话框是什么样的,最后是关于添加–llibrary到链接选项(猜猜什么:在Windows上它是关于添加/ llibrary ;-))

Is it possible to use the “binary form” of a C++ library (if provided) so that I wouldn’t need to recompile the entire library source code?

是.许多图书馆已经在发行版中.

还要注意,如果您使用.deb和.rpm进行分发,您可以说“我的应用程序需要这样的库并安装这些库”,它们将从分发存档中安装.这是推荐的方式,一般来说,你不应该分发你的图书馆副本.

If I want to create a wxWidgets application in Linux,which package should I pick for Ubuntu? wxGTK or wxX11? Can I run wxGTK program under X11?

尝试wxGTK首先,对话框可能看起来更好,gnome主题应该使用等

If question no. 4 is answered possible,are precompiled wxX11/wxGTK library exists out there? Haven’t tried deep google search.

尝试

apt-cache search wx

(或产生您的Ubuntu软件中心并搜索wx)

简而言之:您将在发行档案中找到所需的一切.

原文地址:https://www.jb51.cc/c/112664.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐