查看: 2318|回复: 5

X11+osg

[复制链接]

该用户从未签到

发表于 2013-2-3 10:02:16 | 显示全部楼层 |阅读模式
查阅man手册
       typedef struct {
            long flags;         /* marks which fields in this structure are defined */
            int x, y;           /* Obsolete */
            int width, height;  /* Obsolete */
            int min_width, min_height;
            int max_width, max_height;
            int width_inc, height_inc;
            struct {
                   int x;       /* numerator */
                   int y;       /* denominator */
            } min_aspect, max_aspect;
            int base_width, base_height;
            int win_gravity;
            /* this structure may be extended in the future */
       } XSizeHints;

       The x, y, width, and height members are now obsolete and are left solely for compatibility reasons.  The min_width
       and min_height members specify the minimum window size that still allows the application to be useful.  The
       max_width and max_height members specify the maximum window size.  The width_inc and height_inc members define an
       arithmetic progression of sizes (minimum to maximum) into which the window prefers to be resized.  The min_aspect
       and max_aspect members are expressed as ratios of x and y, and they allow an application to specify the range of
       aspect ratios it prefers.  The base_width and base_height members define the desired size of the window.  The win‐
       dow manager will interpret the position of the window and its border width to position the point of the outer rec‐
       tangle of the overall window specified by the win_gravity member.  The outer rectangle of the window includes any
       borders or decorations supplied by the window manager.  In other words, if the window manager decides to place the
       window where the client asked, the position on the parent window's border named by the win_gravity will be placed
       where the client window would have been placed in the absence of a window manager.

       Note that use of the PAllHints macro is highly discouraged.
发现有几个字段过时了,但以前看osg源代码,发现还在用。。
求上面英文的完整翻译,我水平太次。。使用各种翻译工具,感觉还是搞不明白。。

该用户从未签到

发表于 2013-2-4 09:40:35 | 显示全部楼层
过时了但是还可以用,并且兼容性可以保证,那么就没有什么可以担心的。新的API无非也就是修改了接口让它更为灵活,但是这对于OSG来说并没有意义,因此不用在这里追新

该用户从未签到

 楼主| 发表于 2013-2-4 18:10:19 | 显示全部楼层
本帖最后由 农民工学编程 于 2013-2-4 20:51 编辑
array 发表于 2013-2-4 09:40
过时了但是还可以用,并且兼容性可以保证,那么就没有什么可以担心的。新的API无非也就是修改了接口让它更为 ...


多谢大神指点

我想让osg跑在android上。现在我的电脑BIOS 出现了问题,只能用win 环境是cygwin + xp
mingw的库已经编译好。想在cygwin 中编译OSG可是报下面的错误。。。
不会配置


Administrator@MICROSOF-C56E6F ~/OpenSceneGraph-3.0.1
$ cmake -G "Unix Makefiles"
-- The C compiler identification is GNU 4.5.3
-- The CXX compiler identification is GNU 4.5.3
CMake Warning at /usr/share/cmake-2.8.9/Modules/Platform/CYGWIN.cmake:15 (message):
  CMake no longer defines WIN32 on Cygwin!

  (1) If you are just trying to build this project, ignore this warning or
  quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
  the CMake cache.  If later configuration or build errors occur then this
  project may have been written under the assumption that Cygwin is WIN32.
  In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

  (2) If you are developing this project, add the line

    set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

  at the top of your top-level CMakeLists.txt file or set the minimum
  required version of CMake to 2.8.4 or higher.  Then teach your project to
  build on Cygwin without WIN32.
Call Stack (most recent call first):
  /usr/share/cmake-2.8.9/Modules/CMakeSystemSpecificInformation.cmake:36 (INCLUDE)
  CMakeLists.txt:30 (PROJECT)


-- Check for working C compiler: /usr/bin/gcc.exe
-- Check for working C compiler: /usr/bin/gcc.exe -- broken
CMake Error at /usr/share/cmake-2.8.9/Modules/CMakeTestCCompiler.cmake:52 (MESSAGE):
  The C compiler "/usr/bin/gcc.exe" is not able to compile a simple test
  program.

  It fails with the following output:

   Change Dir: /home/Administrator/OpenSceneGraph-3.0.1/CMakeFiles/CMakeTmp



  Run Build Command:/cygdrive/d/mingw/bin/gmake.exe
  "cmTryCompileExec959222098/fast"

  D:/mingw/bin/gmake -f CMakeFiles/cmTryCompileExec959222098.dir/build.make
  CMakeFiles/cmTryCompileExec959222098.dir/build

  gmake[1]: Entering directory
  `D:/cygwin/home/Administrator/OpenSceneGraph-3.0.1/CMakeFiles/CMakeTmp'

  /usr/bin/cmake.exe -E cmake_progress_report
  /home/Administrator/OpenSceneGraph-3.0.1/CMakeFiles/CMakeTmp/CMakeFiles 1

  gmake[1]: Leaving directory
  `D:/cygwin/home/Administrator/OpenSceneGraph-3.0.1/CMakeFiles/CMakeTmp'

  process_begin: CreateProcess(NULL, /usr/bin/cmake.exe -E
  cmake_progress_report
  /home/Administrator/OpenSceneGraph-3.0.1/CMakeFiles/CMakeTmp/CMakeFiles 1,
  ...) failed.

  make (e=3): 系统找不到指定的路径。

  gmake[1]: *** [CMakeFiles/cmTryCompileExec959222098.dir/testCCompiler.c.o]
  Error 3

  gmake: *** [cmTryCompileExec959222098/fast] Error 2





  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:30 (PROJECT)


-- Configuring incomplete, errors occurred!

该用户从未签到

发表于 2013-2-17 08:26:10 | 显示全部楼层
CMake已经失败了。。测试可以用来编译c程序的编译器的步骤就失败了

该用户从未签到

 楼主| 发表于 2013-2-17 21:49:28 | 显示全部楼层
array 发表于 2013-2-17 08:26
CMake已经失败了。。测试可以用来编译c程序的编译器的步骤就失败了

早已经解决了

该用户从未签到

发表于 2013-12-24 22:47:46 | 显示全部楼层
楼主怎么解决的呢?贴个方案谢谢了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表