Wings 3D Development Forum

Full Version: Build error under Arch Linux
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello, I am new to this forum and to wings3d and erlang. I tried to build the version 2.1.5 of wings3d.

build() {
LANG=C
export ESDL_PATH=$(echo /usr/lib/erlang/lib/esdl-*)
make -C "$_pkgname-$pkgver" all lang
}

This does not work:

make: Entering directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5'
WINGS_VSN = 2.1.5
(cd intl_tools; make)
make[1]: Entering directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/intl_tools'
make TYPE=opt common
make[2]: Entering directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/intl_tools'
erlc -Werror +debug_info +debug_info -o. tools.erl
escript gen_char_hrl
make[2]: Leaving directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/intl_tools'
make[1]: Leaving directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/intl_tools'
(cd src; make)
make[1]: Entering directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/src'
make TYPE=opt common
make[2]: Entering directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/src'
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_lang.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin user_default.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_align.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_body.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_camera.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_cl.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_cc.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_cc_ref.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_collapse.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_color.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_console.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_deform.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_develop.erl
erlc -Werror -I ../e3d +debug_info '-Dwings_version="2.1.5"' -pa ../intl_tools -o../ebin wings_dialog.erl
wings_dialog.erl:15: can't find include lib "wings/e3d/e3d_image.hrl"
wings_dialog.erl:1593: record e3d_image undefined
make[2]: *** [Makefile:168: ../ebin/wings_dialog.beam] Error 1
make[2]: Leaving directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/src'
make[1]: *** [Makefile:149: opt] Error 2
make[1]: Leaving directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5/src'
make: *** [Makefile:15: all] Error 2
make: Leaving directory '/home/haawda/paketierung/not_maintained_by_me/wings3d/src/wings-2.1.5'
==> ERROR: A failure occurred in build().
Aborting...

I did not build the dependencies myself but tried the packages Arch Linux provides.
The build succeeds when I apply a patch coming from the Debian people.
Code:
Author: Sergei Golovan
Description: Patch uses ordinary -include() directive instead of -include_lib() which
searches for "e3d.hrl", "wings.hrl" etc. in system wide directories instead of
local directory.
Last-Modified: Sun, 22 Jan 2017 11:49:25 +0300

--- a/plugins_src/import_export/wpc_lwo.erl
+++ b/plugins_src/import_export/wpc_lwo.erl
@@ -13,7 +13,7 @@

-module(wpc_lwo).
-export([init/0, menu/2, command/2, export/1]).
--include_lib("wings/e3d/e3d.hrl").
+-include("e3d.hrl").

init() ->
     true.
--- a/src/wings_image_viewer.erl
+++ b/src/wings_image_viewer.erl
@@ -22,7 +22,7 @@
-behaviour(wx_object).

