佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 3225|回复: 38

wxWindows -- wxGTK的License

[复制链接]
发表于 26-2-2005 10:44 AM | 显示全部楼层 |阅读模式
以下是wxGTK的License。
红色字的那段,是否表示可以用wxGTK来编商业软件?

               wxWindows Library Licence, Version 3
                ====================================

  Copyright (c) 1998 Julian Smart, Robert Roebling et al

  Everyone is permitted to copy and distribute verbatim copies
  of this licence document, but changing it is not allowed.

                       WXWINDOWS LIBRARY LICENCE
     TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
  
  This library is free software; you can redistribute it and/or modify it
  under the terms of the GNU Library General Public Licence as published by
  the Free Software Foundation; either version 2 of the Licence, or (at
  your option) any later version.
  
  This library is distributed in the hope that it will be useful, but
  WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library
  General Public Licence for more details.

  You should have received a copy of the GNU Library General Public Licence
  along with this software, usually in a file named COPYING.LIB.  If not,
  write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
  Boston, MA 02111-1307 USA.

  EXCEPTION NOTICE

  1. As a special exception, the copyright holders of this library give
  permission for additional uses of the text contained in this release of
  the library as licenced under the wxWindows Library Licence, applying
  either version 3 of the Licence, or (at your option) any later version of
  the Licence as published by the copyright holders of version 3 of the
  Licence document.

  2. The exception is that you may use, copy, link, modify and distribute
  under the user's own terms, binary object code versions of works based
  on the Library.


  3. If you copy code from files distributed under the terms of the GNU
  General Public Licence or the GNU Library General Public Licence into a
  copy of this library, as this licence permits, the exception does not
  apply to the code that you add in this way.  To avoid misleading anyone as
  to the status of such modified files, you must delete this exception
  notice from such code and/or adjust the licensing conditions notice
  accordingly.

  4. If you write modifications of your own for this library, it is your
  choice whether to permit this exception to apply to your modifications.
  If you do not wish that, you must delete the exception notice from such
  code and/or adjust the licensing conditions notice accordingly.

[ Last edited by chewkit on 26-2-2005 at 10:48 AM ]
回复

使用道具 举报


ADVERTISEMENT

发表于 26-2-2005 12:14 PM | 显示全部楼层
可以,wx的创办人Junian Smart与其中一个主开发者 Robert Roebling 都分别拥有以wxGTK来编的商业软件DialogBlocks 与 wxDesigner

PS: 屈于MS的淫威下,wxWindows已经在去年2 月改名为wxWidgets了。

[ Last edited by Sirius on 26-2-2005 at 12:16 PM ]
回复

使用道具 举报

发表于 26-2-2005 01:25 PM | 显示全部楼层
在选择用wxWidget开发商用软件时, 还需要注意其他如mingW 的执照限制。

今天刚刚做好设定用Eclipse + wxWidget + MingW 的开发环境, 开来还不错。

有那一位知道, 用wxWidget 开发出来的软件, 需不需要写OS specific 的code 才可以运行在各个OS 上?还是可以写一次, 编译在不同OS 上就行了?
回复

使用道具 举报

发表于 26-2-2005 03:14 PM | 显示全部楼层
我只试过在WindowsXP下写些简单的program(wxMSW),然后搬到Knoppix(wxGTK)下compile,不需要经过大量的改动(有点像JAVA),小小的改动还是有的,比如:

在MSW使用printf()与 wxString 可以直接使用,但是GTK下就得加个 c_str()

wxString myStr = wxString::Format("Hello, %s", str2.c_str());

解决: 不管MSW, GTK都用c_str();

其他的OS我还没有机会测试。

Jangan兄,用 Eclipse + wxWidgets + MingW 会不会慢? 情况怎么样?

[ Last edited by Sirius on 26-2-2005 at 03:21 PM ]
回复

使用道具 举报

 楼主| 发表于 26-2-2005 03:53 PM | 显示全部楼层
