Giter Club home page Giter Club logo

Comments (6)

richard42 avatar richard42 commented on June 1, 2024

Hi Mitch. Where did Boost get installed on your system? I installed it through Mac Ports, and it must have installed to some system location (probably /opt/local) which got specified to the compiler via an '-I' flag. This may be a shortcoming in the makefile; because it should be giving a compiler option to specify the include and library paths for Boost. If you build with "./m64p_build.sh V=1" (or "make V=1" directly from the mupen64plus-video-glide64mk2/projects/unix folder) then it should print out the full compiler commands, which will also be helpful for debugging this.

from mupen64plus-core.

inactive123 avatar inactive123 commented on June 1, 2024

As a long-term goal, can we try refactoring the code in GlideHQ so that it's no longer reliant on Boost?

Getting rid of this dependency would be a huge win for my fork too as I refuse to require such a big dependency, so right now I just stub out the GlideHQ parts altogether.

If nobody else wants to make some efforts towards doing this I will take up the initiative myself. Zero dependencies other than the native IDE/toolchain of the given platform (OSX/Linux/WIndows) is very important to me and it really makes it that much easier for every single developer to contribute to the codebase in general.

from mupen64plus-core.

littleguy77 avatar littleguy77 commented on June 1, 2024

so right now I just stub out the GlideHQ parts altogether.

Same on mupen64plus-ae. I can take a peek at this if I manage to find some time.

from mupen64plus-core.

Narann avatar Narann commented on June 1, 2024

From my perspective, there is nobody in upstream involved in GlideHQ dev so if every downstream devs (retro arch + AE) are ready to collaborate to decrease upstream dependencies that would be great! (Yeah, boost is a big dependency).

I've created a ticket to track this. I encourage you to discuss to ensure the work will benefit as much downstream project as possible! :)

from mupen64plus-core.

qbwaggle avatar qbwaggle commented on June 1, 2024

The problem is in the makefile for glide64mk2 plugin.

Edit ../mupen64plus-core-master/source/mupen64plus-video-glide64mk2/projects/unix/Makefile

Go to "set special flags per-system" section and add your boost directory under the OS X 64BITS (assuming you're running 10.6+).

For me I added the following:

-I /usr/local/Cellar/boost/1.56.0/include

to the following as shown:

ifeq ($(OS), OSX)
  #xcode-select has been around since XCode 3.0, i.e. OS X 10.5
  OSX_SDK_ROOT = $(shell xcode-select -print-path)/Platforms/MacOSX.platform/Developer/SDKs
  OSX_SDK_PATH = $(OSX_SDK_ROOT)/$(shell ls $(OSX_SDK_ROOT) | tail -1)

  ifeq ($(CPU), X86)
    LDFLAGS += -bundle -L/opt/local/lib
    CXXFLAGS += -stdlib=libc++
    LDLIBS += -ldl
    ifeq ($(ARCH_DETECTED), 64BITS)
      CFLAGS += -pipe -I /opt/local/include -I /usr/local/Cellar/boost/1.56.0/include -arch x86_64 -mmacosx-version-min=10.7 -isysroot $(OSX_SDK_PATH)
    else
      CFLAGS += -pipe -I /opt/local/include -mmmx -msse -fomit-frame-pointer -arch i686 -mmacosx-version-min=10.7 -isysroot $(OSX_SDK_PATH)
    endif
  endif
endif

from mupen64plus-core.

mitchlloyd avatar mitchlloyd commented on June 1, 2024

Modifying the makefile as suggested by @qbwaggle did work for me (using boost 1.57.0 in my case).

One option for the documentation would be to include information for homebrew users telling them to use:

brew install boost
brew link boost

Which will put symlinks in /usr/local/include (this is also the path used by default if you install boost from source on a Mac without homebrew). Then you should be able to add -I /usr/local/include to the makefile. At least this way the version of Boost would not be hardcoded in the Makefile.

Thanks for the help!

from mupen64plus-core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.