-include("wings.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("e3d_image.hrl").

%%%%%%%% API %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

--- a/src/wings_text.erl
+++ b/src/wings_text.erl
@@ -19,7 +19,7 @@

-define(NEED_OPENGL, 1).
-include("wings.hrl").
--include_lib("wings/intl_tools/wings_chars.hrl").
+-include("../intl_tools/wings_chars.hrl").
-compile({parse_transform,ms_transform}).

-import(lists, [reverse/1]).
--- a/src/wings_dialog.erl
+++ b/src/wings_dialog.erl
@@ -12,7 +12,7 @@
-module(wings_dialog).
-define(NEED_ESDL, 1). %% Needs to send mouseevents to camera
-include("wings.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("e3d_image.hrl").

-export([init/0,
     info/3,
--- a/plugins_src/wp9_dialogs.erl
+++ b/plugins_src/wp9_dialogs.erl
@@ -14,7 +14,7 @@
-module(wp9_dialogs).
-export([init/1]).

--include_lib("wings/src/wings.hrl").
+-include("../src/wings.hrl").

init(Next) ->
     wpa:pref_set_default(?MODULE, utf8, true),
--- a/icons/collect_bmp.erl
+++ b/icons/collect_bmp.erl
@@ -14,7 +14,7 @@
-module(collect_bmp).
-export([start/0,start/1]).

--include_lib("wings/e3d/e3d_image.hrl").
+-include_lib("../e3d/e3d_image.hrl").

start() ->
     start(["icons","wings_icon.bundle"]).
--- a/plugins_src/commands/wpc_circularise.erl
+++ b/plugins_src/commands/wpc_circularise.erl
@@ -13,7 +13,7 @@

-module(wpc_circularise).
-export([init/0,menu/2,command/2]).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

init() ->
     true.
--- a/plugins_src/commands/wpc_connect_tool.erl
+++ b/plugins_src/commands/wpc_connect_tool.erl
@@ -18,7 +18,7 @@
-define(NEED_ESDL, 1).
-define(NEED_OPENGL, 1).

--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

%% State info
-record(cs, {v=[],  %% Connected vertices
--- a/plugins_src/commands/wpc_constraints.erl
+++ b/plugins_src/commands/wpc_constraints.erl
@@ -14,7 +14,7 @@
-module(wpc_constraints).
-export([init/0,menu/2,command/2]).
-define(NEED_ESDL, 1).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").
-include("e3d.hrl").
-define(NONZERO, 1.0e-6).

--- a/plugins_src/commands/wpc_doosabin.erl
+++ b/plugins_src/commands/wpc_doosabin.erl
@@ -15,7 +15,7 @@

-export([init/0,menu/2,command/2]).

--include_lib("wings.hrl").
+-include("wings.hrl").

init() ->
     true.
--- a/plugins_src/commands/wpc_sel_win.erl
+++ b/plugins_src/commands/wpc_sel_win.erl
@@ -21,7 +21,7 @@
    ]).

-define(WIN_NAME, {plugin, sel_groups}).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

%%%
%%% Selection groups window.
--- a/plugins_src/commands/wpc_views_win.erl
+++ b/plugins_src/commands/wpc_views_win.erl
@@ -21,7 +21,7 @@
    ]).

-define(WIN_NAME, {plugin,saved_views}).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

%%%
%%% Saved Views window.
--- a/plugins_src/import_export/collada_import.erl
+++ b/plugins_src/import_export/collada_import.erl
@@ -12,7 +12,7 @@
%%
-module(collada_import).
-export([import/1]).
--include_lib("wings/e3d/e3d.hrl").
+-include("e3d.hrl").
%% Sigh using local function in state machine
-compile(export_all).

--- a/plugins_src/import_export/wpc_collada.erl
+++ b/plugins_src/import_export/wpc_collada.erl
@@ -16,9 +16,9 @@

-define(DEF_IMAGE_TYPE, ".png").

--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("wings.hrl").
+-include("e3d.hrl").
+-include("e3d_image.hrl").
-include_lib("xmerl/include/xmerl.hrl").

%% Collada export state record
--- a/plugins_src/import_export/wpc_hlines.erl
+++ b/plugins_src/import_export/wpc_hlines.erl
@@ -38,8 +38,8 @@
        keysort/2,
        keyreplace/4
           ]).
--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d.hrl").
+-include("wings.hrl").
+-include("e3d.hrl").

-define(EPS, 1.0e-6).
-define(EPS1, 1.0e-5).
--- a/plugins_src/import_export/wpc_ply.erl
+++ b/plugins_src/import_export/wpc_ply.erl
@@ -17,8 +17,8 @@

-export([import/1]). %% ,export/2,export/3]).