jangancari 于 26-2-2005 01:25 PM  说 :
在选择用wxWidget开发商用软件时, 还需要注意其他如mingW 的执照限制。

今天刚刚做好设定用Eclipse + wxWidget + MingW 的开发环境, 开来还不错。

有那一位知道, 用wxWidget 开发出来的软件, 需不需要 ...


如果我用mingW compile source code,会有那些执照限制?
回复

使用道具 举报

发表于 28-2-2005 01:45 AM | 显示全部楼层
Sirius 于 26-2-2005 01:14 AM  说 :
我只试过在WindowsXP下写些简单的program(wxMSW),然后搬到Knoppix(wxGTK)下compile,不需要经过大量的改动(有点像JAVA),小小的改动还是有的,比如:

在MSW使用printf()与 wxString 可以直接使用,但是GTK下就得加个 c_str()

wxString myStr = wxString::Format("Hello, %s", str2.c_str());

解决: 不管MSW, GTK都用c_str();

其他的OS我还没有机会测试。

在MSW使用printf()与 wxString 可以直接使用, 这一句怎么解?
是不是说, 在MSW 下可以这样

wxString myStr = wxString::Format("Hello, %s", str2);
printf(myStr);

而GTK下就要这样
wxString myStr = wxString::Format("Hello, %s", str2.c_str());
prinf(myStr);


Jangan兄,用 Eclipse + wxWidgets + MingW 会不会慢? 情况怎么样?


有点惭愧, 我只是根据设定的步骤, 最后用wxWidget 的例子, calendar.cpp 来测试。
我在Eclipse IDE 里 compile release version (另一个是debug version), 执行速度还算不错。

那程序用了wxwidget内建的calendar 控件, 源代码算是很精简。


想不到我想学MFC几年了, 到了舍MFC 而想学Java , 到头来什么都不会( 只会RPG/400, Progress,VB) , 最后可能转回来用C++。 可惜wxWidget 没有exception handling 。

chewkit 于 26-2-2005 01:53 AM  说 :


如果我用mingW compile source code,会有那些执照限制?


我不是很清楚, 详情看这里
http://www.mingw.org/licensing.shtml

[ Last edited by jangancari on 27-2-2005 at 11:49 AM ]
回复

使用道具 举报

Follow Us
发表于 28-2-2005 02:25 AM | 显示全部楼层
对不起,因为懒惰打字,所以可能有误导 :p

在wxGTK与wxMSW下,这样是可以的

  1. wxString myStr = wxString::Format("Hello, %s", str2.c_str());
复制代码


在wxMSW下,没有问题,但是wxGTK就不行

  1. wxString myStr = wxString::Format("Hello, %s", str2);
复制代码



以前我也花了不少时间在MFC 上,但是MFC+ADO,还有如果要对UI进行调色,换字形,加插JPG,Gif,Png的图片之类的动作,得花不少时间。不久前才刚完成一个小freelance project,用wxWidgets + SQLite + Html Report 然后拿去Linux 里面测试一下,Bingo! 除了上面这个c_str()还有db path的问题外,其他一切正常。


PS: JanganCari兄,你可把wxWidgets的s 字给忘了。
回复

使用道具 举报

发表于 28-2-2005 02:14 PM | 显示全部楼层
Sirius 于 27-2-2005 12:25 PM  说 :
对不起,因为懒惰打字,所以可能有误导 :p

在wxGTK与wxMSW下,这样是可以的

  1. wxString myStr = wxString::Format("Hello, %s", str2.c_str());
复制代码


在wxMSW下,没有问题,但是wxGTK ...


你的project 不是用notepad code 的吧 ?! 哈哈 。。还是devC++?


我是最讨厌做GUI designing 的。 还没有真正看过wxwidget 的coding 方式。

wxGTK 和wxMSW 是不同的class 来的吗? porting时岂不是要全改过?

