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

duplicate function definitions cause linking issue #400

Closed
soarqin opened this issue Mar 12, 2019 · 2 comments
Closed

duplicate function definitions cause linking issue #400

soarqin opened this issue Mar 12, 2019 · 2 comments

Comments

@soarqin
Copy link

soarqin commented Mar 12, 2019

As imported from https://wiki.henkaku.xyz/vita/SceSysmem in commit f9c34e2:
Both sceKernelCreateUidObjForDriver and sceKernelCreateUidObjForKernel are renamed to functions with same name: ksceKernelCreateUidObj
It makes new compiled taiHEN kernel plugin not working properly due to linking ksceKernelCreateUidObj to sceKernelCreateUidObjForDriver instead of sceKernelCreateUidObjForKernel

Although the temproary resolution is that put SceSysmemForKernel_stub before SceSysmemForDriver_stub in target_link_libraries, it is better to avoid duplicate function names in SDK libs.

@soarqin soarqin changed the title duplicate function definition cause linking issue duplicate function definitions cause linking issue Mar 13, 2019
soarqin added a commit to soarqin/finalhe that referenced this issue Mar 13, 2019
@d3m3vilurr
Copy link
Contributor

how about rename sceKernelCreateUidObjForKernel to ksceKernelCreateUidObjWithOpt
or sceKernelCreateUidObjForDriver to ksceKernelCreateUidObjWithoutOpt
(or just remove sceKernelCreateUidObjForDriver)
but actually we need reversed code.

d3m3vilurr added a commit that referenced this issue Mar 21, 2019
it would be simple hack, but already we have similar NID names
technically we should make the rule that prevents duplicated name in multiple
libs

related #400
@d3m3vilurr
Copy link
Contributor

we need a rule for this problem also should make the linting to detect the dup name.
but I'm lazy man, just rename sceKernelCreateUidObjForDriver to ksceKernelCreateUidObj2 in this time.

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

2 participants