我在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)
简而言之:您将在发行档案中找到所需的一切.