BeyondMagic / rwppi

An eater & feeder of information.
GNU Affero General Public License v3.0
18 stars 1 forks source link

Error in build about selectors.h #4

Closed pvonmoradi closed 2 years ago

pvonmoradi commented 2 years ago

I installed lexbor dependency following these instructions for Ubuntu. Here is the result of $ sudo dpkg -L liblexbor-dev:

``` /. /usr /usr/include /usr/include/lexbor /usr/include/lexbor/core /usr/include/lexbor/core/array.h /usr/include/lexbor/core/array_obj.h /usr/include/lexbor/core/avl.h /usr/include/lexbor/core/base.h /usr/include/lexbor/core/bst.h /usr/include/lexbor/core/bst_map.h /usr/include/lexbor/core/conv.h /usr/include/lexbor/core/core.h /usr/include/lexbor/core/def.h /usr/include/lexbor/core/diyfp.h /usr/include/lexbor/core/dobject.h /usr/include/lexbor/core/dtoa.h /usr/include/lexbor/core/fs.h /usr/include/lexbor/core/hash.h /usr/include/lexbor/core/in.h /usr/include/lexbor/core/lexbor.h /usr/include/lexbor/core/mem.h /usr/include/lexbor/core/mraw.h /usr/include/lexbor/core/perf.h /usr/include/lexbor/core/plog.h /usr/include/lexbor/core/sbst.h /usr/include/lexbor/core/shs.h /usr/include/lexbor/core/str.h /usr/include/lexbor/core/str_res.h /usr/include/lexbor/core/strtod.h /usr/include/lexbor/core/types.h /usr/include/lexbor/core/utils.h /usr/include/lexbor/css /usr/include/lexbor/css/base.h /usr/include/lexbor/css/css.h /usr/include/lexbor/css/syntax /usr/include/lexbor/css/syntax/base.h /usr/include/lexbor/css/syntax/consume.h /usr/include/lexbor/css/syntax/res.h /usr/include/lexbor/css/syntax/state.h /usr/include/lexbor/css/syntax/state_res.h /usr/include/lexbor/css/syntax/token.h /usr/include/lexbor/css/syntax/token_res.h /usr/include/lexbor/css/syntax/tokenizer /usr/include/lexbor/css/syntax/tokenizer/error.h /usr/include/lexbor/css/syntax/tokenizer.h /usr/include/lexbor/dom /usr/include/lexbor/dom/base.h /usr/include/lexbor/dom/collection.h /usr/include/lexbor/dom/dom.h /usr/include/lexbor/dom/exception.h /usr/include/lexbor/dom/interface.h /usr/include/lexbor/dom/interfaces /usr/include/lexbor/dom/interfaces/attr.h /usr/include/lexbor/dom/interfaces/attr_const.h /usr/include/lexbor/dom/interfaces/attr_res.h /usr/include/lexbor/dom/interfaces/cdata_section.h /usr/include/lexbor/dom/interfaces/character_data.h /usr/include/lexbor/dom/interfaces/comment.h /usr/include/lexbor/dom/interfaces/document.h /usr/include/lexbor/dom/interfaces/document_fragment.h /usr/include/lexbor/dom/interfaces/document_type.h /usr/include/lexbor/dom/interfaces/element.h /usr/include/lexbor/dom/interfaces/event_target.h /usr/include/lexbor/dom/interfaces/node.h /usr/include/lexbor/dom/interfaces/processing_instruction.h /usr/include/lexbor/dom/interfaces/shadow_root.h /usr/include/lexbor/dom/interfaces/text.h /usr/include/lexbor/encoding /usr/include/lexbor/encoding/base.h /usr/include/lexbor/encoding/const.h /usr/include/lexbor/encoding/decode.h /usr/include/lexbor/encoding/encode.h /usr/include/lexbor/encoding/encoding.h /usr/include/lexbor/encoding/multi.h /usr/include/lexbor/encoding/range.h /usr/include/lexbor/encoding/res.h /usr/include/lexbor/encoding/single.h /usr/include/lexbor/html /usr/include/lexbor/html/base.h /usr/include/lexbor/html/encoding.h /usr/include/lexbor/html/html.h /usr/include/lexbor/html/in.h /usr/include/lexbor/html/interface.h /usr/include/lexbor/html/interface_res.h /usr/include/lexbor/html/interfaces /usr/include/lexbor/html/interfaces/anchor_element.h /usr/include/lexbor/html/interfaces/area_element.h /usr/include/lexbor/html/interfaces/audio_element.h /usr/include/lexbor/html/interfaces/base_element.h /usr/include/lexbor/html/interfaces/body_element.h /usr/include/lexbor/html/interfaces/br_element.h /usr/include/lexbor/html/interfaces/button_element.h /usr/include/lexbor/html/interfaces/canvas_element.h /usr/include/lexbor/html/interfaces/d_list_element.h /usr/include/lexbor/html/interfaces/data_element.h /usr/include/lexbor/html/interfaces/data_list_element.h /usr/include/lexbor/html/interfaces/details_element.h /usr/include/lexbor/html/interfaces/dialog_element.h /usr/include/lexbor/html/interfaces/directory_element.h /usr/include/lexbor/html/interfaces/div_element.h /usr/include/lexbor/html/interfaces/document.h /usr/include/lexbor/html/interfaces/element.h /usr/include/lexbor/html/interfaces/embed_element.h /usr/include/lexbor/html/interfaces/field_set_element.h /usr/include/lexbor/html/interfaces/font_element.h /usr/include/lexbor/html/interfaces/form_element.h /usr/include/lexbor/html/interfaces/frame_element.h /usr/include/lexbor/html/interfaces/frame_set_element.h /usr/include/lexbor/html/interfaces/head_element.h /usr/include/lexbor/html/interfaces/heading_element.h /usr/include/lexbor/html/interfaces/hr_element.h /usr/include/lexbor/html/interfaces/html_element.h /usr/include/lexbor/html/interfaces/iframe_element.h /usr/include/lexbor/html/interfaces/image_element.h /usr/include/lexbor/html/interfaces/input_element.h /usr/include/lexbor/html/interfaces/label_element.h /usr/include/lexbor/html/interfaces/legend_element.h /usr/include/lexbor/html/interfaces/li_element.h /usr/include/lexbor/html/interfaces/link_element.h /usr/include/lexbor/html/interfaces/map_element.h /usr/include/lexbor/html/interfaces/marquee_element.h /usr/include/lexbor/html/interfaces/media_element.h /usr/include/lexbor/html/interfaces/menu_element.h /usr/include/lexbor/html/interfaces/meta_element.h /usr/include/lexbor/html/interfaces/meter_element.h /usr/include/lexbor/html/interfaces/mod_element.h /usr/include/lexbor/html/interfaces/o_list_element.h /usr/include/lexbor/html/interfaces/object_element.h /usr/include/lexbor/html/interfaces/opt_group_element.h /usr/include/lexbor/html/interfaces/option_element.h /usr/include/lexbor/html/interfaces/output_element.h /usr/include/lexbor/html/interfaces/paragraph_element.h /usr/include/lexbor/html/interfaces/param_element.h /usr/include/lexbor/html/interfaces/picture_element.h /usr/include/lexbor/html/interfaces/pre_element.h /usr/include/lexbor/html/interfaces/progress_element.h /usr/include/lexbor/html/interfaces/quote_element.h /usr/include/lexbor/html/interfaces/script_element.h /usr/include/lexbor/html/interfaces/select_element.h /usr/include/lexbor/html/interfaces/slot_element.h /usr/include/lexbor/html/interfaces/source_element.h /usr/include/lexbor/html/interfaces/span_element.h /usr/include/lexbor/html/interfaces/style_element.h /usr/include/lexbor/html/interfaces/table_caption_element.h /usr/include/lexbor/html/interfaces/table_cell_element.h /usr/include/lexbor/html/interfaces/table_col_element.h /usr/include/lexbor/html/interfaces/table_element.h /usr/include/lexbor/html/interfaces/table_row_element.h /usr/include/lexbor/html/interfaces/table_section_element.h /usr/include/lexbor/html/interfaces/template_element.h /usr/include/lexbor/html/interfaces/text_area_element.h /usr/include/lexbor/html/interfaces/time_element.h /usr/include/lexbor/html/interfaces/title_element.h /usr/include/lexbor/html/interfaces/track_element.h /usr/include/lexbor/html/interfaces/u_list_element.h /usr/include/lexbor/html/interfaces/unknown_element.h /usr/include/lexbor/html/interfaces/video_element.h /usr/include/lexbor/html/interfaces/window.h /usr/include/lexbor/html/node.h /usr/include/lexbor/html/parser.h /usr/include/lexbor/html/parser_char.h /usr/include/lexbor/html/serialize.h /usr/include/lexbor/html/tag.h /usr/include/lexbor/html/tag_res.h /usr/include/lexbor/html/token.h /usr/include/lexbor/html/token_attr.h /usr/include/lexbor/html/tokenizer /usr/include/lexbor/html/tokenizer/error.h /usr/include/lexbor/html/tokenizer/res.h /usr/include/lexbor/html/tokenizer/state.h /usr/include/lexbor/html/tokenizer/state_comment.h /usr/include/lexbor/html/tokenizer/state_doctype.h /usr/include/lexbor/html/tokenizer/state_rawtext.h /usr/include/lexbor/html/tokenizer/state_rcdata.h /usr/include/lexbor/html/tokenizer/state_script.h /usr/include/lexbor/html/tokenizer.h /usr/include/lexbor/html/tree /usr/include/lexbor/html/tree/active_formatting.h /usr/include/lexbor/html/tree/error.h /usr/include/lexbor/html/tree/insertion_mode /usr/include/lexbor/html/tree/insertion_mode.h /usr/include/lexbor/html/tree/open_elements.h /usr/include/lexbor/html/tree/template_insertion.h /usr/include/lexbor/html/tree.h /usr/include/lexbor/html/tree_res.h /usr/include/lexbor/ns /usr/include/lexbor/ns/base.h /usr/include/lexbor/ns/const.h /usr/include/lexbor/ns/ns.h /usr/include/lexbor/ns/res.h /usr/include/lexbor/tag /usr/include/lexbor/tag/base.h /usr/include/lexbor/tag/const.h /usr/include/lexbor/tag/res.h /usr/include/lexbor/tag/tag.h /usr/include/lexbor/utils /usr/include/lexbor/utils/base.h /usr/include/lexbor/utils/http.h /usr/include/lexbor/utils/utils.h /usr/include/lexbor/utils/warc.h /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/liblexbor_static.a /usr/share /usr/share/doc /usr/share/doc/liblexbor-dev /usr/share/doc/liblexbor-dev/changelog.Debian.gz /usr/share/doc/liblexbor-dev/copyright /usr/lib/x86_64-linux-gnu/liblexbor.so ```

