From 0e4d6b037657e28731de7cac8534e62019f4f1ed Mon Sep 17 00:00:00 2001 From: Erwin Coumans Date: Mon, 28 Jan 2019 07:35:57 -0800 Subject: [PATCH 1/2] tweak premake files for ExampleBrowser, allow non-GUI mode for humanoidMotionCapture --- data/multibody.bullet | Bin 16836 -> 16836 bytes examples/ExampleBrowser/premake4.lua | 7 +---- .../examples/humanoidMotionCapture.py | 24 ++++++++++++------ 3 files changed, 17 insertions(+), 14 deletions(-) diff --git a/data/multibody.bullet b/data/multibody.bullet index 32b9e7f37411e082f0138d19b5176450d62d6f50..563b8939bbaae7b8ceb5d8f8c6591cc6293fe864 100644 GIT binary patch delta 310 zcmX@o%y^`kaRVtsR3=!q9ZCOa@GXmBtxFgyneiUBbUp!1g$?AbPYgxJajG*6yK i49Sg?KQO1Tod8P%<&1b?W*q}+766JEZ$88F!v+96?l!pq delta 462 zcmX@o%y^`kaRVs+=(e(}t3=IE)07!uWh|L0KHP}Oi7#M*JK^O-}N3$Y0 zj6gO>j~7tUsd|L?l7hYaK)eI<-mLh;&Y_BQ7AN<|NXBV(9Rx!eU@(1RW$y3= numFrames): From be7ebe22a09692bcf2989e023aa09b13ed0cb50a Mon Sep 17 00:00:00 2001 From: Erwin Coumans Date: Mon, 28 Jan 2019 10:02:53 -0800 Subject: [PATCH 2/2] PyBullet: fix for Mac OSX not finding standard libraries --- setup.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index 4f13322bb..c84a0fe53 100644 --- a/setup.py +++ b/setup.py @@ -3,6 +3,8 @@ from setuptools import find_packages from sys import platform as _platform import sys import glob +import os + from distutils.core import setup from distutils.extension import Extension @@ -12,6 +14,8 @@ from glob import glob # monkey-patch for parallel compilation import multiprocessing import multiprocessing.pool + + def parallelCCompile(self, sources, output_dir=None, macros=None, include_dirs=None, debug=0, extra_preargs=None, extra_postargs=None, depends=None): # those lines are copied from distutils.ccompiler.CCompiler directly macros, objects, extra_postargs, pp_opts, build = self._setup_compile(output_dir, macros, include_dirs, sources, depends, extra_postargs) @@ -21,7 +25,11 @@ def parallelCCompile(self, sources, output_dir=None, macros=None, include_dirs=N def _single_compile(obj): try: src, ext = build[obj] except KeyError: return - self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts) + newcc_args = cc_args + if _platform == "darwin": + if src.endswith('.cpp'): + newcc_args = cc_args + ["-stdlib=libc++"] + self._compile(obj, src, ext, newcc_args, extra_postargs, pp_opts) # convert to list, imap is evaluated on-demand pool = multiprocessing.pool.ThreadPool(N) list(pool.imap(_single_compile,objects)) @@ -29,7 +37,6 @@ def parallelCCompile(self, sources, output_dir=None, macros=None, include_dirs=N import distutils.ccompiler distutils.ccompiler.CCompiler.compile=parallelCCompile - #see http://stackoverflow.com/a/8719066/295157 import os @@ -381,7 +388,7 @@ elif _platform == "win32": +["examples/ThirdPartyLibs/glad/gl.c"] elif _platform == "darwin": print("darwin!") - os.environ['LDFLAGS'] = '-framework Cocoa -framework OpenGL' + os.environ['LDFLAGS'] = '-framework Cocoa -stdlib=libc++ -framework OpenGL' CXX_FLAGS += '-DB3_NO_PYTHON_FRAMEWORK ' CXX_FLAGS += '-DHAS_SOCKLEN_T ' CXX_FLAGS += '-D_DARWIN '