2017-03-10 45 views

回答

0

上此代码将从列出目录编译一个框架在问题中。 (回答之前)How to compile a C program that uses a Framework without using Xcode

gcc ... -framework frameworkName a.c b.c ... -o out 

该代码将编译从自定义目录的框架。 (据我所见,以前没有回复)。以下目录/文件的示例。

/alt/path/to/framework/frameworkName.framework 

FLAGS+="-F /alt/path/to/framework/ -framework frameworkName rpath /alt/path/to/framework/" 
gcc ... $FLAGS a.c b.c ... -o out 

这将是一个工作目录子目录的例子。我知道./通常是约定,但我不记得这是否适用于我。

FLAGS+="-F $(PWD)/alt/path/to/framework/ -framework frameworkName rpath $(PWD)/alt/path/to/framework/" 
gcc ... $FLAGS a.c b.c ... -o out 

这是/系统/库/框架/路径,路径$(PWD)/ ALT /路径/到/框架/在同一编译的组合。

FLAGS+="-F $(PWD)/alt/path/to/framework/ -framework frameworkName2 rpath $(PWD)/alt/path/to/framework/" 
gcc ... -framework frameworkName1 $FLAGS a.c b.c ... -o out 

如果有人确定这个答案/堆栈溢出的问题,我会及时删除我的'问题'。这样做的目标是为我自己以外的人提供框架的可移植性。怎么样?因为如果框架位于工作目录中,则可以轻松地将它移动到文件/文件夹本身。这显然不是人们正在尝试的常见事情,但也许它会让某些人变成一天。