I get this error:

$ make
mkdir -p bin
gcc   -c ./source/modules/Methods/tinyexpr/main.c             -o bin/tinyexpr.o
g++   -c ./source/modules/Methods/Methods.cpp                 -o bin/methods.o
In file included from ./source/modules/Methods/Methods.cpp:18:0:
./source/modules/Methods/Methods.hpp:29:10: fatal error: lexbor/css/selectors/selectors.h: No such file or directory
 #include "lexbor/css/selectors/selectors.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Makefile:18: recipe for target 'methods' failed
make: *** [methods] Error 1
BeyondMagic commented 2 years ago

It seem that lexbor didn't stall the selectors file properly on Ubunty. Not sure if I can do something about this... specially since I've never used any Debian distribution. Maybe it's not a updated version, try as well those at the end of the page:

    apt update
    apt install liblexbor
    apt install liblexbor-dev

or/and

deb https://packages.lexbor.com/ubuntu/ hirsute liblexbor
deb-src https://packages.lexbor.com/ubuntu/ hirsute liblexbor
pvonmoradi commented 2 years ago

There should be a library like : lexbor/css/selectors/ right?

Feel free to close the issue if it is out of scope.

BeyondMagic commented 2 years ago

Yep, AUR currently pops out lexbor-git on 2.1.0, can you give your version?

Just to confirm, the files that weren't added in your system were:

usr/include/lexbor/selectors mkdir -p usr/include/lexbor/selectors

usr/include/lexbor/selectors/base.h https://anonfiles.com/nfqal4Z5x5/base_h

usr/include/lexbor/selectors/selectors.h https://anonfiles.com/bfq2l4Z2x0/selectors_h

pvonmoradi commented 2 years ago

1.0.0-1 I guess it's old.

BeyondMagic commented 2 years ago

That must be it then, no idea how to update those packages on Ubuntu, but I hope you figure it out soon -- if you can't, clone the original repository and build it. I'll close for now.