-
Notifications
You must be signed in to change notification settings - Fork 24.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[[email protected]] yoga/style/Style.h
file not found
#46208
Comments
Hey, Have you tried to remove run I'm assuming this is an issue with Codegen generated |
@okwasniewski I tried it now, it does not help :( |
I was cloning the project, checking out the dev-16 branch and try to run it, but I'm struggling to reach your error. When I build from Xcode, I get: which is weird as I created symlink for node, npm and npx in /urs/local/bin which is accessible by Xcode. I also tried to build with
Are you using CMake to build other stuffs? For what concern the "missing" file... A new app from the template works fine from the template. Another thing you can try is to add these lines in this file if ENV['USE_FRAMEWORKS']
header_search_path = header_search_path + [
"\"$(PODS_TARGET_SRCROOT)/react/renderer/textlayoutmanager/platform/ios\"",
"\"$(PODS_TARGET_SRCROOT)/react/renderer/components/textinput/platform/ios\"",
"\"$(PODS_TARGET_SRCROOT)/react/renderer/components/view/platform/cxx\"",
]
end
ss.dependency folly_dep_name, folly_version
+ ss.dependency yoga
ss.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
ss.source_files = "react/renderer/core/**/*.{m,mm,cpp,h}" The ShadowNode.cpp is included by react/renderer/core and the core subspec contains it. |
Sorry, I forgot to mention you need to
In theory, that Custom configuration is the same as Debug or Release (I don't remember now, which one exactly), it just tests the build does not break with non-standard configuration name (it used to happen at some point, because CMake was looking at wrong folders). The library's Podspec (https://github.com/birdofpreyru/react-native-static-server/blob/master/dr-pogodin-react-native-static-server.podspec) has a bunch of custom stuff to orchestrate CMake part of the build... perhaps I need to double-check how it differs from the clean version from the template. |
Thanks for the context. I tried to spend some more time on the issue: using However, not being able to use Xcode makes it hard because I don't have the import chain and so I can't find which file is importing Yoga. The @birdofpreyru could you please expand the error in your xcode so I can see the import chain? |
here you are @cipolleschi |
If I change the
|
@cipolleschi Awesome! I'll double-check later it does not break the build for other target platforms. For record, By the way, you asked for repro in #46201 — here you got it, if you just press |
the "all" alternative is supported by codegen. But I think that they are doing some shenanigans on top of what we do with codegen and that somehow breaks it. It's probably a good idea to move the issue to their repo or to create a new one there.
thanks, I'll try to look into it soon (although I'm more an iOS guy. 😅 ) |
it is also shows at 0.76.1 |
@memosize what is shown in 0.76.1? The error? |
if I'm not add header search path like this |
I had the same issue on RN 0.76.1. Adding this to the Podfile fixed the issue for me.
|
A fix for this will be released in RN 0.76.2 |
@clarkquinatadcan in which part of the Podfile did you add that piece of code? |
hey, do you know which commit addresses this issue exactly? (as RN 0.76.2 isn't out yet) |
Since it needs the
|
Hey @cipolleschi does this mean some of the libraries won't compile with certain versions of React Native? Anything we can do on bob?
If we are abusing |
@atlj Honestly, I'm not sure. The problem was happening in the original issue because the codegen was generating some stuff for components when there were no actual components in the library. In theory that should not be a problem, but practically it was. I think you can easily reproduce the issue by following the steps above. In general, I'd say that if a user choose to create a TM, it's better to set the type to It's alway better to have less code to build! 😉
We guaranteed Codegen working only for the latest version of React Native as codegen was part of the New Architecture. Now that the new architecture is stable we are going to guarantee that codegen works for versions > 0.76 and in the official support windows. |
### Summary We were using `type: "all"` in codegenConfig for all types of libraries. @cipolleschi recommended us to use proper types instead [in this thread](facebook/react-native#46208 (comment)). This updates the templates to use the proper types ### Test plan #### Modules 1. Create a new arch supported module library 2. Go to the `package.json` and make sure `codegenConfig.type` is `"modules"` 3. Make sure the library builds and runs fine with the new architecture #### Components a.k.a views 1. Create a new arch supported view/component 2. Go to the `package.json` and make sure `codegenConfig.type` is `"components"` 3. 3. Make sure the library builds and runs fine with the new architecture
0.76.2 fixed this error: facebook/react-native#46208
Hey folks, I was able to reproduce this without bob on React Native |
A workaround for lib devs: You can add the yoga private headers to the header search paths: s.pod_target_xcconfig = {
"HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"${PODS_ROOT}/Headers/Private/Yoga\"", # <-- Yoga is added here
"OTHER_CPLUSPLUSFLAGS" => "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
"CLANG_CXX_LANGUAGE_STANDARD" => "c++17"
} Here's a complete example: https://github.com/ArturKalach/react-native-a11y/blob/0b32d691c50b608c0d7fe221c73458f197fa2401/react-native-a11y.podspec#L25 I will also land this fix in Here's another comment recommending the same fix: react-native-webview/react-native-webview#3218 (comment) |
Description
Attempting to upgrade my react-native-static-server library from [email protected] to [email protected], building for iOS, new arch, getting the error with yoga:
Interestingly, I've already upgraded a couple of other libs the same way, without having this issue.
Steps to reproduce
Clone birdofpreyru/react-native-static-server@6f6c899 , try to build the Example App in the library codebase (in the
/example
folder) for iOS.React Native Version
0.75.2
Affected Platforms
Runtime - iOS, Build - MacOS
Output of
npx react-native info
Stacktrace or Logs
Reproducer
N/A
Screenshots and Videos
No response
The text was updated successfully, but these errors were encountered: