LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Compiling Xalan-c-1.10.1 issue (https://www.linuxquestions.org/questions/linux-software-2/compiling-xalan-c-1-10-1-issue-928472/)

shayno90 02-09-2012 07:40 AM

Compiling Xalan-c-1.10.1 issue
 
Setting up xalan-xml following compiling xerces-c-3.1.1 and have this error message:

user@user:~$ export XALANCROOT=/home/user/xml-xalan/c
user@user:~$ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
user@user:~$ cd xml-xalan/c
user@user:~/xml-xalan/c$ ./runConfigure -p linux -c gcc -x g++ -b 64
(-b 64 only for 64 bit machines, normally remove for default 32 bit install)
..........

However the next issue occurs for 'make' the install of xalan:

user@user:~/xml-xalan/c$ make all
....................................
/home/user/xml-xalan/c/src/xalanc/Utils/XalanMsgLib/XalanMsgLib.cpp:25: error: expected ‘,’ or ‘;’ before ‘namespace’
/home/user/xml-xalan/c/src/xalanc/Utils/XalanMsgLib/XalanMsgLib.cpp:74: error: expected ‘}’ at end of input
../../../../nls/include/LocalMsgData.hpp:34: warning: ‘xalanc_1_10::msgArray’ defined but not used

In the problem file 'XalanMsgLib.cpp':

Line 25: XALAN_CPP_NAMESPACE_BEGIN
Line 74: XALAN_CPP_NAMESPACE_END

Full code:

XALAN_CPP_NAMESPACE_BEGIN


static const XalanDOMChar s_errString[] =
{
XalanUnicode::charLetter_M,
XalanUnicode::charLetter_e,
XalanUnicode::charLetter_s,
XalanUnicode::charLetter_s,
XalanUnicode::charLetter_a,
XalanUnicode::charLetter_g,
XalanUnicode::charLetter_e,
XalanUnicode::charSpace,
XalanUnicode::charLetter_n,
XalanUnicode::charLetter_o,
XalanUnicode::charLetter_t,
XalanUnicode::charSpace,
XalanUnicode::charLetter_d,
XalanUnicode::charLetter_e,
XalanUnicode::charLetter_f,
XalanUnicode::charLetter_i,
XalanUnicode::charLetter_n,
XalanUnicode::charLetter_e,
XalanUnicode::charLetter_d,
0
};



unsigned int
XalanMsgContainer::getNumbOfMsgs()
{
return gXalanMsgArraySize;
}



const XalanDOMChar*
XalanMsgContainer::getMessage(unsigned int msgInd)
{
if ( msgInd < gXalanMsgArraySize )
return msgArray[msgInd];
else
return s_errString;
}




XALAN_CPP_NAMESPACE_END

Other error:
../../../../nls/include/LocalMsgData.hpp:34: warning: ‘xalanc_1_10::msgArray’ defined but not used


Need to know if the code requires additional characters or one of the packages needs to be downgraded xerces or xalan?

knudfl 02-10-2012 03:49 AM

Why build xalan-c ? Or xerces-c ?


Packages are available for all versions of Debian, Ubuntu.
http://packages.debian.org/search?se...keywords=xalan

shayno90 02-11-2012 09:45 AM

Quote:

Originally Posted by knudfl (Post 4598804)
Why build xalan-c ? Or xerces-c ?


Packages are available for all versions of Debian, Ubuntu.
http://packages.debian.org/search?se...keywords=xalan

Think I will use those packages instead as running into quite a few errors trying to compile and build xalan. Was able to do so with xerces. The aim is to have both packages installed to use with ovaldi.

shayno90 02-13-2012 09:20 AM

I downloaded the source file for xalan and was able to compile it without any errors.

However I was trying to locate it in the following directories:

"Important: check whether Xalanc Library is really installed after the installation is completed. We can go to the directory /usr/local/lib and /usr/local/include to see whether there are files related to xalanc. If yes, then OK."

It is not located in either directory, only folders related to xerces.

I installed as follows:

user@user:~$ export XERCESCROOT=/home/user/xerces-c-src_2_8_0
user@user:~$ export XALANCROOT=/home/user/xalan-1.10/c
user@user:~$ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
user@user:~$ cd xalan-1.10/c
user@user:~/xalan-1.10/c$ cd ~
user@user:~$ sudo su
root@user:/home/user#
root@user:/home/user# sudo chown -R user:user xalan-1.10 (directory was locked as root)
root@user:/home/user# exit
exit
user@user:~$ cd xalan-1.10/c
user@user:~/xalan-1.10/c$ ./runConfigure -p linux -c gcc -x g++ -b 64
user@user:~/xalan-1.10/c$ make
make -C src/xalanc all
.......................
make[1]: out of directory`/home/user/xalan-1.10/c/src/xalanc'

I am guessing that xalan is not installed correctly otherwise it would be located in those directories plus the 'make install' command doesn't work:

user@user:~/xalan-1.10/c$ sudo make install (same of just make install)
[sudo] password for user:
make -C src/xalanc install
make[1]: out of directory `/home/user/xalan-1.10/c/src/xalanc'
Makefile:126: /version.incl: No such file or directory
make[1]: *** there is no rule for this object `/version.incl' to do. Stop.
make[1]: out of directory `/home/user/xalan-1.10/c/src/xalanc'
make: *** [install] errors 2

It is looking for the above 'makefile:126: /version.incl'.

I think I will install xerces from source for ubuntu first, build the dependencies, make install and then to try to install xalan:

user@user:~$ sudo apt-get source libxerces-c28


user@user:~$ sudo apt-get source libxalan110

shayno90 02-14-2012 08:12 AM

I finally managed to compile and install Xerces and Xalan together for Ubuntu 10.04, do as follows:

1.
sudo apt-get source libxerces-c28
sudo apt-get source libxalan110

2.
add "export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH" to /etc/ld.so.conf

3.
you may need to change owner of source packages from root to normal user

4. Build Xerces
export XERCESCROOT=/home/user/xerces-c2-2.8.0+deb1
cd $XERCESCROOT
cd src/xercesc
./runConfigure -plinux -cgcc -xg++ -minmem -nsocket -rpthread -b64 -P /usr/local
make
sudo XERCESCROOT=$XERCESCROOT make install

5. Build Xalan
export XERCESCROOT=/usr/local
cd $XERCESCROOT
/usr/local$ cd ~
export XERCESCROOT=/home/user/xerces-c2-2.8.0+deb1
cd $XERCESCROOT
cd ~
export XALANCROOT=/home/user/xalan-1.10/c
cd $XALANCROOT
./runConfigure -p linux -c gcc -x g++ -b64 -P /usr/local
make
sudo XALANCROOT=$XALANCROOT make install

6.
Check the directories of /usr/local/lib and /usr/local/include to confirm the both Xerces and Xalan are both installed

The needs to be a wiki for a Ubuntu specific install of these XML libraries and packages as there is no definitive guide for this currently plus the install methods for other OS had to be interpreted in order to fit this installation.


All times are GMT -5. The time now is 11:46 AM.