tuxji commented on PR #1209:
URL: https://github.com/apache/daffodil/pull/1209#issuecomment-2047462999
I noticed that the macOS build has a compilation error:
```log
[info] [cc, -c,
/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/src/main/resources/org/apache/daffodil/codegen/c/files/libcli/xml_writer.c,
-o,
/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/target/streams/compile/ccSourceObjectMap/_global/streams/compile/libruntime.a/src/main/resources/org/apache/daffodil/codegen/c/files/libcli/xml_writer.c.o,
-I/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/src/main/resources/org/apache/daffodil/codegen/c/files/libcli,
-I/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/src/main/resources/org/apache/daffodil/codegen/c/files/libruntime,
-Wall, -Wextra, -Wpedantic, -std=gnu11]
In file included from
/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/src/main/resources/org/apache/daffodil/codegen/c/files/libcli/xml_writer.c:20:
In file included from
/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/src/main/resources/org/apache/daffodil/codegen/c/files/libcli/xml_writer.h:25:
/Users/runner/work/daffodil/daffodil/daffodil-codegen-c/src/main/resources/org/apache/daffodil/codegen/c/files/libcli/stack.h:23:10:
fatal error: 'mxml.h' file not found
#include <mxml.h> // for mxml_node_t
^~~~~~~~
1 error generated.
```
The mxml library has recently released 4.0, 4.0.1, and 4.0.2 (around March
20 & 22). When the CI workflow ran "brew install libmxml" to install the
header file and library, it picked up the newly released 4.0.2 version:
```log
Run brew install libmxml
==> Downloading https://ghcr.io/v2/homebrew/core/libmxml/manifests/4.0.2
==> Fetching libmxml
==> Downloading
https://ghcr.io/v2/homebrew/core/libmxml/blobs/sha256:98e1e1b8b65b2cabd74cd88dc9c6bc7c20b702729047bc80bb90a692ae8d4357
==> Pouring libmxml--4.0.2.monterey.bottle.tar.gz
🍺 /usr/local/Cellar/libmxml/4.0.2: 19 files, 1.8MB
```
I checked the mxml git repository and mxml.h is still there (it hasn't been
renamed or moved). I'm not sure what's going on (@pkatlic may be able to find
out more with his MacBook), but the quickest fix would be to change the
workflow to install a previous version of mxml (v3.3.1 was the last version
before v4.0 was released). The Linux build also pins mxml to 3.x because it
runs on Ubuntu 22.04, which doesn't roll packages to new versions (only adds
security patches as needed). This documentation describes how to make brew
install a specific version of a package:
<https://www.slingacademy.com/article/homebrew-how-to-install-a-specific-version-of-a-package/>.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]