Opened 9 months ago

Last modified 9 months ago

#6981 new defect

Can not build libadblockplus

Reported by: jahmedir Assignee:
Priority: Unknown Milestone:
Module: Libadblockplus Keywords:
Cc: Blocked By:
Blocking: Platform: Unknown / Cross platform
Ready: no Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description

Environment

Windows 10, x64

How to reproduce

  1. Build v8 as per this link ( but retrieved V8 version 6.7.1):

https://medium.com/dailyjs/how-to-build-v8-on-windows-and-not-go-mad-6347c69aacd4

I got all libs including v8_monolithic.lib built but not

..v8/out.gn/x64.Release/obj.lib

  1. git clone https://github.com/adblockplus/libadblockplus.git
  2. set "GYP_DEFINES=v8_dir=C:/V8/v8 libv8_lib_dir=C:/V8/v8/out.gn/x64.release/obj libv8_libs=C:/V8/v8/out.gn/x64.release/obj libv8_include_dir=C:\V8\v8\include libv8_show_warnings=true"
  1. ran createsolution.bat ( this did not ran successfully) so I did next steps
  2. mkdir build/x64/shell
  3. python msvs_gyp_wrapper.py --depth=build\x64 -f msvs -G msvs_version=2017 -I libadblockplus.gypi --generator-output=build\x64 -Dtarget_arch=x64 -Dhost_arch=x64 libadblockplus.gyp

...

Observed behaviour

libadblockplus solution was created and all projects in this solution were built successfully except apbshell project

apbshell has a reference of v8/out.gn/x64.Release/obj.lib

But there is no obj.lib

Expected behaviour

1)
createsolution.bat should run successfully including running ensure_dependencies.py successfully which is called by createsolution.bat
2)
libadblockplus solution should be generated and all project in this solution should be build successfully

Change History (4)

comment:1 Changed 9 months ago by jahmedir

As per this link
https://git.vedo.ir/eyeo/adblockplus/libadblockplus/commit/4d9bcc12e77369cbc4bc04bace9a3e7fa03de17b#c1c6dc1843803ec1a1c204c09b3a93d963683b43

there is an easy and direct way to build V8.
I think, this direct way to build V8 uses the following file:
...\libadblockplus\.appveyor\prepare-prebuilt-v8

Can anybody please suggest how to build libadblockplus successfully such that either obj.lib is generated as part of building V8 or libadblockplus solution does not need obj.lib ~

comment:2 follow-up: Changed 9 months ago by sergz

Could you please try to remove v8_dir=C:/V8/v8 and libv8_libs=C:/V8/v8/out.gn/x64.release/obj from GYP_DEFINES?
It tries to find "obj.lib" because there is libv8_libs=C:/V8/v8/out.gn/x64.release/obj, which is supposed to be a library name. However, it's not required to set it manually because it's already set in v8.gypi.

comment:3 Changed 9 months ago by hfiguiere

  • Component changed from Unknown to Libadblockplus

comment:4 in reply to: ↑ 2 Changed 9 months ago by jahmedir

Let me try...
Replying to sergz:

Could you please try to remove v8_dir=C:/V8/v8 and libv8_libs=C:/V8/v8/out.gn/x64.release/obj from GYP_DEFINES?
It tries to find "obj.lib" because there is libv8_libs=C:/V8/v8/out.gn/x64.release/obj, which is supposed to be a library name. However, it's not required to set it manually because it's already set in v8.gypi.

Note: See TracTickets for help on using tickets.