--include_lib("wings/e3d/e3d.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("e3d.hrl").
+-include("e3d_image.hrl").

-import(lists, [reverse/1,reverse/2,sort/1,keysearch/3,foreach/2,
        map/2,foldl/3]).
--- a/plugins_src/import_export/wpc_pov.erl
+++ b/plugins_src/import_export/wpc_pov.erl
@@ -16,9 +16,9 @@

-export([init/0, menu/2, command/2, dialog/2]).

--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("wings.hrl").
+-include("e3d.hrl").
+-include("e3d_image.hrl").

-define(TAG, povray36).
-define(KEY(K), {?TAG, (K)}).
--- a/plugins_src/primitives/wpc_bbox.erl
+++ b/plugins_src/primitives/wpc_bbox.erl
@@ -13,7 +13,7 @@

-module(wpc_bbox).
-export([init/0,menu/2,command/2]).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

init() -> true.

--- a/plugins_src/primitives/wpc_cylinder.erl
+++ b/plugins_src/primitives/wpc_cylinder.erl
@@ -14,7 +14,7 @@

-module(wpc_cylinder).
-export([init/0,menu/2,command/2]).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").
-import(math, [cos/1,sin/1,pi/0]).

init() -> true.
--- a/plugins_src/primitives/wpc_geodome.erl
+++ b/plugins_src/primitives/wpc_geodome.erl
@@ -13,7 +13,7 @@

-module(wpc_geodome).
-export([init/0, menu/2, command/2]).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

init() -> true.

--- a/plugins_src/primitives/wpc_image.erl
+++ b/plugins_src/primitives/wpc_image.erl
@@ -15,7 +15,7 @@
-export([init/0,menu/2,command/2]).

-define(NEED_OPENGL,1).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

-include("e3d.hrl").
-include("e3d_image.hrl").
--- a/plugins_src/primitives/wpc_knot.erl
+++ b/plugins_src/primitives/wpc_knot.erl
@@ -14,7 +14,7 @@
-module(wpc_knot).
-export([init/0,menu/2,command/2]).

--include_lib("wings/intl_tools/wings_intl.hrl").
+-include("wings_intl.hrl").

init() -> true.

--- a/plugins_src/primitives/wpc_ncube.erl
+++ b/plugins_src/primitives/wpc_ncube.erl
@@ -13,7 +13,7 @@
-module(wpc_ncube).
-export([init/0,menu/2,command/2]).
-import(math, [cos/1,sin/1,pi/0]).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

init() -> true.

--- a/plugins_src/primitives/wpc_plane.erl
+++ b/plugins_src/primitives/wpc_plane.erl
@@ -14,7 +14,7 @@
-module(wpc_plane).
-export([init/0,menu/2,command/2]).
-import(math, [sqrt/1,cos/1,pi/0,pow/2,exp/1]).
--include_lib("wings/intl_tools/wings_intl.hrl").
+-include("wings_intl.hrl").

init() -> true.

--- a/plugins_src/primitives/wpc_spiral.erl
+++ b/plugins_src/primitives/wpc_spiral.erl
@@ -15,7 +15,7 @@
-export([init/0,menu/2,command/2]).

-import(math, [cos/1,sin/1,pi/0]).
--include_lib("wings/intl_tools/wings_intl.hrl").
+-include("wings_intl.hrl").

init() ->
     true.
--- a/plugins_src/primitives/wpc_torus.erl
+++ b/plugins_src/primitives/wpc_torus.erl
@@ -23,7 +23,7 @@
-export([init/0,menu/2,command/2]).

-import(math, [cos/1,sin/1,pi/0]).
--include_lib("wings/intl_tools/wings_intl.hrl").
+-include("wings_intl.hrl").

init() -> true.

--- a/plugins_src/primitives/wpc_tt.erl
+++ b/plugins_src/primitives/wpc_tt.erl
@@ -19,8 +19,8 @@
        mapfoldl/3,foldl/3,sublist/3,map/2,last/1,seq/2,seq/3,
        flatten/1,sum/1,append/1]).

--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d.hrl").
+-include("wings.hrl").
+-include("e3d.hrl").

-record(ttfont,
    {nglyph,            % number of glyphs
--- a/plugins_src/commands/wpc_absolute_move.erl
+++ b/plugins_src/commands/wpc_absolute_move.erl
@@ -12,7 +12,7 @@
%%
-module(wpc_absolute_move).

--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

-export([init/0,menu/2,command/2]).

--- a/plugins_src/commands/wpc_ambocc.erl
+++ b/plugins_src/commands/wpc_ambocc.erl
@@ -19,8 +19,8 @@
-export([init/0,menu/2,command/2]).

-define(NEED_OPENGL, 1).
--include_lib("wings.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("wings.hrl").
+-include("e3d_image.hrl").

init() ->
     true.
--- a/plugins_src/commands/wpc_sculpt.erl
+++ b/plugins_src/commands/wpc_sculpt.erl
@@ -17,7 +17,7 @@

-define(NEED_OPENGL, 1).
-define(NEED_ESDL, 1).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").

-import(lists, [foldl/3,sort/1,reverse/1,member/2]).

--- a/plugins_src/autouv/auv_mapping.erl
+++ b/plugins_src/autouv/auv_mapping.erl
@@ -48,9 +48,9 @@
     find_pinned_from_edges/2,
     split_edges_1/2]).

--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").
-include("auv.hrl").
--include_lib("wings/e3d/e3d.hrl").
+-include("e3d.hrl").

-import(lists, [foldl/3,reverse/1]).

--- a/plugins_src/autouv/auv_seg_ui.erl
+++ b/plugins_src/autouv/auv_seg_ui.erl
@@ -15,7 +15,7 @@
-export([start/4]).

-define(NEED_ESDL, 1).
--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").
-include("auv.hrl").

-import(lists, [sort/1,map/2,member/2,foldl/3,reverse/1]).
--- a/plugins_src/autouv/auv_segment.erl
+++ b/plugins_src/autouv/auv_segment.erl
@@ -21,7 +21,7 @@
-export([degrees/0, find_features/3, build_seeds/2]). %% Debugging
-endif.

--include_lib("wings/src/wings.hrl").
+-include("wings.hrl").
-include("auv.hrl").

-import(lists, [reverse/1,mapfoldl/3,sort/1,foldl/3]).
--- a/plugins_src/autouv/auv_texture.erl
+++ b/plugins_src/autouv/auv_texture.erl
@@ -17,9 +17,9 @@
-define(NEED_OPENGL, 1).
-define(NEED_ESDL, 1).
-define(ERROR, error_msg(?LINE)).
--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
--include_lib("wings/e3d/e3d.hrl").
+-include("wings.hrl").
+-include("e3d_image.hrl").
+-include("e3d.hrl").
-include("auv.hrl").

-import(lists, [foreach/2,reverse/1,sort/1,foldl/3,member/2]).
--- a/plugins_src/autouv/wpc_autouv.erl
+++ b/plugins_src/autouv/wpc_autouv.erl
@@ -16,8 +16,8 @@
-define(NEED_OPENGL, 1).
-define(NEED_ESDL, 1).

--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("wings.hrl").
+-include("e3d_image.hrl").
-include("auv.hrl").
  
-export([init/0,menu/2,command/2,redraw/1]).
--- a/plugins_src/autouv/wpc_snap.erl
+++ b/plugins_src/autouv/wpc_snap.erl
@@ -15,8 +15,8 @@

-define(NEED_OPENGL, 1).

--include_lib("wings/src/wings.hrl").
--include_lib("wings/e3d/e3d_image.hrl").
+-include("wings.hrl").
+-include("e3d_image.hrl").

-define(HUGE, 1.0E307).
[/code]
You should set ERL_LIBS env variable as described in the docs.
To what value? Any directory where I have write access to?
The information is in BUILD.unix (wings3d root dir):
Quote:Setup $ERL_LIBS
===============

Create a directory to hold Erlang applications and set the
environment variable ERL_LIBS to its path.

Example:

export ERL_LIBS=/Users/bjorng/src
it's usually the place where we put the Wings3D sources under (../src/wings; ../src/cl; ../src/rebar).