Hi, I’m having trouble installing GPT 1.1 on macOS Sequoia 15.3.1 using Xcode Command Line Tools 16.0.
I downloaded Evaluation Environment for Windows Games 2.1, mounted the image, and opened the README file. Then, I followed Option 2 to build the environment from scratch:
Set up your development and Homebrew environment
Ensure you are using Command Line Tools for Xcode 15.1. You can download this older version from:
https://developer.apple.com/downloads
Note: There is a header file layout change that prevents using newer versions of the macOS SDK.
softwareupdate --install-rosetta
arch -x86_64 zsh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
which brew
brew tap apple/apple http://github.com/apple/homebrew-apple
brew -v install apple/apple/game-porting-toolkit
At first, I noticed that I needed to use CLT 15.1, which is not supported on later macOS versions (including mine). Even when I tried using 15.3 (which is somehow supported), I received a message stating that I needed CLT v16.0 or higher to install GPT.
After following all the steps and waiting for the installation to complete, I got the following error:
==> Installing apple/apple/game-porting-toolkit
==> Staging /Users/tycjanfalana/Library/Caches/Homebrew/downloads/7baed2a6fd34b4a641db7d1ea1e380ccb2f457bb24cd8043c428b6c10ea22932--crossover-sources-22.1.1.tar.gz in /private/tmp/game-porting-toolkit-20250316-15122-yxo3un
==> Patching
==> /private/tmp/game-porting-toolkit-20250316-15122-yxo3un/wine/configure --prefix=/usr/local/Cellar/game-porting-toolkit/1.1 --disable-win16 --disable-tests --without-x --without-pulse --without-dbus --without-inotify --without-alsa --without-capi --without-oss --without-udev --without-krb5 --enable-win64 --with-gnutls --with-freetype --with-gstreamer CC=/usr/local/opt/game-porting-toolkit-compiler/bin/clang CXX=/usr/local/opt/game-porting-toolkit-compiler/bin/clang++
checking build system type... x86_64-apple-darwin24.3.0
checking host system type... x86_64-apple-darwin24.3.0
checking whether make sets $(MAKE)... yes
checking for gcc... /usr/local/opt/game-porting-toolkit-compiler/bin/clang
checking whether the C compiler works... no
configure: error: in `/private/tmp/game-porting-toolkit-20250316-15122-yxo3un/wine64-build':
configure: error: C compiler cannot create executables
See `config.log' for more details
==> Formula
Tap: apple/apple
Path: /usr/local/Homebrew/Library/Taps/apple/homebrew-apple/Formula/game-porting-toolkit.rb
==> Configuration
HOMEBREW_VERSION: 4.4.24
ORIGIN: https://github.com/Homebrew/brew
HOMEBREW_PREFIX: /usr/local
Homebrew Ruby: 3.3.7 => /usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/3.3.7/bin/ruby
CPU: 14-core 64-bit westmere
Clang: 16.0.0 build 1600
Git: 2.39.5 => /Library/Developer/CommandLineTools/usr/bin/git
Curl: 8.7.1 => /usr/bin/curl
macOS: 15.3.1-x86_64
CLT: 16.0.0.0.1.1724870825
Xcode: N/A
Rosetta 2: true
==> ENV
HOMEBREW_CC: clang
HOMEBREW_CXX: clang++
CFLAGS: [..]
Error: apple/apple/game-porting-toolkit 1.1 did not build
Logs:
/Users/xyz/Library/Logs/Homebrew/game-porting-toolkit/00.options.out
/Users/xyz/Library/Logs/Homebrew/game-porting-toolkit/01.configure
/Users/xyz/Library/Logs/Homebrew/game-porting-toolkit/01.configure.cc
/Users/xyz/Library/Logs/Homebrew/game-porting-toolkit/wine64-build
If reporting this issue, please do so to (not Homebrew/brew or Homebrew/homebrew-core):
apple/apple
In config.log, I found this:
configure:4672: checking for gcc
configure:4704: result: /usr/local/opt/game-porting-toolkit-compiler/bin/clang
configure:5057: checking for C compiler version
configure:5066: /usr/local/opt/game-porting-toolkit-compiler/bin/clang --version >&5
clang version 8.0.0
Target: x86_64-apple-darwin24.3.0
Thread model: posix
InstalledDir: /usr/local/opt/game-porting-toolkit-compiler/bin
configure:5077: $? = 0
configure:5066: /usr/local/opt/game-porting-toolkit-compiler/bin/clang -v >&5
clang version 8.0.0
Target: x86_64-apple-darwin24.3.0
Thread model: posix
InstalledDir: /usr/local/opt/game-porting-toolkit-compiler/bin
configure:5077: $? = 0
configure:5066: /usr/local/opt/game-porting-toolkit-compiler/bin/clang -V >&5
clang-8: error: argument to '-V' is missing (expected 1 value)
clang-8: error: no input files
configure:5077: $? = 1
configure:5066: /usr/local/opt/game-porting-toolkit-compiler/bin/clang -qversion >&5
clang-8: error: unknown argument '-qversion', did you mean '--version'?
clang-8: error: no input files
configure:5077: $? = 1
configure:5066: /usr/local/opt/game-porting-toolkit-compiler/bin/clang -version >&5
clang-8: error: unknown argument '-version', did you mean '--version'?
clang-8: error: no input files
configure:5077: $? = 1
configure:5097: checking whether the C compiler works
configure:5119: /usr/local/opt/game-porting-toolkit-compiler/bin/clang [...]
dyld[15547]: Symbol not found: _lto_codegen_debug_options_array
Referenced from: <E33DCAC4-3116-3019-8003-432FB3E66FB4> /Library/Developer/CommandLineTools/usr/bin/ld
Expected in: <43F5C676-DE37-3F0E-93E1-BF793091141E> /usr/local/Cellar/game-porting-toolkit-compiler/0.1/lib/libLTO.dylib
clang-8: error: unable to execute command: Abort trap: 6
clang-8: error: linker command failed due to signal (use -v to see invocation)
configure:5123: $? = 254
configure:5163: result: no
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Wine"
| #define PACKAGE_TARNAME "wine"
| #define PACKAGE_VERSION "7.7"
| #define PACKAGE_STRING "Wine 7.7"
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| /* end confdefs.h. */
|
| int
| main (void)
| {
|
| ;
| return 0;
| }
configure:5168: error: in `/private/tmp/game-porting-toolkit-20250316-15122-yxo3un/wine64-build':
configure:5170: error: C compiler cannot create executables
See `config.log` for more details
Does anyone have any ideas on how to fix this?
General
RSS for tagDive into the vast array of tools and services available to developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Is there any way to manually adding UIDeviceFamily key inside info.plist and it updates the values inside xcode > Supported destinations section??
I'm attempting to create a proof of concept of a static library, distributed as an XCFramework, which has two local XCFramework dependencies.
The reason for this is because I'm working to provide a single statically linked library to a customer, instead of providing them with the static library plus the two dependencies.
The Issue
With a fairly simple example project, I'm not able to access any code from the static library without the complier throwing a "No such module" error and saying that it cannot find one of the dependent modules.
Project Layout
I have an example project that has some example targets with basic example code.
Example Project on Github
Target: FrameworkA
Mach-0 Type: Dynamic
Build Mergable Library: Yes
Skip Install: No
Build Libraries For Distribution: Yes
Target: FrameworkB
Mach-0 Type: Dynamic
Build Mergable Library: Yes
Skip Install: No
Build Libraries For Distribution: Yes
XCFrameworks are being generated from these two targets using Apple's recommendations. I've verified that the mergable metadata is present in both framework's Info.plist files.
Each exposes a single struct which will return an example String.
Finally I have my SDK target:
Target: ExampleKit
Mach-0 Type: Static
Build Mergable Library: No
Create Merged Binary: Manual
Skip Install: No
Build Libraries For Distribution: Yes
The two .xcframework files are in the Target's folder structure as well. The "Link Binary With Libraries" build phase includes them and they're Required.
Inside of the ExampleKit target, I have a single public struct which has two static properties which return the example strings from FrameworkA and FrameworkB.
I then have another script which generates an XCFramework from this target.
Expectations
Based on Apple's documentation and the "Meet Mergable Libraries" WWDC session I would expect that I could make a simple iOS app, link the ExampleKit.xcframework, import ExampleKit inside of a file, and be able to access the single public struct present in ExampleKit. Unfortunately, all I get is "No such module FrameworkA".
I would expect that FrameworkA and FrameworkB would have been merged into ExampleKit? I'm really unsure of where to go from here in debugging this. And more importantly, is this even a possible thing to do?
I've encountered a strange issue with Swift and I wonder if this is a compiler error or if I didn't understand something correctly.
The following sample code shows a weird issue (please ignore that the demo code itself would not make that much sense in this form, it's just the version from a big and more complicated project, where this would make more sense):
class Test {
var data: [String:[String:String]] = [:]
func test() {
let setValue: ((String, String, String) -> Void) = { [weak self] key, id, value in
if self!.data[key] == nil {
self!.data[key] = [:]
}
let oldValue = self!.data[key]![id]
if oldValue == nil {
self!.data[key]![id] = value
}
}
setValue("0", "1", "2")
}
}
When changing the "data" dictionary through the closure within the "test()" function, everything works as expected until the "if" condition where the oldValue is checked against nil. If I set a break point to this condition, the Xcode debugger tells me that oldValue is nil (which is expected), but the code within the if condition is NOT executed. The comparison oldValue == nil should be be true (because oldValue is actually nil), but the compiler seems to assume something else.
But If I do not user "self!" but instead "self?" then it does work as expected and the code within the if condition is executed.
What I am missing here? Is this the correct behavior or a compiler bug?
So I'm working on a large client app with lots of frameworks and modules which is is a mix of Xcode frameworks with 3rd party dependencies in CocoaPods and newer/converted SPM modules. Essentially CocoaPods is used to set the 3rd party dependencies on various Xcode frameworks, which also depend on each other via manual set dependencies, plus a bunch of SPM modules which are also manually added. It's a bit of a mess.
The problem we encountered the other day started when I added a new protocol to one of the SPM modules. Nothing special about it, all types from Foundation and the app built and ran perfectly in simulator with a Debug build.
However when we switched to building a Release build, it failed to link, logging an error indicating it could not resolve the new protocol in a number of the Xcode framework projects.
The resolutions go like this:
The Xcode app project has some manually added Xcode frameworks.
Those frameworks have manually added dependencies on a second Xcode framework.
That second framework has an SPM dependency on the module where my protocol lives.
So Xcode App -> 1st Xcode framework -> 2nd Xcode framework -> SPM module.
Now the 2nd Xcode framework directly uses my protocol from the SPM module. But the 1st Xcode framework neither uses or imports the SPM module.
Yet the error we get when building for Release is that the 1st Framework is unable to resolve the protocol from the SPM module even though it's completely oblivious to it.
My working theory is that something in the way a Release build works is insisting that when linking the 1st Xcode framework, it has to resolve the 2nd Xcode framework, which then has to resolve types from the SPM modules, but for some reason and only in a Release build, it's unable to.
So our current workaround has been to add the SPM module as a dependency to all 1st level Xcode frameworks that have the 2nd Xcode framework as a dependency. That works because when linking the 1st Xcode framework, it has a direct reference to the module even though the code never imports anything from it.
Does this should correct?
Good morning everyone,
I am developing a Flutter app for Android and iOS.
When I press a button, the app detects the location of the device (obviously with permissions already granted).
On Android everything works correctly.
On iOS, however, when I press the button for the first time after opening the app, the location is detected after about 30-50 seconds.
On the other hand, if I repeat the operation later, the response time is drastically reduced (only a few seconds).
I am using the location package (https://pub.dev/packages/location), and the code to get the location is as follows:
var currentLocation = await location.getLocation();
Has anyone experienced this problem before or knows how to solve it?
Thank you very much!
Federico
After clicking the button I get an error message "An error occurred during generation. Reload this page to try again.", I tryed several times with same result. I saw in network tab the the request got 403 with error:
{ "errors" : [ { "id" : "a838db66-5e18-4dc8-8bb2-fc5903b41912", "status" : "403", "code" : "FORBIDDEN_ERROR.PLA_NOT_VALID", "title" : "Operation is forbidden because of PLA status.", "detail" : "" } ] }
Anyone can tell me what is PLA status?
Thank you
For the Linux version of my application which is written in C++ using Qt, I display the CHM format help files with this code:
QString helpFile{ QCoreApplication::applicationDirPath() + "/Help/" + tr("DeepSkyStacker Help.chm","IDS_HELPFILE") };
QString program{ "kchmviewer" };
QStringList arguments{ "-token", "com.github.deepskystacker", helpFile };
helpProcess->startDetached(program, arguments);
(helpProcess is a pointer to a QProcess object)
The -token com.github.deepskystackerpart of that ensures that only a single instance of the viewer is used for any code that uses that invocation.
Are there any chm file viewers for macOS that are capable of that sort of trick? The ones I've found on the App Store give minimal information and appear to be very simple minded tools that are not not intended for integration into an application as above.
I know that MacPorts offers ports of kchmviewer but I'd prefer not to use either that or HomeBrew ...
David
Topic:
Developer Tools & Services
SubTopic:
General
--- This post is easier to read with BBEdit and C++ colouring.---
We get strange problems with breakpoints appearing after migration (MacBook x86_64 Sequoia to Mac M3 arm64 Sequoia).
Context
We have kept our app on the MacBook and experimented no problems.
We use clang++ and lldb.
Xcode is installed but we use only CommandLineTools (no XCode project) -- and git on our lab forge.
After using the Apple migration tool, we got many problems in compiling and link-edit, in particular for dylibs.
We uninstalled all these tools and reinstalled them, using Homebrew for llvm and lld, and from AppleStore for Xcode.
We also added to our CPPFLAGS -arch arm64 -w -g -O0.
We use 'make' recursively (in principle, 0 or 1 Makefile per folder.
Problems
Our app crashes unexpectedly:
without lldb:
...Serveur: serveur.out
...
stop reason = EXC_BREAKPOINT (code=1, subcode=0x1000c662c) at descripteursDeNoeuds.cpp:947:15
with lldb:
...Serveur: lldb serveur.out -arch aarch64
(lldb) process launch
...
Process 2081 stopped
thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BREAKPOINT (code=1, subcode=0x1000c6388)
frame #0: 0x00000001000c6388 serveur.out`creerDescrDLING(m=1, bImpr=false) at descripteursDeNoeuds.cpp:947:15
We can set breakpoints, but the location is OK relative to some files, and "pending" for the file where the crash seems to occur.
...Serveur: lldb serveur.out -arch aarch64
(lldb) target create --arch=aarch64 "serveur.out"
Current executable set to '/Users/boitet/ariane-y/Ariane-Y_prog_2013/Moniteurs/Moniteur-AY/Serveur/serveur.out' (arm64).
(lldb) br set -f initDling.cpp -l 150
Breakpoint 1: where = serveur.out`initDling(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator>) + 1336 at initDling.cpp:150:30, address = 0x00000001000e0ebc
(lldb) br set -f descripteurDeNoeuds.cpp -l 886
Breakpoint 2: no locations (pending).
WARNING: Unable to resolve breakpoint to any actual locations.
(lldb) br set -f descripteurDeNoeuds.cpp -l 947
Breakpoint 3: no locations (pending).
WARNING: Unable to resolve breakpoint to any actual locations.
(lldb) br set -f initDling.cpp -l 153
Breakpoint 4: where = serveur.out`initDling(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator>) + 1364 at initDling.cpp:153:23, address = 0x00000001000e0ed8
(lldb) br set -f descripteurDeNoeuds.cpp -l 912
Breakpoint 5: no locations (pending).
WARNING: Unable to resolve breakpoint to any actual locations.
(lldb) br set -f descripteurDeNoeuds.cpp -l 3344
Breakpoint 6: no locations (pending).
WARNING: Unable to resolve breakpoint to any actual locations.
==> We can set breakpoints in the caller (initDling) but not in descripteurDeNoeuds.cpp.
==> Here, we set 2 "normal" breakpoints at lines 150 and 153 of initDling.cpp, and they work well: normal stop, step-over
==> descripteurDeNoeuds.cpp contains 1 master procedure (creerDescrDepuisNoeud) that calls more specific procedures (like creerDescrDLING)
==> continuation
(lldb) process launch
Process 2081 launched: '/Users/boitet/ariane-y/Ariane-Y_prog_2013/Moniteurs/Moniteur-AY/Serveur/serveur.out' (arm64)
"==============> main (du serveur)
... $$$ 4: initDling: créer les descripteurs de nœud des nœuds de cet arbre
$$$ 5: initDling : --> creerDescrDepuisNoeud(j=1, 0x14a068000), i = 1, gauche(j) = 2, droit(j) = 1, benj(j) = 1
Process 2081 stopped
thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
frame #0: 0x00000001000e0ebc serveur.out`initDling(nomFich="../../../INCL/fichInitDling.arbDS") at initDling.cpp:150:30
147 /*** <-TRACE / }
148 149 /**************************************/
-> 150 rc = creerDescrDepuisNoeud(j, paxml);
151 /**************************************/
152 153 / ->TRACE ***/ if (tr>1) {
(lldb) th step-over
============================================================================
$$$ 4: creerDescrDepuisNoeud (mPar = 1, pAxmlPar = 0x14a068000)
$$$ 5: creerDescrDepuisNoeud -- boucle : nomBalise = DLING, strTempo = ANNOTATIONS, trouve = 0, k = 482
$$$ 5: creerDescrDepuisNoeud -- boucle : nomBalise = DLING, strTempo = Corpus, trouve = 0, k = 483
...
==> strange EXC_BREAKPOINT
...
indNOEUD : 1
adrDESCR : 105553137336320
"==> arrêt forcé, descripteurDeNoeuds.cpp -l 966: on attend 1 seconde
"==> et on exécute 'n = n / 0;' avec n = 20... mais on a ENSUITE :
"==> stop reason = EXC_BREAKPOINT (code=1, subcode=0x1000c662c) at descripteursDeNoeuds.cpp:947:15
==> The instruction 'n = n / 0;' mentioned in the message is NOT executed as it was commented out (line 964).
==> There is no division by 0 in this code.
==> the last 3 lines of the trace are produced by cout instructions, at lines 962--965
==> system-originated EXC_BREAKPOINT, at a wrong line (947) in any case!
Process 2081 stopped
thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BREAKPOINT (code=1, subcode=0x1000c6388)
frame #0: 0x00000001000c6388 serveur.out`creerDescrDLING(m=1, bImpr=false) at descripteursDeNoeuds.cpp:947:15
944 if (pAxml->lAttr.benj(i)) fini = true; else i = pAxml->lAttr.droit(i);
945 } // while (!fini)
946 // Imprimer le descripteur si le 2° paramètre (booléen) est vrai
-> 947 if (bImpr || bDescr) // breakpoint set -f descripteurDeNoeuds.cpp -l 947 ne va pas
948 { cout<<"--------------------------------------------------------"<<endl;
949 cout<<"--- DescrDLING("<<m<<"), "<<"pDescr="<<pDescr<<" ---"<<endl;
950 cout<<"codeBalAY : "<codeBalAY<<endl;
(lldb)
==> but we are at line 966, not 947
==> And at line 967, there is nothing special:
if (bImpr || bDescr) // breakpoint set -f descripteurDeNoeuds.cpp -l 947 ne va pas
{ cout<<"--------------------------------------------------------"<<endl;
cout<<"--- DescrDLING("<<m<<"), "<<"pDescr="<<pDescr<<" ---"<<endl;
==> continuation, interruption and backtrace
(lldb) p (bImpr || bDescr)
(bool) true
(lldb) p bImpr
(bool) false
(lldb) p bDescr
(bool) true
(lldb) (bool) true
(lldb) bt
thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BREAKPOINT (code=1, subcode=0x1000c6388)
frame #0: 0x00000001000c6388 serveur.out`creerDescrDLING(m=1, bImpr=false) at descripteursDeNoeuds.cpp:947:15
frame #1: 0x00000001000dd710 serveur.out`creerDescrDepuisNoeud(mPar=1, pAxmlPar=0x000000014a068000) at descripteursDeNoeuds.cpp:3406:41
...
==>
==> After that, we are blocked, no step or continue instruction works. Then we quit.
We could not find this exact subcode (0x1000c6388) on the Web.
We found a post mentioning a similar problem, with another subcode (0x100308448).
https://stackoverflow.com/questions/45413088/error-exc-breakpoint-code-1-subcode-0x100308448
But the author worked under Xcode, and we don't.
Topic:
Developer Tools & Services
SubTopic:
General
I tried to create dmg from folder using hdiutil and diskutility , both time it failed creation for a particular folder name, when i change folder name it worked. The error i get is
could not access /Volumes/abc/abc.app - Operation not permitted
hdiutil: create failed - Operation not permitted
When i change abc to def it works.
When a user subscribes I create a document in Firestore to track that subscription using my back end. In sandbox it works perfect, one document made for each purchase. When a real user subscribes I get 5 slightly different transaction ID’s (last 4 digits change). Is this just an Apple thing and I should keep all 5? I need them for webhooks to track
Hello,
I am trying to read debug symbols from a binary obtained from simple "hello world" C code. I use default gcc (Clang) on macos15, then try to install gcc-14 with hombrew
$ gcc -g program.c -o program
then run
$ dsymutil program
I got :
warning: no debug symbols in executable (-arch arm64)
I am doing something wrong here. My final objective is to be able to use my binaries in total view for debugging. Without debugging symbols, I can debug properly .
Thank you
Hello,
My app often crashes when I use simulators. I would like some help with reading the crash report that is generated. Especially with the part below Thread 0 Crashed. Based on other posts I understand that the 0x8BADF00D in the crash report is a WatchDog crash that basically says that WatchDog terminated the app because the main thread was blocked for a significant time. Many processes can block the main thread so it's hard to find out what it is in our specific case. Can someone help me reading through the crash report?
Short_crash_report.txt
Background information
The application is Xamarin Native and I use Rider as an IDE. When I use Visual Studio, the simulators run just fine. No crash occurs while using my app on a device.
The crash happens on multiple simulators with different OS versions. I already deleted XCode cache, erased content and settings of several simulators and deleted iOS DeviceSupport files.
Saw this info: https://developer.apple.com/documentation/contacts/cncontactstore
But have no idea what I'm doing. This is a pressing matter and I need to determine the date/time contacts were originally created on my icloud account. I have tried the shortcuts method and it merely shows the date they were loaded into whichever device i'm logged in on if they were created a while ago
i have been added to an apple membership organization, and given App manager's rights b ut my build keeps failing and asking me to get more access
Topic:
Developer Tools & Services
SubTopic:
General
Why as an IDE, many developers want to use the functions are not available, such as code formatting, if the function is not available, why not even a plug-in center, I have been using IDEA for code development, with Xcode development, feel very inconvenient to use
iPhone does not show Xcode app when plugged to MacBook. Anybody know something about viewing your app on your iPhone? Thanks
We are currently building an app in Swift, reusing an internal C++ backend used in other platforms ( Linux/Windows/Mac ).
Current state of the project:
App W - ( Swift App )
Package X - Swift Package
Y.xcframework - Binary Target (ios-arm64 and ios-arm64-simulator)
Z.framework
Z - (C++ Backend as a library) Dynamic Library
Headers - Library header files
Frameworks (Folder) - Required .dylib’s for Z (
libA.dylib (Dependency of Z) [ 58 of them ]
libB.dylib (Runtime dependency of python) [ 123 of them ]
data - Supporting binary files for Z
conf - Supporting configuration files, both text and binary. for Z
python - Supporting .py scripts
C.py
D.py
Z.framework ( C++ ) contains 182 Dynamic Libraries.
Goal:
Validate the app for distribution with the Apple Store validation tool.
Learning when trying to solve the problem:
A framework can contain only one dynamic library (e.g. .dylib )
A framework cannot have nested frameworks within a Frameworks folder
Certain file types within a framework are not treated as resource files (e.g. .py files)
Possible solutions
Allow to have nested Frameworks in Z.framework.
It’s currently not allowed
Link 182 dynamic libraries into the project via SPM
Problem: Some of the libraries need to dynamically loaded at runtime (related to the python runtime)
Making the libraries static adds significantly technical challenges to the Z.framework.
Other questions:
What’s the best way to achieve this
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
Swift Packages
Frameworks
Xcode
App Submission
I have developed a Swift macro called @CodableInit in the SwiftCodableMacro module, and I’m able to use it successfully in my main project.
Here’s an example usage:
import SwiftCodableMacro
@CodableInit // This is for Codable macros
public class ErrorMonitoringWebPlugin {
public var identifier: UUID = UUID()
// MARK: - Codable
required public init(from decoder:Decoder) throws {
let values = try decoder.container(keyedBy: CodingKeys.self)
identifier = try values.decode(UUID.self, forKey: .identifier)
}
}
However, when I try to write a unit test for the ErrorMonitoringWebPlugin class, I encounter an issue. Here's the test case:
func testCodableSubjectIdentifierShouldEqualDecodedSubjectIdentifier() {
self.measure {
let encoder = JSONEncoder()
let data = try? encoder.encode(subject)
//Here I am getting this error
Class 'JSONEncoder' requires that 'ErrorMonitoringWebPlugin' conform to 'Encodable'
let decoder = JSONDecoder()
let decodedSubject = try? decoder.decode(ErrorMonitoringWebPlugin.self, from: data!)
XCTAssertEqual(subject.identifier, decodedSubject?.identifier)
}
}
The compiler throws an error saying:
Class 'JSONEncoder' requires that 'ErrorMonitoringWebPlugin' conform to 'Encodable'
Even though the @CodableInit macro is supposed to generate conformance, it seems that this macro-generated code is not visible or active inside the test target.
How can I ensure that the @CodableInit macro (from SwiftCodableMacro) is correctly applied and recognized within the XCTest target of my main project?
Hi
Would someone happen to know how to solve the problem when installing Concorde.jl in julia:
(@v1.11) pkg> add Concorde
Resolving package versions...
No Changes to ~/.julia/environments/v1.11/Project.toml
No Changes to ~/.julia/environments/v1.11/Manifest.toml
Precompiling project...
✗ Concorde
0 dependencies successfully precompiled in 2 seconds. 238 already precompiled.
1 dependency errored.
For a report of the errors see julia> err. To retry use pkg> precompile
(@v1.11) pkg> build Concorde
Building Concorde → ~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/5d9f1b1a480235ffdd3c8ab8cab011aa9afe81af/build.log
ERROR: Error building Concorde, showing the last 100 of log:
x ./concorde/TOOLS/prob2tsp.c
x ./concorde/TOOLS/showres.c
...
x ./concorde/VERIFY/Makefile.in
x ./concorde/README
loading cache ./config.cache
checking host system type... Invalid configuration darwin': machine darwin' not recognized
checking for prespecified compiler options... no
checking for gcc... (cached) gcc
checking whether the C compiler (gcc -fPIC -O2 -g ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
ERROR: LoadError: failed process: Process(bash -c "CFLAGS='-fPIC -O2 -g' ./configure --with-qsopt=/Users/poss/.julia/packages/Concorde/VRfqN/deps/qsopt --host=darwin", ProcessExited(1)) [1]
It seems to be related to the M3 processor as I have the same error on another Mac with that processor, while the M2 I tried on could install the package properly.
It is related to my C compiler, but the latter works, despite the error "checking whether the C compiler (gcc -fPIC -O2 -g ) works... no"
poss@Mac-de-Michael ~ % gcc --version
Apple clang version 16.0.0 (clang-1600.0.26.6)
Target: arm64-apple-darwin24.1.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
poss@Mac-de-Michael ~ % gcc -fPIC -O2 -g test.c
Best,
Michaël.
Topic:
Developer Tools & Services
SubTopic:
General