我已经准备用ecplise 来尝试写wxwidgets (这次有s了) 小软件, 不过还是业余的, 我现在最重要的目标是把公司的NT 换成samba , 哇哈哈 。。 最好连MS office 也换open office , 哇哈哈 。。加个cisco firewall 。 再尝试看有没有时间做asterisk 的研究 , 这些都够我剩下的一年半contract 来玩了。

难得有人想加入wxwidgets 的programming ,一定要多交流。。chewkit 和Sirius
:sp::sp:

[ Last edited by jangancari on 28-2-2005 at 12:17 AM ]
回复

使用道具 举报


ADVERTISEMENT

发表于 28-2-2005 11:16 PM | 显示全部楼层
jangancari 于 28-2-2005 02:14 PM  说 :
你的project 不是用notepad code 的吧 ?! 哈哈 。。还是devC++?
我是最讨厌做GUI designing 的。 还没有真正看过wxwidget 的coding 方式。
wxGTK 和wxMSW 是不同的class 来的吗? porting时岂不是 ...


notepad? 没有啦,赶时间嘛,不想吐血。用DialogBlocks来做,不过说真的,新版本的还真好用,可以生成makefile还可以直接compile。可惜得付$$。我用EditPlus来改code,习惯了EditPlus的方式。

wxWidgets的UI跟Java差不多吧,都有sizer的概念,如果可以的话找个DialogBlocks或其他的UI editor回来做UI,生成XRC file,在code里面直接调用。

放心,wxGTK与wxMSW是用同样的class的,不需要更改code。它的coding方式是比较接近MFC 的。欢迎一起学习,我正闷得很。



[ Last edited by Sirius on 28-2-2005 at 11:19 PM ]
回复

使用道具 举报

 楼主| 发表于 1-3-2005 09:17 AM | 显示全部楼层
难得有人想加入wxwidgets 的programming ,一定要多交流。。chewkit 和Sirius


对,我们一定要多多交流。
我刚开始用wxwidgets,因为要Cross Platform的关系。
我是用devcpp的,偶尔也用notepad。
回复

使用道具 举报

 楼主| 发表于 10-3-2005 07:26 PM | 显示全部楼层
Sirius,请问那里可以找到 wxWidgets + SQLite 的例子?
回复

使用道具 举报

发表于 12-3-2005 01:35 AM | 显示全部楼层
这里是wxSQLite的下载网页,里面有一个如何使用wxSQLite的例子 cardcat
但是却是SQLite 2.8.x,我觉得这个最容易使用,我本身也是用wxSQLite的
http://sourceforge.net/projects/wxsqlite

Kollektor - 这个是用SQLlite3 的
http://sourceforge.net/projects/kollektor/

wxDiary - 这个是SQLite 3.0.4的
http://sourceforge.net/projects/wxdiary/

希望可以帮到你。
回复

使用道具 举报

 楼主| 发表于 12-3-2005 07:41 AM | 显示全部楼层
谢谢,这些资料很有用。
不懂为何我compile不到wxsqlite。
回复

使用道具 举报

发表于 12-3-2005 02:25 PM | 显示全部楼层
我试过MSVC 6及 Linux gcc,都没有问题。Linux下得手动install,也就是抄进lib directory

你是用什么来compile,mingW? 出现什么问题? 看看能帮到你吗?

回复

使用道具 举报

 楼主| 发表于 12-3-2005 07:29 PM | 显示全部楼层
Sirius 于 12-3-2005 02:25 PM  说 :
我试过MSVC 6及 Linux gcc,都没有问题。Linux下得手动install,也就是抄进lib directory

你是用什么来compile,mingW? 出现什么问题? 看看能帮到你吗?




我是用mingW和MSYS的。
./configure 没问题。

以下是我compile wxsqlite 时出现的error。



  1. $ make
  2. make  all-recursive
  3. make[1]: Entering directory `d:/wxsqlite'
  4. Making all in m4
  5. c:\MinGW\bin\make.exe[2]: Entering directory `d:/wxsqlite/m4'
  6. c:\MinGW\bin\make.exe[2]: Nothing to be done for `all'.
  7. c:\MinGW\bin\make.exe[2]: Leaving directory `d:/wxsqlite/m4'
  8. Making all in src
  9. makefile:192: warning: overriding commands for target `.s.o'
  10. makefile:189: warning: ignoring old commands for target `.s.o'
  11. makefile:212: warning: overriding commands for target `.s.lo'
  12. makefile:209: warning: ignoring old commands for target `.s.lo'
  13. c:\MinGW\bin\make.exe[2]: Entering directory `d:/wxsqlite/src'
  14. Making all in wx
  15. c:\MinGW\bin\make.exe[3]: Entering directory `d:/wxsqlite/src/wx'
  16. c:\MinGW\bin\make.exe[3]: Nothing to be done for `all'.
  17. c:\MinGW\bin\make.exe[3]: Leaving directory `d:/wxsqlite/src/wx'
  18. makefile:192: warning: overriding commands for target `.s.o'
  19. makefile:189: warning: ignoring old commands for target `.s.o'
  20. makefile:212: warning: overriding commands for target `.s.lo'
  21. makefile:209: warning: ignoring old commands for target `.s.lo'
  22. c:\MinGW\bin\make.exe[3]: Entering directory `d:/wxsqlite/src'
  23. c++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/lib/wx/include/msw-2.4 -D__WXMSW__  
  24. -mthreads -DWXUSINGDLL=1 -fno-pcc-struct-return    -g -O2 -c wxsqlite.cpp
  25. wxsqlite.cpp:10:23: wx/wxprec.h: No such file or directory
  26. In file included from wxsqlite.cpp:21:
  27. wx/wxsqlite.h:6:23: wx/thread.h: No such file or directory
  28. wx/wxsqlite.h:7:23: wx/string.h: No such file or directory
  29. wx/wxsqlite.h:8:25: wx/datetime.h: No such file or directory
  30. wx/wxsqlite.h:9:24: wx/hashmap.h: No such file or directory
  31. In file included from wxsqlite.cpp:21:
  32. wx/wxsqlite.h:26: 'wxCriticalSection' is used as a type, but is not defined as
  33.    a type.
  34. wx/wxsqlite.h:30: 'wxString' is used as a type, but is not defined as a type.
  35. wx/wxsqlite.h:32: parse error before `fname'
  36. wx/wxsqlite.h:35: `wxString' was not declared in this scope
  37. wx/wxsqlite.h:35: parse error before `)' token
  38. wx/wxsqlite.h:40: `wxString' was not declared in this scope
  39. wx/wxsqlite.h:40: parse error before `)' token
  40. wx/wxsqlite.h:51: type specifier omitted for parameter `ColNamesMap'
  41. wx/wxsqlite.h:51: ISO C++ forbids declaration of `WX_DECLARE_STRING_HASH_MAP'
  42.    with no type
  43. wx/wxsqlite.h:57: 'ColNamesMap' is used as a type, but is not defined as a
  44.    type.
  45. wx/wxsqlite.h:64: 'wxString' is used as a type, but is not defined as a type.
  46. wx/wxsqlite.h:66: `wxString' was not declared in this scope
  47. wx/wxsqlite.h:66: parse error before `)' token
  48. wx/wxsqlite.h:77: parse error before `)' token
  49. wx/wxsqlite.h:80: parse error before `)' token
  50. wx/wxsqlite.h:111: `wxString' was not declared in this scope
  51. wx/wxsqlite.h:111: parse error before `)' token
  52. wx/wxsqlite.h:136: type specifier omitted for parameter `wxString'
  53. wx/wxsqlite.h:136: parse error before `)' token
  54. wx/wxsqlite.h:144: 'wxString' is used as a type, but is not defined as a type.
  55. wx/wxsqlite.h:146: parse error before `err'
  56. wx/wxsqlite.h:146: missing ';' before right brace
  57. wx/wxsqlite.h:148: ISO C++ forbids defining types within return type
  58. wx/wxsqlite.h:148: semicolon missing after declaration of `class
  59.    wxSQLiteException'
  60. wx/wxsqlite.h: In function `int wxSQLiteException(const wxSQLiteDatabase&)':
  61. wx/wxsqlite.h:149: `class wxSQLiteDatabase' has no member named `m_lastErr'
  62. wx/wxsqlite.h:149: only constructors take base initializers
  63. wx/wxsqlite.h:149: confused by earlier errors, bailing out
  64. c:\MinGW\bin\make.exe[3]: *** [wxsqlite.o] Error 1
  65. c:\MinGW\bin\make.exe[3]: Leaving directory `d:/wxsqlite/src'
  66. c:\MinGW\bin\make.exe[2]: *** [all-recursive] Error 1
  67. c:\MinGW\bin\make.exe[2]: Leaving directory `d:/wxsqlite/src'
  68. make[1]: *** [all-recursive] Error 1
  69. make[1]: Leaving directory `d:/wxsqlite'
  70. c:\MinGW\bin\make.exe: *** [all-recursive-am] Error 2

复制代码
回复

使用道具 举报

发表于 13-3-2005 09:33 PM | 显示全部楼层
我发现到一个dev-cpp 的extension ,wx-devcpp , 可以容易开发GUI。

用它来generate GUI code , 可以帮助学习wxwidgets GUI。

Eclipse 太慢了, 决定用wx-devcpp。

不过dev-cpp 是delphi 写的, 只有windows 版。 有个狂想要把这wx-devcpp 用wxwidgets 来写, 不然就在code - block 上写extension 。不过一切等我熟悉wxwidgets 才说 。。呵呵
回复

使用道具 举报


ADVERTISEMENT

发表于 14-3-2005 02:20 AM | 显示全部楼层

  1. ...
  2. ...
  3. wxsqlite.cpp:10:23: wx/wxprec.h: No such file or directory
  4. In file included from wxsqlite.cpp:21:
  5. wx/wxsqlite.h:6:23: wx/thread.h: No such file or directory
  6. wx/wxsqlite.h:7:23: wx/string.h: No such file or directory
  7. wx/wxsqlite.h:8:25: wx/datetime.h: No such file or directory
  8. wx/wxsqlite.h:9:24: wx/hashmap.h: No such file or directory
  9. In file included from wxsqlite.cpp:21:
  10. ...
  11. ...
复制代码


会不会是你的wxWin 的path setting之类的出现问题?
回复

使用道具 举报

 楼主| 发表于 14-3-2005 09:32 AM | 显示全部楼层
Sirius 于 14-3-2005 02:20 AM  说 :
[code]
会不会是你的wxWin 的path setting之类的出现问题?


可以说说,怎样 setting wxwin 的path吗?
回复

使用道具 举报

 楼主| 发表于 14-3-2005 09:49 AM | 显示全部楼层
jangancari 于 13-3-2005 09:33 PM  说 :
我发现到一个dev-cpp 的extension ,wx-devcpp , 可以容易开发GUI。

用它来generate GUI code , 可以帮助学习wxwidgets GUI。

Eclipse 太慢了, 决定用wx-devcpp。

不过dev-cpp 是delphi 写的, 只有 ...


之前我有用过wx-devcpp,可是有很多bug(可能是beta的问题)
现在我用wxGlade。
回复

使用道具 举报

发表于 15-3-2005 09:23 AM | 显示全部楼层
chewkit 于 13-3-2005 07:49 PM  说 :


之前我有用过wx-devcpp,可是有很多bug(可能是beta的问题)
现在我用wxGlade。



下载了wxGlade , 看来不错, 比之wx-devcpp 更加先进, 只可惜只是GUI builder。 不过, 应该会考虑用。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 17-9-2025 06:55 AM , Processed in 0.145749 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表