Skip to content
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

Support absolute library path of the package when link #5066

Closed
star-hengxing opened this issue May 6, 2024 · 14 comments
Closed

Support absolute library path of the package when link #5066

star-hengxing opened this issue May 6, 2024 · 14 comments

Comments

@star-hengxing
Copy link
Contributor

Is your feature request related to a problem? Please describe.

xmake-io/xmake-repo#3962
#4964
#3889

Describe the solution you'd like

add_packages("xxx", {absolute_lib = true})

Describe alternatives you've considered

No response

Additional context

Will it conflict with add_linkorders?

@waruqi
Copy link
Member

waruqi commented May 13, 2024

try #5099

add_packages("xxx", {linkpath = true})

@TOMO-CAT
Copy link

试了最新的 dev 分支还是 -l 的,是我要手动 cherry-pick 改动吗

@waruqi
Copy link
Member

waruqi commented May 13, 2024

patch 还没merge xmake update -s github:xmake-io/xmake#linkpath

@Latias94
Copy link
Contributor

vulkansdk 支持不

@waruqi
Copy link
Member

waruqi commented May 13, 2024

vulkansdk 支持不

系统库不支持,需要能找到完整库路径。目前只是 fetch only 包 https://github.com/xmake-io/xmake-repo/blob/dev/packages/v/vulkansdk/xmake.lua

除非你改进这个包 增加 on_install ,或者让 on_fetch 检测到库路径,返回 libfiles

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


I tried the latest dev branch and it still has -l. Do I need to manually cherry-pick the changes?

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


The patch has not been merged yet xmake update -s github:xmake-io/xmake#linkpath

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


Does vulkansdk support

@waruqi
Copy link
Member

waruqi commented May 13, 2024

试了最新的 dev 分支还是 -l 的,是我要手动 cherry-pick 改动吗

merge 了,再试下 dev

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


I tried the latest dev branch and it still has -l. Do I need to manually cherry-pick the changes?

Merged, try dev again

@TOMO-CAT
Copy link

TOMO-CAT commented May 15, 2024

试了最新的 dev 分支还是 -l 的,是我要手动 cherry-pick 改动吗

merge 了,再试下 dev

可以了,不过我更期待是 policy 这种写法,感觉是一种使用三方库的风格。

至少应该是 add_requires("xxx") 的级别,不然的话代码里每次使用 add_packages 都要加一行这个。

@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


I tried the latest dev branch and it still has -l. Do I need to manually cherry-pick the changes?

Merged, try dev again

It's okay, but I'm more looking forward to writing it in the policy way, which feels like a style of using a dynamic library.

It should be at least the level of add_requires("xxx"), otherwise you will have to add a line of this every time you use add_packages in your code.

@waruqi
Copy link
Member

waruqi commented May 15, 2024

试了最新的 dev 分支还是 -l 的,是我要手动 cherry-pick 改动吗

merge 了,再试下 dev

可以了,不过我更期待是 policy 这种写法,感觉是一种使用三方库的风格。

至少应该是 add_requires("xxx") 的级别,不然的话代码里每次使用 add_packages 都要加一行这个。

放进 add_requires 里,每次切 linkpath 和 -l 都需要重新安装一遍,并且云端预编译的包也用不了。。走 add_packages ,你想切的时候,几秒就能切过去,默认还是走 -l ,只有需要 linkpath 的加一下就好了。。

而且也不是所有包都能找到完整库路径。。系统库,brew 等一些三方包管理 目前是不支持的

@waruqi waruqi closed this as completed May 15, 2024
@Issues-translate-bot
Copy link

Bot detected the issue body's language is not English, translate it automatically.


I tried the latest dev branch and it still has -l. Do I need to manually cherry-pick the changes?

Merged, try dev again

It's okay, but I'm more looking forward to writing it in the policy way, which feels like a style of using a third-party library.

It should be at least the level of add_requires("xxx"), otherwise you will have to add a line of this every time you use add_packages in the code.

Put it in add_requires, you need to reinstall it every time you change linkpath and -l, and the pre-compiled packages in the cloud cannot be used. . Use add_packages. When you want to switch, you can switch to it in a few seconds. By default, use -l. Just add the linkpath if you need it. .

And not all packages can find the full library path. . System libraries, brew and other third-party package management are currently not supported.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants