Связывание OSX неуниверсально (i386) с универсальным .dylib - PullRequest
1 голос
/ 23 сентября 2010

Это законно?Я получаю сообщение об ошибке «Не удается найти .framework / Versions / 4 / » от компоновщика.В этом случае - это 'QtGui', созданный как платформа i386 (не универсальная), но другая (сторонняя) библиотека, на которую я ссылаюсь (использующая QtGui) , является универсальной.

Я думаю, все должно быть универсальным или нет ...

Ответы [ 2 ]

0 голосов
/ 24 сентября 2010

Роджер.

Оказывается, моя проблема на самом деле проистекает из неправильных встроенных путей во внешние библиотеки, которые необходимо сбросить (что, я не думаю, повлияет на ссылки, но это так).

Проблема с универсальной сборкой была подозреваемой, но нет.

Спасибо, Рикб

0 голосов
/ 24 сентября 2010

Вы можете связать неуниверсальный фреймворк (скажем, только i386) с универсальным фреймворком (скажем, с i386 и x86_64), чтобы сделать двоичный файл i386.в этом случае.

Обратите внимание, что если ваш Mac имеет 64-битный процессор, компоновщик по умолчанию использует двоичный файл x86_64.Поэтому компоновщик будет жаловаться, если какая-либо из вашей библиотеки не имеет части x86_64.Если вы хотите создать двоичный файл i386, вам необходимо явно указать это в командной строке.

...