Anonymous
Связывание существующей статической библиотеки C ++ в Базеле не удалось
Сообщение
Anonymous » 04 фев 2025, 23:00
Я пишу программу OpenGL в Windows. В рабочем пространстве http_archive использует для загрузки GLEW32.Lib
Код: Выделить всё
http_archive(
name = "glew",
build_file = "@//:thirdparty/glew.BUILD",
sha256 = "ea6b14a1c6c968d0034e61ff6cb242cff2ce0ede79267a0f2b47b1b0b652c164",
strip_prefix = "glew-2.2.0",
urls = ["https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip"],
)
< /code>
glew.build следующим образом < /p>
package(default_visibility=["//visibility:public"])
load("@rules_cc//cc:defs.bzl", "cc_binary")
cc_import(
name = "glew_lib",
static_library = "lib/Release/x64/glew32s.lib",
hdrs = glob([
"include/GL/*.h"
]),
)
cc_library(
name = "glew"
includes = ["include"],
deps = ["glew_lib"]
)
< /code>
в зависимости от двоичного файла в следующем < /p>
cc_binary(
name = "window",
srcs = [
"window.cc",
],
deps = [
"//engine:debug",
"//engine:gl",
"//playground:playground",
"@fmt",
"@glew",
"@glfw",
"@glm",
"@imgui",
],
linkstatic = 1
)
< /code>
Файл параметра ссылки C: \ Program Files \ Microsoft Visual Studio \ 2022 \ Community \ VC \ Tools \ MSVC \ 14.32.31326 \ bin \ hostx64 \ x64 \ link.exe @bazel -out/x64_windows-fastbuild/bin/playground/window.exe-2.params
Glew Lib является нечетным. Я не знаю, как генерируется внешний/glew/lib/release/x64/glew32s.lib . Но glew.lib не присоединился к связыванию. < /P>
Код: Выделить всё
/nologo
/OUT:bazel-out/x64_windows-fastbuild/bin/playground/window.exe
bazel-out/x64_windows-fastbuild/bin/playground/_objs/window/window.obj
bazel-out/x64_windows-fastbuild/bin/playground/playground.lib
bazel-out/x64_windows-fastbuild/bin/playground/scene/scenes.lib
bazel-out/x64_windows-fastbuild/bin/playground/pass.lib
bazel-out/x64_windows-fastbuild/bin/playground/object/object.lib
bazel-out/x64_windows-fastbuild/bin/engine/framebuffer/framebuffer.lib
bazel-out/x64_windows-fastbuild/bin/playground/context.lib
bazel-out/x64_windows-fastbuild/bin/engine/repo/repo.lib
bazel-out/x64_windows-fastbuild/bin/engine/engine.lib
bazel-out/x64_windows-fastbuild/bin/engine/primitive/primitive.lib
bazel-out/x64_windows-fastbuild/bin/engine/mesh.lib
bazel-out/x64_windows-fastbuild/bin/engine/gl.lib
bazel-out/x64_windows-fastbuild/bin/external/assimp/assimp.lib
bazel-out/x64_windows-fastbuild/bin/engine/util.lib
bazel-out/x64_windows-fastbuild/bin/engine/proto/config_proto.lib
bazel-out/x64_windows-fastbuild/bin/external/com_github_protocolbuffers_protobuf/protobuf.lib
bazel-out/x64_windows-fastbuild/bin/external/com_github_protocolbuffers_protobuf/protobuf_lite.lib
bazel-out/x64_windows-fastbuild/bin/external/com_github_google_glog/glog.lib
bazel-out/x64_windows-fastbuild/bin/external/com_github_gflags_gflags/gflags.lib
bazel-out/x64_windows-fastbuild/bin/external/fmt/fmt.lib
external/glew/lib/Release/x64/glew32s.lib
bazel-out/x64_windows-fastbuild/bin/external/imgui/imgui.lib
bazel-out/x64_windows-fastbuild/bin/external/glfw/glfw_src.lib
/SUBSYSTEM:CONSOLE
-ignore:4221
-ignore:4221
-DEFAULTLIB:user32.lib
-DEFAULTLIB:gdi32.lib
-DEFAULTLIB:shell32.lib
/MACHINE:X64
/DEFAULTLIB:msvcrt.lib
/DEBUG:FASTLINK
/INCREMENTAL:NO
Может ли кто -нибудь помочь мне существовать Glew32.Lib успех?
Подробнее здесь:
https://stackoverflow.com/questions/722 ... zel-failed
1738699240
Anonymous
Я пишу программу OpenGL в Windows. В рабочем пространстве http_archive использует для загрузки GLEW32.Lib [code]http_archive( name = "glew", build_file = "@//:thirdparty/glew.BUILD", sha256 = "ea6b14a1c6c968d0034e61ff6cb242cff2ce0ede79267a0f2b47b1b0b652c164", strip_prefix = "glew-2.2.0", urls = ["https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip"], ) < /code> glew.build следующим образом < /p> package(default_visibility=["//visibility:public"]) load("@rules_cc//cc:defs.bzl", "cc_binary") cc_import( name = "glew_lib", static_library = "lib/Release/x64/glew32s.lib", hdrs = glob([ "include/GL/*.h" ]), ) cc_library( name = "glew" includes = ["include"], deps = ["glew_lib"] ) < /code> в зависимости от двоичного файла в следующем < /p> cc_binary( name = "window", srcs = [ "window.cc", ], deps = [ "//engine:debug", "//engine:gl", "//playground:playground", "@fmt", "@glew", "@glfw", "@glm", "@imgui", ], linkstatic = 1 ) < /code> Файл параметра ссылки C: \ Program Files \ Microsoft Visual Studio \ 2022 \ Community \ VC \ Tools \ MSVC \ 14.32.31326 \ bin \ hostx64 \ x64 \ link.exe @bazel -out/x64_windows-fastbuild/bin/playground/window.exe-2.params [/code] Glew Lib является нечетным. Я не знаю, как генерируется внешний/glew/lib/release/x64/glew32s.lib . Но glew.lib не присоединился к связыванию. < /P> [code]/nologo /OUT:bazel-out/x64_windows-fastbuild/bin/playground/window.exe bazel-out/x64_windows-fastbuild/bin/playground/_objs/window/window.obj bazel-out/x64_windows-fastbuild/bin/playground/playground.lib bazel-out/x64_windows-fastbuild/bin/playground/scene/scenes.lib bazel-out/x64_windows-fastbuild/bin/playground/pass.lib bazel-out/x64_windows-fastbuild/bin/playground/object/object.lib bazel-out/x64_windows-fastbuild/bin/engine/framebuffer/framebuffer.lib bazel-out/x64_windows-fastbuild/bin/playground/context.lib bazel-out/x64_windows-fastbuild/bin/engine/repo/repo.lib bazel-out/x64_windows-fastbuild/bin/engine/engine.lib bazel-out/x64_windows-fastbuild/bin/engine/primitive/primitive.lib bazel-out/x64_windows-fastbuild/bin/engine/mesh.lib bazel-out/x64_windows-fastbuild/bin/engine/gl.lib bazel-out/x64_windows-fastbuild/bin/external/assimp/assimp.lib bazel-out/x64_windows-fastbuild/bin/engine/util.lib bazel-out/x64_windows-fastbuild/bin/engine/proto/config_proto.lib bazel-out/x64_windows-fastbuild/bin/external/com_github_protocolbuffers_protobuf/protobuf.lib bazel-out/x64_windows-fastbuild/bin/external/com_github_protocolbuffers_protobuf/protobuf_lite.lib bazel-out/x64_windows-fastbuild/bin/external/com_github_google_glog/glog.lib bazel-out/x64_windows-fastbuild/bin/external/com_github_gflags_gflags/gflags.lib bazel-out/x64_windows-fastbuild/bin/external/fmt/fmt.lib external/glew/lib/Release/x64/glew32s.lib bazel-out/x64_windows-fastbuild/bin/external/imgui/imgui.lib bazel-out/x64_windows-fastbuild/bin/external/glfw/glfw_src.lib /SUBSYSTEM:CONSOLE -ignore:4221 -ignore:4221 -DEFAULTLIB:user32.lib -DEFAULTLIB:gdi32.lib -DEFAULTLIB:shell32.lib /MACHINE:X64 /DEFAULTLIB:msvcrt.lib /DEBUG:FASTLINK /INCREMENTAL:NO [/code] Может ли кто -нибудь помочь мне существовать Glew32.Lib успех? Подробнее здесь: [url]https://stackoverflow.com/questions/72294076/linking-existing-c-static-library-in-bazel-failed[/url]