如何为SFML游戏创建macOS .app捆绑包?

时间:2018-11-20 15:42:39

标签: c++ macos sfml app-bundle

我正在使用macOS,并且正在使用

编译我的游戏
g++ -F Frameworks -rpath Frameworks {{frameworks}} src/main.cpp -o game

我正在按照apple developer documents上的说明进行操作 关于如何创建macOS .app捆绑包,我具有正确的文件夹结构和文件,但仍然无法启动该应用程序。

我收到错误消息:

Dyld Error Message: Library not loaded: @rpath/sfml-window.framework/Versions/2.5.1/sfml-window Referenced from: /Users/USER/*/test.app/Contents/MacOS/game Reason: image not found

我所有的框架包都位于test.app/Contents/Frameworks中,并且我可以通过./MacOS/game在Contents文件夹中运行二进制文件。但是,如果我仅使用框架目录的绝对路径,它就会起作用。

我的-rpath自变量应该通过什么?

1 个答案:

答案 0 :(得分:1)

根据this link,您需要在命令行中以这种方式定义import altair as alt from vega_datasets import data cars = data.cars() alt.Chart(cars).mark_point().encode( alt.X('Horsepower', axis=alt.Axis(title="HORSEPOWER")), alt.Y('Miles_per_Gallon', axis=alt.Axis(title="Miles Per Gallon")), color='Origin', shape='Origin' ).configure_axis( labelFontSize=20, titleFontSize=20 )

rpath

那应该告诉它在所有框架的AppBundle / Contents / Frameworks /中查找。

This是关于该主题的另一篇好文章。