Rendering学習日記

日々、3DCGの世界は進歩しています。勉強して理解したことをまとめていきます。RenderMan互換レンダラーやグローバル・イルミネーション。いろんなことに好奇心を持って、面白くなる。目指せShader書き!!
ありがとうございます。

RenderMan24.4をFedora Linux 37にinstall

■RenderMan24.4をFedora Linux 37にインストール際に、出たエラー解決確認方法
インストーラは古いバージョンで動いているので、古いrpmをインストーラにコピーし、
ライブラリは、シンボリックリンクをつくってあげます。
libssl.so.1.0
libcrypto.so.1.0
libtinfo.so.5

-----------------------------------------------------------------------------------------------
sudo ./RenderManInstaller
./RenderManInstaller: error while loading shared libraries: libicui18n.so.50: cannot open shared object file: No such file or directory
-----------------------------------------------------------------------------------------------
■Fedora Linux 37にlibicui18n.so.50がない。
]$locate libicui18n.so
/usr/lib/libicui18n.so
/usr/lib/libicui18n.so.71
/usr/lib/libicui18n.so.71.1
/usr/lib64/libicui18n.so
/usr/lib64/libicui18n.so.71
/usr/lib64/libicui18n.so.71.1


■error01
-----------------------------------------------------------------------------------------------
/opt/pixar/RenderMan-Installer-ncr-24.4/bin/RenderManInstaller: error while loading shared libraries: libicui18n.so.50: cannot open shared object file: No such file or directory
-----------------------------------------------------------------------------------------------
Visit libicu-50.2-4.el7_7.x86_64.rpm package page

Download the Binary Package with given URL

libicu-50.2-4.el7_7.x86_64.rpmをダウンロードしてくる。
■Downloadsフォルダの中で解凍
In ~/Downloads/, unpack the package with

]$ rpm2cpio libicu-50.2-4.el7_7.x86_64.rpm | cpio -idmv

