2017-09-09 26 views
0

我是Wt和C++的新手,我刚安装了Ubuntu 16.04 LTS的Wt webframework到自定义文件夹我的主目录。我无法在此计算机的/usr指令中安装或构建任何软件。即使我可以,PPA还没有活动了2年半,而官方的Ubuntu安装instructions也过时了。智能不再随Ubuntu一起发布,并最终会停止。如何将Wt安装到自定义文件夹中没有“致命错误:Wt/WApplication:没有这样的文件或目录”

我compliled并成功安装了一切,但是当我尝试编译Hello World例子,我得到以下错误:

g++ -o hello hello.cpp -lwt -lwthttp 

fatal error: Wt/WApplication: No such file or directory 

这里是我的安装步骤:

提升:

wget https://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_65_1.tar.bz2 
tar --bzip2 -xf boost_1_65_1.tar.bz2 
cd boost_1_65_1 
./bootstrap.sh --prefix=../myfolder 
sudo ./b2 install --prefix=../myfolder 

CMake:

wget https://cmake.org/files/v3.9/cmake-3.9.2.tar.gz 
tar -xvzf cmake-3.9.2.tar.gz 
cd cmake-3.9.2 
./configure --prefix=../myfolder 
make 
sudo make install 
vim .profile 
export PATH=$PATH:/home/ubuntu/myfolder/bin 

重量:

git clone https://github.com/emweb/wt.git 
cd wt 
cmake -DCMAKE_INSTALL_PREFIX:PATH=../myfolder . 
-- Generating done 
-- Build files have been written to: /home/ubuntu/myfolder 
make 
sudo make install 
make -C examples 

由于我在/myfolder一起结块的一切,我没有用每重量安装instructions/build文件夹。 libwtlibboost库位于/myfolder/lib。我认为所有的链接在安装过程中都经过了照顾。

有什么想法?提前致谢。

+1

你需要告诉编译器在哪里找到头(即设置合适的包含路径,因为你没有安装到标准位置)。 –

回答

1

你必须告诉你的编译器,以寻找包括在右文件夹库,所以不是:

g++ -o hello hello.cpp -lwt -lwthttp 

尝试:

g++ -o hello hello.cpp -I/home/ubuntu/myfolder/include -L/home/ubuntu/myfolder/lib -lwt -lwthttp 

注意,当你运行你的应用程序,你还必须确保它能够找到它所需的动态库(.so文件)。你可以这样做:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/ubuntu/myfolder/lib" 
+0

感谢您的解决方案。我现在开始工作了。我仍在与Wt苦苦挣扎,但我确信这是因为我对C++缺乏经验。这将需要一些时间。你是否是为Wt发展的同一个Roel?再次感谢。 –

+0

是的,我是一样的罗尔。我在wt标签上为通过StackOverflow而不是我们的Redmine询问的几个问题设置了一个通知集。 – RockinRoel

相关问题