Ibplugin e caminhos para a estrutura
-
22-09-2019 - |
Pergunta
O ibcocoasimulator trava quando o IB não consegue encontrar a estrutura, presumo que isso aconteça com você também. Eu posso executar o ibcocoasimulator sem colisão, quando copio manualmente minha estrutura+ibplugin do diretor de construção para /Users/username/Library/Frameworks
. Estou fazendo isso com o Finder, isso não é ideal, mas funciona.
Eu procurei por uma maneira mais inteligente e cada solução (bwtoolkit, bghudappkit, ktuikit) que tenho olhado, faz as coisas de maneiras muito diferentes. Uma solução executa um script sudo que o copia para o sistema /Library/Frameworks
. Outro conjunto @loader_path
E ainda outro usa @executable_path
. Não tive sorte com nenhum deles e, devido às grandes diferenças, é difícil ver o padrão.
Estou confuso.
Como você o configura ibplugin, para que você possa incorporá -lo no seu aplicativo?
Atualização 1:
Yay, resolveu, depois de ler um Postagem do blog por Dribin Sobre como usar o @RPath, descobri como fazê -lo trabalhar com meus ibplugins. Portanto, copiar o uso do Finder não é mais necessário.
O que eu fiz foi:
- Para Mysmallframework Set
Installation Directory
para@rpath
- Para Mysmallplugin Set
Runpath Search Paths
para@loader_path/../Frameworks
- Para Mysmallapp Conjunto
Runpath Search Paths
para@loader_path/../Frameworks
Agradável.
Solução
Pode ser óbvio para a maioria de vocês, mas a solução de Neoneye, como postada em sua "atualização 1", requer o seu alvo do plug -in ter um "Copy Framework Files" Fase de construção com o dado estrutura atribuída a.
(ainda não tenho pontos suficientes para comentários diretos :( daí a postagem de resposta)
Outras dicas
Você pode ligar para isso com o projeto Xcode de Makefiles externos do ibplugin makefile, como seguir o exemplo:
install_name_tool -change @loader_path/MyPluginName.framework/MyPluginName @loader_path/<absolute path or level to updirectory>/MyPluginName.framework/MyPluginName $(BINDIR)/MyPluginName.ibplugin/Contents/MacOS/MyPluginName