Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在没有Xcode的Mac捆绑包中嵌入框架_C++_Macos_Cocoa_Game Engine_App Bundle - Fatal编程技术网

C++ 在没有Xcode的Mac捆绑包中嵌入框架

C++ 在没有Xcode的Mac捆绑包中嵌入框架,c++,macos,cocoa,game-engine,app-bundle,C++,Macos,Cocoa,Game Engine,App Bundle,我现在正在尝试在macOS上创建一个游戏引擎,并且正在尝试设置一个makefile,以便在不使用Xcode的情况下将代码编译成macOS应用程序包。如果我只是链接src代码,我就可以轻松地创建一个包,但我想将它作为一个框架嵌入。如果我使用Xcode嵌入框架,那么这真的很容易,但我不知道它是如何实现这种效果的。以下是我的makefile的代码: # Fill in Details for Compiler PRJNAME = YetiGame GAMEFILES = Example/Game.cp

我现在正在尝试在macOS上创建一个游戏引擎,并且正在尝试设置一个makefile,以便在不使用Xcode的情况下将代码编译成macOS应用程序包。如果我只是链接src代码,我就可以轻松地创建一个包,但我想将它作为一个框架嵌入。如果我使用Xcode嵌入框架,那么这真的很容易,但我不知道它是如何实现这种效果的。以下是我的makefile的代码:

# Fill in Details for Compiler
PRJNAME = YetiGame
GAMEFILES = Example/Game.cpp
COMPILER = clang++

# Don't Change Unless Modifying Engine
LIBFILES = Yeti/Application/Application.cpp
OSXMACROS = -D YETI_PLATFORM_MACOS
SRCPATH = $(shell pwd)/
LIBFLAGS = -I $(SRCPATH) -framework Cocoa -framework Metal -framework Metalkit -framework QuartzCore -framework Foundation -o $(PRJNAME) -F$(SRCPATH) -framework @rpath@executable_path/../Frameworks/Neptune -v
LIBFILES = Yeti/Application/Application.cpp Yeti/Renderer/Metal/2D/metalRenderer2D.mm Yeti/Renderer/Metal/metalView.mm Yeti/Renderer/Metal/metalApplication.mm Yeti/Renderer/Metal/metalApplicationWrapper.mm Yeti/Renderer/Metal/metalDelegate.mm Yeti/Renderer/Metal/metalWindow.mm

app:
    $(COMPILER) $(LIBFILES) $(GAMEFILES) $(LIBFLAGS) $(OSXMACROS)
    mkdir -p _macOS/Contents/macOS/
    mv $(PRJNAME) _macOS/Contents/macOS/YetiExecutable
    cp Resources/Info.plist _macOS/Contents/Info.plist
    mkdir _macOS/Contents/Resources/
    cp Resources/temp.icns _macOS/Contents/Resources/temp.icns
    mv _macOS $(PRJNAME).app

clean:
    rm -R $(PRJNAME).app

现在,我刚刚在Xcode中编译了一个框架,并希望将它链接到我的项目,以便记录一些东西,并在Xcode中对其进行测试。我希望能够在Xcode中编译框架,并从Xcode外部使用它

我想我至少找到了dylibs的答案。您可以使用dlopen()链接框架