■コピーする。
Copy the files into RenderMan installer folder
sudo cp ~/Downloads/usr/lib64/* /opt/pixar/RenderMan-Installer-ncr-24.4/lib/3rdparty/Qt-5.12.6/lib/

■中身確認
RenderMan-Installer-ncr-24.4]$ cd lib/3rdparty/Qt-5.12.6/lib/
lib]$ ls
libQt5Core.so libQt5Svg.so.5.12
libQt5Core.so.5 libQt5Svg.so.5.12.6 libicudata.so.50
libQt5Core.so.5.12 libQt5Widgets.so libicudata.so.50.2
libQt5Core.so.5.12.6 libQt5Widgets.so.5 libicui18n.so.50
libQt5DBus.so libQt5Widgets.so.5.12 libicui18n.so.50.2
libQt5DBus.so.5 libQt5Widgets.so.5.12.6 libicuio.so.50
libQt5DBus.so.5.12 libQt5XcbQpa.so libicuio.so.50.2
libQt5DBus.so.5.12.6 libQt5XcbQpa.so.5 libicule.so.50
libQt5Gui.so libQt5XcbQpa.so.5.12 libicule.so.50.2
libQt5Gui.so.5 libQt5XcbQpa.so.5.12.6 libiculx.so.50
libQt5Gui.so.5.12 libQt5Xml.so libiculx.so.50.2
libQt5Gui.so.5.12.6 libQt5Xml.so.5 libicutest.so.50
libQt5Network.so libQt5Xml.so.5.12 libicutest.so.50.2
libQt5Network.so.5 libQt5Xml.so.5.12.6 libicutu.so.50
libQt5Network.so.5.12 libQt5XmlPatterns.so libicutu.so.50.2
libQt5Network.so.5.12.6 libQt5XmlPatterns.so.5 libicuuc.so.50
libQt5Svg.so libQt5XmlPatterns.so.5.12 libicuuc.so.50.2
libQt5Svg.so.5 libQt5XmlPatterns.so.5.12.6


■ ~]$ nano .bash_profileで以下を書き込む。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/pixar/RenderMan-Installer-ncr-24.4/lib/3rdparty/Qt-5.12.6/lib

]$ source .bash_profile

■error02
-----------------------------------------------------------------------------------------------
Failed to get license file Failed to query serial number: an unknown network-related error was detected
-----------------------------------------------------------------------------------------------
the problem is that system has newer libssl version 1.1 (libssl.so.1.1), which is not compatible with RenderManInstaller included QT libraries.But system also has libssl version 1.0, for example libssl.so.1.0.2.

Renderman in requiring old libssl1.0-dev

The installation requested libssl.so.1.0.0 and libcrypto.so.1.0.0 which Fedora 37 does not contain.
The solution is to make symlinks as bellow:

# ln -s /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.1.0.0
# ln -s /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.1.0.0

lib64]$ sudo ln -s libssl.so.10 libssl.so.1.0
lib64]$ ls libssl*
libssl.so libssl.so.1.0.2o libssl.so.1.1.1q libssl.so.3 libssl3.so
libssl.so.1.0 libssl.so.1.1 libssl.so.10 libssl.so.3.0.5
[mac@mac-local lib64]$ ls libcry*
libcrypt.so libcrypto.so.1.0.2o libcryptsetup.so.12
libcrypt.so.1 libcrypto.so.1.1 libcryptsetup.so.12.8.0
libcrypt.so.1.1.0 libcrypto.so.1.1.1q libcryptui.so.0
libcrypt.so.2 libcrypto.so.10 libcryptui.so.0.0.0
libcrypt.so.2.0.0 libcrypto.so.3
libcrypto.so libcrypto.so.3.0.5
lib64]$ sudo ln -s libcrypto.so.10 libcrypto.so.1.0
lib64]$ ls libcry*
libcrypt.so libcrypto.so.1.0 libcrypto.so.3.0.5
libcrypt.so.1 libcrypto.so.1.0.2o libcryptsetup.so.12
libcrypt.so.1.1.0 libcrypto.so.1.1 libcryptsetup.so.12.8.0
libcrypt.so.2 libcrypto.so.1.1.1q libcryptui.so.0
libcrypt.so.2.0.0 libcrypto.so.10 libcryptui.so.0.0.0
libcrypto.so libcrypto.so.3

lib64]$ sudo ln -s libcrypto.so.10 libcrypto.so.1.0

lib64]$ ls libcrypto*
libcrypto.so libcrypto.so.1.0.2o libcrypto.so.1.1.1q libcrypto.so.3
libcrypto.so.1.0 libcrypto.so.1.1 libcrypto.so.10 libcrypto.so.3.0.5

]$ sudo ln -s /usr/lib64/libssl.so.1.0 /opt/pixar/RenderMan-Installer-ncr-24.4/lib/3rdparty/Qt-5.12.6/lib/libssl.so
]$ sudo ln -s /usr/lib64/libcrypto.so.1.0 /opt/pixar/RenderMan-Installer-ncr-24.4/lib/3rdparty/Qt-5.12.6/lib/libcrypto.so


]$ sudo ldconfig


■error03
-----------------------------------------------------------------------------------------------
~]$ prman -version
prman: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
-----------------------------------------------------------------------------------------------
]$ cd /usr/lib64
[mac@mac-local lib64]$ ls libti*
libtic.so.6 libtiff.so.5.8.0 libtimezonemap.so.1 libtirpc.so
libtic.so.6.3 libtiffxx.so libtimezonemap.so.1.0.0 libtirpc.so.3
libtiff.so libtiffxx.so.5 libtinfo.so.6 libtirpc.so.3.0.0
libtiff.so.5 libtiffxx.so.5.8.0 libtinfo.so.6.3

lib64]$ sudo ln -s libtinfo.so.6 libtinfo.so.5

lib64]$ ls libti*
libtic.so.6 libtiff.so.5.8.0 libtimezonemap.so.1 libtinfo.so.6.3
libtic.so.6.3 libtiffxx.so libtimezonemap.so.1.0.0 libtirpc.so
libtiff.so libtiffxx.so.5 libtinfo.so.5 libtirpc.so.3
libtiff.so.5 libtiffxx.so.5.8.0 libtinfo.so.6 libtirpc.so.3.0.0

]$ sudo ldconfig

]$ prman -version
Pixar PhotoRealistic RenderMan 24.4
linked Fri Apr 15 20:13:51 2022 PDT @2226585
build linuxRHEL7_x86-64_gcc63icc190_external_release
copyright (c) 1988-2022 Pixar.


■error04
-----------------------------------------------------------------------------------------------
]$ prman -d it simple.rib
RZ0000 {WARNING}: Stats Init - Stats config file not found in config search path(s): stats.ini
exec failed for /opt/pixar/RenderManProServer-24.4/bin/etc/sbrokerd: No such file or directory
RZ0000 {WARNING}: Session - Failed register live stats server with a broker. Clients will need to explicitly connect to server: 127.0.0.1:42451
R50009 {SEVERE} License location is not set in rendermn.ini - aborting.
RZ0000 {WARNING}: WebSocketStatsServer - Failed to unregister server ID PRManBegin Session_statsserver_9247
-----------------------------------------------------------------------------------------------

-----------------------------------------------------------------------------------------------
]$ prman -d it simple.rib
it: error while loading shared libraries: libicui18n.so.50: cannot open shared object file: No such file or directory
R90011 {SEVERE} Can't open display image simple.tif (System Error: Connection refused)
-----------------------------------------------------------------------------------------------
■nano .bash_profileで以下を書き込む。
#RenderMan
export RMANTREE=/opt/pixar/RenderManProServer-24.4
export PATH=$PATH:$RMANTREE/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/Downloads/usr/lib64

↑前で行った、Downloadsフォルダの中で解凍したlibicu-50.2-4.el7_7.x86_64.rpmの中のusr/lib64をLD_LIBRARY_PATHに追記した。libicui18n.so.50が入っている。



occlusiontest.png
occlusiontest2.png
dome2.png
dome3.png
  • -
  • -

Linux Lite4.2 update and python cgkit error

■cgkit_sample $ viewer.py demo1.py
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
File "/usr/local/bin/viewer.py", line 63, in
from cgkit.all import *
File "/usr/local/lib/python2.7/dist-packages/cgkit/all/__init__.py", line 46, in
from cgkit import _core
ImportError: libboost_python-py27.so.1.65.1: cannot open shared object file: No such file or directory

■cgkit_sample $ sudo ldconfig -p | grep libboost_python
libboost_python38.so.1.67.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libboost_python38.so.1.67.0
libboost_python38.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libboost_python38.so
libboost_python27.so.1.67.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libboost_python27.so.1.67.0
libboost_python27.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libboost_python27.so
■ cgkit_sample $ cd /usr/lib/x86_64-linux-gnu/
■ /usr/lib/x86_64-linux-gnu $ ls libboost*.*
libboost_date_time.so.1.71.0 libboost_python27.so.1.67.0
libboost_filesystem.so.1.71.0 libboost_python3-py38.a
libboost_iostreams.so.1.71.0 libboost_python3-py38.so
libboost_locale.so.1.71.0 libboost_python3.a
libboost_python.a libboost_python3.so
libboost_python.so libboost_python38.a
libboost_python2.so libboost_python38.so
libboost_python27.a libboost_python38.so.1.67.0
libboost_python27.so libboost_thread.so.1.71.0
■ /usr/lib/x86_64-linux-gnu $ sudo ln -s libboost_python27.so.1.67.0 libboost_python-py27.so.1.65.1
■ /usr/lib/x86_64-linux-gnu $ ls libboost*.*
libboost_date_time.so.1.71.0 libboost_python27.so.1.67.0
libboost_filesystem.so.1.71.0 libboost_python3-py38.a
libboost_iostreams.so.1.71.0 libboost_python3-py38.so
libboost_locale.so.1.71.0 libboost_python3.a
libboost_python-py27.so.1.65.1 libboost_python3.so
libboost_python.a libboost_python38.a
libboost_python.so libboost_python38.so
libboost_python2.so libboost_python38.so.1.67.0
libboost_python27.a libboost_thread.so.1.71.0
libboost_python27.so
■ /usr/lib/x86_64-linux-gnu $ sudo ldconfig

■cgkit_sample $ viewer.py demo3.py
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html

■cgkit-2.0.0/utilities $ python checkenv.py
----------------------------------------------------------------------
Python 2.7.18 (default, Jul 1 2022, 12:27:04)
[GCC 9.4.0]
Platform: linux2
----------------------------------------------------------------------
Python version: 2.7........... OK
PyProtocols................... is installed
PyOpenGL...................... is installed
PIL........................... is installed
pygame........................ pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
is installed
PyODE......................... is installed
PySerial...................... is installed
cgkit (base).................. 2.0.0 (Nov 26 2018)
cgkit (C++ lib)............... OK
cgkit (all)................... OK

It works.
Thank you.
  • -
  • -

Fedora Linux 37でpython cgkit pyODE install

Fedora30以降、pyODEはパッケージでないので、以下インストールしてみました。
■Download PyODE-snapshot-2010-03-22.tar.gz

■PyODE-snapshot-2010-03-22]$ python setup.py build
INFO: found in /usr/include
INFO: Creating ode_trimesh.c
pyrexc -o ode_trimesh.c -I. -Isrc src/ode.pyx
sh: 行 1: pyrexc: コマンドが見つかりません
ERROR: An error occured while generating the C source file.

■Download Pyrex-0.9.9.tar.gz
$ sudo python setup.py install
copying build/scripts-2.7/pyrexc -> /usr/bin
changing mode of /usr/bin/pyrexc to 755
running install_data
copying Pyrex/Compiler/Lexicon.pickle -> /usr/lib/python2.7/site-packages/Pyrex/Compiler
running install_egg_info
Writing /usr/lib/python2.7/site-packages/Pyrex-0.9.9-py2.7.egg-info

■pyODEのbuild
PyODE-snapshot-2010-03-22]$ python setup.py build
INFO: found in /usr/include
INFO: Creating ode_trimesh.c
pyrexc -o ode_trimesh.c -I. -Isrc src/ode.pyx
/home/mac/Downloads/PyODE-snapshot-2010-03-22/src/mass.pyx:263:18: Warning: 'not None' will become the default in a future version of Pyrex. Use 'or None' to allow passing None.
INFO: Creating ode_notrimesh.c
pyrexc -o ode_notrimesh.c -I. -Isrc src/ode.pyx
/home/mac/Downloads/PyODE-snapshot-2010-03-22/src/mass.pyx:263:18: Warning: 'not None' will become the default in a future version of Pyrex. Use 'or None' to allow passing None.
INFO: Installing with trimesh support.
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/xode
copying xode/errors.py -> build/lib.linux-x86_64-2.7/xode
copying xode/body.py -> build/lib.linux-x86_64-2.7/xode
copying xode/parser.py -> build/lib.linux-x86_64-2.7/xode
copying xode/transform.py -> build/lib.linux-x86_64-2.7/xode
copying xode/geom.py -> build/lib.linux-x86_64-2.7/xode
copying xode/node.py -> build/lib.linux-x86_64-2.7/xode
copying xode/__init__.py -> build/lib.linux-x86_64-2.7/xode
copying xode/joint.py -> build/lib.linux-x86_64-2.7/xode
running build_ext
building 'ode' extension
creating build/temp.linux-x86_64-2.7
gcc -fno-strict-aliasing -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include -I/usr/local/include -I/opt/local/include -I/usr/include/python2.7 -c ode_trimesh.c -o build/temp.linux-x86_64-2.7/ode_trimesh.o
ode_trimesh.c: 関数 ‘__pyx_f_3ode_4Mass_setCappedCylinder’ 内:
ode_trimesh.c:907:3: 警告: ‘dMassSetCappedCylinder’ is deprecated [-Wdeprecated-declarations]
907 | dMassSetCappedCylinder((&((struct __pyx_obj_3ode_Mass *)__pyx_v_self)->_mass),__pyx_1,__pyx_2,__pyx_3,__pyx_4);
| ^~~~~~~~~~~~~~~~~~~~~~
次のファイルから読み込み: /usr/include/ode/ode.h:40,
次から読み込み: ode_trimesh.c:32:
/usr/include/ode/mass.h:84:33: 備考: ここで宣言されています
84 | ODE_API_DEPRECATED ODE_API void dMassSetCappedCylinder(dMass *a, dReal b, int c, dReal d, dReal e);
| ^~~~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_4Mass_setCappedCylinderTotal’ 内:
ode_trimesh.c:946:3: 警告: ‘dMassSetCappedCylinderTotal’ is deprecated [-Wdeprecated-declarations]
946 | dMassSetCappedCylinderTotal((&((struct __pyx_obj_3ode_Mass *)__pyx_v_self)->_mass),__pyx_1,__pyx_2,__pyx_3,__pyx_4);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ode/mass.h:85:33: 備考: ここで宣言されています
85 | ODE_API_DEPRECATED ODE_API void dMassSetCappedCylinderTotal(dMass *a, dReal b, int c, dReal d, dReal e);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_11Hinge2Joint_setAxis1’ 内:
ode_trimesh.c:8143:3: 警告: ‘dJointSetHinge2Axis1’ is deprecated [-Wdeprecated-declarations]
8143 | dJointSetHinge2Axis1(((struct __pyx_obj_3ode_Hinge2Joint *)__pyx_v_self)->__pyx_base.jid,__pyx_3,__pyx_4,__pyx_5);
| ^~~~~~~~~~~~~~~~~~~~
次のファイルから読み込み: /usr/include/ode/ode.h:42:
/usr/include/ode/objects.h:1986:33: 備考: ここで宣言されています
1986 | ODE_API_DEPRECATED ODE_API void dJointSetHinge2Axis1 (dJointID j, dReal x, dReal y, dReal z);
| ^~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_11Hinge2Joint_setAxis2’ 内:
ode_trimesh.c:8232:3: 警告: ‘dJointSetHinge2Axis2’ is deprecated [-Wdeprecated-declarations]
8232 | dJointSetHinge2Axis2(((struct __pyx_obj_3ode_Hinge2Joint *)__pyx_v_self)->__pyx_base.jid,__pyx_3,__pyx_4,__pyx_5);
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/ode/objects.h:1996:33: 備考: ここで宣言されています
1996 | ODE_API_DEPRECATED ODE_API void dJointSetHinge2Axis2 (dJointID j, dReal x, dReal y, dReal z);
| ^~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_13GeomTransform___cinit__’ 内:
ode_trimesh.c:13433:12: 警告: ‘dCreateGeomTransform’ is deprecated [-Wdeprecated-declarations]
13433 | ((struct __pyx_obj_3ode_GeomTransform *)__pyx_v_self)->__pyx_base.gid = dCreateGeomTransform(__pyx_v_sid);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
次のファイルから読み込み: /usr/include/ode/ode.h:44:
/usr/include/ode/collision.h:1089:36: 備考: ここで宣言されています
1089 | ODE_API_DEPRECATED ODE_API dGeomID dCreateGeomTransform (dSpaceID space);
| ^~~~~~~~~~~~~~~~~~~~
ode_trimesh.c:13436:3: 警告: ‘dGeomTransformSetCleanup’ is deprecated [-Wdeprecated-declarations]
13436 | dGeomTransformSetCleanup(((struct __pyx_obj_3ode_GeomTransform *)__pyx_v_self)->__pyx_base.gid,0);
| ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ode/collision.h:1092:33: 備考: ここで宣言されています
1092 | ODE_API_DEPRECATED ODE_API void dGeomTransformSetCleanup (dGeomID g, int mode);
| ^~~~~~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_13GeomTransform_setGeom’ 内:
ode_trimesh.c:13606:3: 警告: ‘dGeomTransformSetGeom’ is deprecated [-Wdeprecated-declarations]
13606 | dGeomTransformSetGeom(((struct __pyx_obj_3ode_GeomTransform *)__pyx_v_self)->__pyx_base.gid,((dGeomID)__pyx_v_id));
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/ode/collision.h:1090:33: 備考: ここで宣言されています
1090 | ODE_API_DEPRECATED ODE_API void dGeomTransformSetGeom (dGeomID g, dGeomID obj);
| ^~~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_13GeomTransform_setInfo’ 内:
ode_trimesh.c:13672:3: 警告: ‘dGeomTransformSetInfo’ is deprecated [-Wdeprecated-declarations]
13672 | dGeomTransformSetInfo(((struct __pyx_obj_3ode_GeomTransform *)__pyx_v_self)->__pyx_base.gid,__pyx_v_mode);
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/ode/collision.h:1094:33: 備考: ここで宣言されています
1094 | ODE_API_DEPRECATED ODE_API void dGeomTransformSetInfo (dGeomID g, int mode);
| ^~~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_13GeomTransform_getInfo’ 内:
ode_trimesh.c:13694:3: 警告: ‘dGeomTransformGetInfo’ is deprecated [-Wdeprecated-declarations]
13694 | __pyx_1 = PyInt_FromLong(dGeomTransformGetInfo(((struct __pyx_obj_3ode_GeomTransform *)__pyx_v_self)->__pyx_base.gid)); if (!__pyx_1) {__pyx_filename = __pyx_f[7]; __pyx_lineno = 521; goto __pyx_L1;}
| ^~~~~~~
/usr/include/ode/collision.h:1095:32: 備考: ここで宣言されています
1095 | ODE_API_DEPRECATED ODE_API int dGeomTransformGetInfo (dGeomID g);
| ^~~~~~~~~~~~~~~~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_11TriMeshData_build’ 内:
ode_trimesh.c:13931:225: 警告: 4 番目の ‘dGeomTriMeshDataBuildSimple’ の引数を渡すときのポインタの先の符号が異なります [-Wpointer-sign]
13931 | dGeomTriMeshDataBuildSimple(((struct __pyx_obj_3ode_TriMeshData *)__pyx_v_self)->tmdid,((struct __pyx_obj_3ode_TriMeshData *)__pyx_v_self)->vertex_buffer,__pyx_v_numverts,((struct __pyx_obj_3ode_TriMeshData *)__pyx_v_self)->face_buffer,(__pyx_v_numfaces * 3));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
| |
| int *
次のファイルから読み込み: /usr/include/ode/collision.h:1087:
/usr/include/ode/collision_trimesh.h:145:51: 備考: expected ‘const dTriIndex *’ {aka ‘const unsigned int *’} but argument is of type ‘int *’
145 | const dTriIndex* Indices, int IndexCount);
| ~~~~~~~~~~~~~~~~~^~~~~~~
ode_trimesh.c: 関数 ‘__pyx_f_3ode_15GeomHeightfield___cinit__’ 内:
ode_trimesh.c:14456:129: 警告: ポインタから異なるサイズの整数へのキャストです [-Wpointer-to-int-cast]
14456 | ((struct __pyx_obj_3ode_GeomHeightfield *)__pyx_v_self)->__pyx_base.gid = dCreateHeightfield(__pyx_v_sid,__pyx_v_data->hfdid,((int)__pyx_v_placeable));
| ^
gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 build/temp.linux-x86_64-2.7/ode_trimesh.o -L/usr/lib -L/usr/local/lib -L/opt/local/lib -L/usr/lib64 -lode -lstdc++ -lpython2.7 -o build/lib.linux-x86_64-2.7/ode.so -lode
/usr/bin/ld: 互換性のないを /usr/lib/libc.so スキップしました (-lc を探索している時)

■できたような、buildフォルダにできてます。
■pyODEのインストール
PyODE-snapshot-2010-03-22]$ sudo python setup.py install --record files.txt

INFO: found in /usr/include
INFO: ode_trimesh.c is up to date
INFO: ode_notrimesh.c is up to date
INFO: Installing with trimesh support.
running install
running build
running build_py
running build_ext
running install_lib
copying build/lib.linux-x86_64-2.7/ode.so -> /usr/lib64/python2.7/site-packages
running install_egg_info
Writing /usr/lib64/python2.7/site-packages/PyODE-1.2.0-py2.7.egg-info
writing list of installed files to 'files.txt'
[mac@mac-local PyODE-snapshot-2010-03-22]$

■cgkitでの確認
cgkit-2.0.0]$ cd utilities/
$ python checkenv.py
----------------------------------------------------------------------
Python 2.7.18 (default, Aug 22 2022, 00:00:00)
[GCC 12.2.1 20220819 (Red Hat 12.2.1-1)]
Platform: linux2
----------------------------------------------------------------------
Python version: 2.7........... OK
PyProtocols................... is installed
PyOpenGL...................... is installed
PIL........................... is installed
pygame........................ pygame 1.9.4
Hello from the pygame community. https://www.pygame.org/contribute.html
is installed
PyODE......................... is installed
PySerial...................... is installed
cgkit (base).................. 2.0.0 (May 04 2020)
cgkit (C++ lib)............... OK
cgkit (all)................... OK
PyODEが入ってます。

■python cgkitで動作確認しました。
$ viewer.py newton-ball.py
Screenshot from 2022-12-31 13-12-10.png
ありがとうございます。
  • -
  • -
<< 2/184 >>